<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFAudio",
  "identifier" : "/documentation/AVFAudio/AVAudioSession/RouteChangeReason",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "AVFAudio"
    ],
    "preciseIdentifier" : "c:@E@AVAudioSessionRouteChangeReason"
  },
  "title" : "AVAudioSession.RouteChangeReason"
}
-->

# AVAudioSession.RouteChangeReason

Constants that indicate the reason for an audio route change.

```
enum RouteChangeReason
```

## Overview

These constants appear as possible values for the [`AVAudioSessionRouteChangeReasonKey`](/documentation/AVFAudio/AVAudioSessionRouteChangeReasonKey) key in the `userInfo` dictionary in a [`routeChangeNotification`](/documentation/AVFAudio/AVAudioSession/routeChangeNotification) notification.

## Topics

### Route Change Reasons

[`AVAudioSession.RouteChangeReason.unknown`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/unknown)

A value that indicates the reason for the change is unknown.

[`AVAudioSession.RouteChangeReason.newDeviceAvailable`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/newDeviceAvailable)

A value that indicates a user action, such as plugging in a headset, has made a preferred audio route available.

[`AVAudioSession.RouteChangeReason.oldDeviceUnavailable`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/oldDeviceUnavailable)

A value that indicates that the previous audio output path is no longer available.

[`AVAudioSession.RouteChangeReason.categoryChange`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/categoryChange)

A value that indicates that the category of the session object changed.

[`AVAudioSession.RouteChangeReason.override`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/override)

A value that indicates that the output route was overridden by the app.

[`AVAudioSession.RouteChangeReason.wakeFromSleep`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/wakeFromSleep)

A value that indicates that the route changed when the device woke up from sleep.

[`AVAudioSession.RouteChangeReason.noSuitableRouteForCategory`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/noSuitableRouteForCategory)

A value that indicates that the route changed because no suitable route is now available for the specified category.

[`AVAudioSession.RouteChangeReason.routeConfigurationChange`](/documentation/AVFAudio/AVAudioSession/RouteChangeReason/routeConfigurationChange)

A value that indicates that the configuration for a set of I/O ports has changed.



---

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)