<!--
{
  "documentType" : "article",
  "framework" : "CoreAudio",
  "identifier" : "/documentation/CoreAudio/core-audio-structures",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Core Audio Structures"
}
-->

# Core Audio Structures

## Topics

### Structures

[`struct AudioDriverPlugInHostInfo;`](/documentation/CoreAudio/AudioDriverPlugInHostInfo)

[`struct AudioHardwareIOProcStreamUsage`](/documentation/CoreAudio/AudioHardwareIOProcStreamUsage)

This structure describes which streams a given AudioDeviceIOProc will use. It is used in conjunction with kAudioDevicePropertyIOProcStreamUsage.

[`struct AudioObjectPropertyAddress`](/documentation/CoreAudio/AudioObjectPropertyAddress)

An AudioObjectPropertyAddress collects the three parts that identify a specific property together in a struct for easy transmission.

[`struct AudioServerPlugInClientInfo;`](/documentation/CoreAudio/AudioServerPlugInClientInfo)

[`struct AudioServerPlugInCustomPropertyInfo;`](/documentation/CoreAudio/AudioServerPlugInCustomPropertyInfo)

[`struct AudioServerPlugInDriverInterface;`](/documentation/CoreAudio/AudioServerPlugInDriverInterface)

[`struct AudioServerPlugInHostInterface;`](/documentation/CoreAudio/AudioServerPlugInHostInterface)

[`struct AudioServerPlugInIOCycleInfo;`](/documentation/CoreAudio/AudioServerPlugInIOCycleInfo)

[`struct AudioStreamRangedDescription`](/documentation/CoreAudio/AudioStreamRangedDescription)

This structure allows a specific sample rate range to be associated with an AudioStreamBasicDescription that specifies its sample rate as
kAudioStreamAnyRate.

[`struct UnsafeMutableAudioBufferListPointer`](/documentation/CoreAudio/UnsafeMutableAudioBufferListPointer)

A wrapper for a pointer to an `AudioBufferList`.



---

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)