Core Audio Data Types

This document describes data types and constants used throughout Core Audio, as well as some convenience functions for working with these types and constants.


If you are unfamiliar with the specialized terminology used when manipulating audio data, refer to Core Audio Glossary.


Data Types


Holds and describes a buffer of audio data.


Holds a variable-length array of AudioBuffer structures.


Describes an audio data channel.


Identifies how an audio data channel is to be used.


Specifies a channel layout in a file or in hardware.


Identifies a previously-defined channel layout.


Describes an installed codec.


The canonical audio data sample type for input and output.


An audio data format specification for a stream of audio.


Describes one packet in a buffer of audio data where the sizes of the packets differ or where there is non-audio data between audio packets.


Holds multiple representations of a time stamp.


The canonical audio data sample type for audio processing.


Holds a pair of numbers that represent a continuous range of values.


Holds buffers used in translation operations.


Specifies a time stamp as one of the SMPTE time types.


Sample Type Constants

Constants used for specifying audio format flags


Indicates that an audio format can use any sample rate.

Audio Data Format Identifiers

Identifiers for audio data formats, used in the AudioStreamBasicDescription structure.

AudioStreamBasicDescription Flags

Standard flags for use in the mFormatFlags field of the AudioStreamBasicDescription structure.

AudioStreamBasicDescription Flag Combinations Constants

Commonly used combinations of data format flags for the AudioStreamBasicDescription structure.

MPEG-4 Audio Object Type Constants

Used in the mFormatFlags field of an AudioStreamBasicDescription structure that describes an MPEG-4 audio stream to specify the type of MPEG-4 audio data.

SMPTE Timecode Type Constants

SMPTE timecode types, used in the SMPTETime structure.

SMPTE State Flags

Flags that describe a SMPTE time state.

Audio Time Stamp Flags

These flags indicate the valid fields in an AudioTimeStamp structure.

Audio Time Stamp Flag Combination Constant

A commonly used combination of audio time stamp flags.

Audio Channel Label Constants

Channel labels for use in the mChannelLabel field of an AudioChannelDescription structure.

Channel Bitmap Constants

Channel bits for use in the mChannelBitmap field of an AudioChannelLayout structure.

Channel Coordinate Flags

Used in the mChannelFlags field of an AudioChannelDescription structure.

Channel Coordinate Index Constants

Indexes the fields of the mCoordinates array in an AudioChannelDescription structure.

Audio Channel Layout Tags

Identifiers for audio channel layouts. These identifiers specify the channels included in a layout but do not specify a particular ordering of those channels. Used in the mChannelLayoutTag field of an AudioChannelLayout structure.

Result Codes

This table lists result codes returned from the various C-based audio frameworks.

var kAudio_UnimplementedError: OSStatus

An unimplemented system function was called.

var kAudio_ParamError: OSStatus

An error in the parameter list of the function.

var kAudio_MemFullError: OSStatus

Not enough room in the heap zone.