<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/AVPlayer/RateDidChangeReason",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "AVFoundation"
    ],
    "preciseIdentifier" : "c:@T@AVPlayerRateDidChangeReason"
  },
  "title" : "AVPlayer.RateDidChangeReason"
}
-->

# AVPlayer.RateDidChangeReason

A structure that represents a rate change reason.

```
struct RateDidChangeReason
```

## Topics

### Initializers

[`init(rawValue:)`](/documentation/AVFoundation/AVPlayer/RateDidChangeReason/init(rawValue:))

Creates a reason with a string value.

### Rate change reasons

[`appBackgrounded`](/documentation/AVFoundation/AVPlayer/RateDidChangeReason/appBackgrounded)

An app transitions to the background.

[`audioSessionInterrupted`](/documentation/AVFoundation/AVPlayer/RateDidChangeReason/audioSessionInterrupted)

The system interrupts the app’s audio session.

[`setRateCalled`](/documentation/AVFoundation/AVPlayer/RateDidChangeReason/setRateCalled)

An app makes a call to set the player’s rate.

[`setRateFailed`](/documentation/AVFoundation/AVPlayer/RateDidChangeReason/setRateFailed)

An attempt to change the player’s rate fails.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)