<!--
{
  "availability" : [
    "iOS: 3.0.0 -",
    "iPadOS: 3.0.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFAudio",
  "identifier" : "/documentation/AVFAudio/AVAudioSession/setCategory(_:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "AVFAudio"
    ],
    "preciseIdentifier" : "c:objc(cs)AVAudioSession(im)setCategory:error:"
  },
  "title" : "setCategory(_:)"
}
-->

# setCategory(_:)

Sets the audio session’s category.

```
func setCategory(_ category: AVAudioSession.Category) throws
```

## Parameters

`category`

The category to apply to the audio session. See [`AVAudioSession.Category`](/documentation/AVFAudio/AVAudioSession/Category-swift.struct) for supported category values.

## Discussion

The audio session’s category defines how the app uses audio. Typically, you set the category before activating the session. You can also set the category while the session is active, but this results in an immediate route change.

> Note:
> Instead of setting your ``doc://com.apple.avfaudio/documentation/AVFAudio/AVAudioSession/category-swift.property`` and ``doc://com.apple.avfaudio/documentation/AVFAudio/AVAudioSession/mode-swift.property`` properties independently, set them at the same time using the ``doc://com.apple.avfaudio/documentation/AVFAudio/AVAudioSession/setCategory(_:mode:options:)`` or ``doc://com.apple.avfaudio/documentation/AVFAudio/AVAudioSession/setCategory(_:mode:policy:options:)`` method.

---

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)