<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AudioToolbox",
  "identifier" : "/documentation/AudioToolbox/kAudioOutputUnitProperty_EnableIO",
  "metadataVersion" : "0.1.0",
  "role" : "Global Variable",
  "symbol" : {
    "kind" : "Global Variable",
    "modules" : [
      "Audio Toolbox"
    ],
    "preciseIdentifier" : "c:@Ea@kAudioOutputUnitProperty_CurrentDevice@kAudioOutputUnitProperty_EnableIO"
  },
  "title" : "kAudioOutputUnitProperty_EnableIO"
}
-->

# kAudioOutputUnitProperty_EnableIO

Specifies whether audio I/O is enabled for an I/O unit bus-scope combination.

```
var kAudioOutputUnitProperty_EnableIO: AudioUnitPropertyID { get }
```

## Discussion

An I/O unit’s bus 0 connects to output hardware, such as for playback through a speaker. Output is enabled by default. To disable output, the bus 0 output scope must be disabled, as follows:

```objc
UInt32 enableOutput        = 0;    // to disable output
AudioUnitElement outputBus = 0;
 
AudioUnitSetProperty (
    io_unit_instance,
    kAudioOutputUnitProperty_EnableIO,
    kAudioUnitScope_Output,
    outputBus,
    &enableOutput,
    sizeof (enableOutput)
);
```

An I/O unit’s bus 1 connects to input hardware, such as for recording from a microphone. Input is disabled by default. To enable input, the bus 1 input scope must be enabled, as follows:

```objc
UInt32 enableInput        = 1;    // to enable input
AudioUnitElement inputBus = 1;
 
AudioUnitSetProperty (
    io_unit_instance,
    kAudioOutputUnitProperty_EnableIO,
    kAudioUnitScope_Input,
    inputBus,
    &enableInput,
    sizeof (enableInput)
);
```

A read/write `UInt32` value valid on the input and output scopes.

---

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)