---
title: Audio Queue Services
framework: audiotoolbox
role: collectionGroup
role_heading: API Collection
path: audiotoolbox/audio-queue-services
---

# Audio Queue Services

Connect to audio hardware and manage the recording or playback process.

## Overview

Overview This document describes Audio Queue Services, a C programming interface in the Audio Toolbox framework, which is part of Core Audio. An audio queue is a software object you use for recording or playing audio. An audio queue does the work of: Connecting to audio hardware Managing memory Employing codecs, as needed, for compressed audio formats Mediating playback or recording Audio Queue Services enables you to record and play audio in linear PCM, in compressed formats (such as Apple Lossless and AAC), and in other formats for which users have installed codecs. Audio Queue Services also supports scheduled playback and synchronization of multiple audio queues and synchronization of audio with video. note: Audio Queue Services provides features similar to those previously offered by the Sound Manager and in macOS. It adds additional features such as synchronization. The Sound Manager is deprecated in OS X v10.5 and does not work with 64-bit applications. Audio Queue Services is recommended for all new development and as a replacement for the Sound Manager in existing Mac apps.

## Topics

### Creating and Disposing of Audio Queues

- [AudioQueueNewOutputWithDispatchQueue(_:_:_:_:_:)](audiotoolbox/audioqueuenewoutputwithdispatchqueue(_:_:_:_:_:).md)
- [AudioQueueNewInputWithDispatchQueue(_:_:_:_:_:)](audiotoolbox/audioqueuenewinputwithdispatchqueue(_:_:_:_:_:).md)
- [AudioQueueNewOutput(_:_:_:_:_:_:_:)](audiotoolbox/audioqueuenewoutput(_:_:_:_:_:_:_:).md)
- [AudioQueueNewInput(_:_:_:_:_:_:_:)](audiotoolbox/audioqueuenewinput(_:_:_:_:_:_:_:).md)
- [AudioQueueDispose(_:_:)](audiotoolbox/audioqueuedispose(_:_:).md)
- [AudioQueueRef](audiotoolbox/audioqueueref.md)
- [AudioQueueInputCallbackBlock](audiotoolbox/audioqueueinputcallbackblock.md)
- [AudioQueueOutputCallbackBlock](audiotoolbox/audioqueueoutputcallbackblock.md)

### Controlling Audio Queues

- [AudioQueueStart(_:_:)](audiotoolbox/audioqueuestart(_:_:).md)
- [AudioQueuePrime(_:_:_:)](audiotoolbox/audioqueueprime(_:_:_:).md)
- [AudioQueueFlush(_:)](audiotoolbox/audioqueueflush(_:).md)
- [AudioQueueStop(_:_:)](audiotoolbox/audioqueuestop(_:_:).md)
- [AudioQueuePause(_:)](audiotoolbox/audioqueuepause(_:).md)
- [AudioQueueReset(_:)](audiotoolbox/audioqueuereset(_:).md)

### Handling Audio Queue Buffers

- [AudioQueueAllocateBuffer(_:_:_:)](audiotoolbox/audioqueueallocatebuffer(_:_:_:).md)
- [AudioQueueAllocateBufferWithPacketDescriptions(_:_:_:_:)](audiotoolbox/audioqueueallocatebufferwithpacketdescriptions(_:_:_:_:).md)
- [AudioQueueFreeBuffer(_:_:)](audiotoolbox/audioqueuefreebuffer(_:_:).md)
- [AudioQueueEnqueueBuffer(_:_:_:_:)](audiotoolbox/audioqueueenqueuebuffer(_:_:_:_:).md)
- [AudioQueueEnqueueBufferWithParameters(_:_:_:_:_:_:_:_:_:_:)](audiotoolbox/audioqueueenqueuebufferwithparameters(_:_:_:_:_:_:_:_:_:_:).md)

### Tapping the Queue’s Audio

- [AudioQueueProcessingTapNew(_:_:_:_:_:_:_:)](audiotoolbox/audioqueueprocessingtapnew(_:_:_:_:_:_:_:).md)
- [AudioQueueProcessingTapGetQueueTime(_:_:_:)](audiotoolbox/audioqueueprocessingtapgetqueuetime(_:_:_:).md)
- [AudioQueueProcessingTapGetSourceAudio(_:_:_:_:_:_:)](audiotoolbox/audioqueueprocessingtapgetsourceaudio(_:_:_:_:_:_:).md)
- [AudioQueueProcessingTapDispose(_:)](audiotoolbox/audioqueueprocessingtapdispose(_:).md)

### Manipulating Audio Queue Parameters

- [AudioQueueGetParameter(_:_:_:)](audiotoolbox/audioqueuegetparameter(_:_:_:).md)
- [AudioQueueSetParameter(_:_:_:)](audiotoolbox/audioqueuesetparameter(_:_:_:).md)

### Manipulating Audio Queue Properties

- [AudioQueueGetProperty(_:_:_:_:)](audiotoolbox/audioqueuegetproperty(_:_:_:_:).md)
- [AudioQueueSetProperty(_:_:_:_:)](audiotoolbox/audioqueuesetproperty(_:_:_:_:).md)
- [AudioQueueGetPropertySize(_:_:_:)](audiotoolbox/audioqueuegetpropertysize(_:_:_:).md)
- [AudioQueueAddPropertyListener(_:_:_:_:)](audiotoolbox/audioqueueaddpropertylistener(_:_:_:_:).md)
- [AudioQueueRemovePropertyListener(_:_:_:_:)](audiotoolbox/audioqueueremovepropertylistener(_:_:_:_:).md)

### Managing the Timeline

- [AudioQueueCreateTimeline(_:_:)](audiotoolbox/audioqueuecreatetimeline(_:_:).md)
- [AudioQueueDisposeTimeline(_:_:)](audiotoolbox/audioqueuedisposetimeline(_:_:).md)
- [AudioQueueDeviceGetCurrentTime(_:_:)](audiotoolbox/audioqueuedevicegetcurrenttime(_:_:).md)
- [AudioQueueDeviceGetNearestStartTime(_:_:_:)](audiotoolbox/audioqueuedevicegetneareststarttime(_:_:_:).md)
- [AudioQueueDeviceTranslateTime(_:_:_:)](audiotoolbox/audioqueuedevicetranslatetime(_:_:_:).md)
- [AudioQueueGetCurrentTime(_:_:_:_:)](audiotoolbox/audioqueuegetcurrenttime(_:_:_:_:).md)
- [AudioQueueTimelineRef](audiotoolbox/audioqueuetimelineref.md)

### Performing Offline Rendering

- [AudioQueueSetOfflineRenderFormat(_:_:_:)](audiotoolbox/audioqueuesetofflinerenderformat(_:_:_:).md)
- [AudioQueueOfflineRender(_:_:_:_:)](audiotoolbox/audioqueueofflinerender(_:_:_:_:).md)

### Callbacks

- [AudioQueueInputCallback](audiotoolbox/audioqueueinputcallback.md)
- [AudioQueueOutputCallback](audiotoolbox/audioqueueoutputcallback.md)
- [AudioQueuePropertyListenerProc](audiotoolbox/audioqueuepropertylistenerproc.md)

### Data Types

- [AudioQueueChannelAssignment](audiotoolbox/audioqueuechannelassignment.md)
- [AudioQueueProcessingTapFlags](audiotoolbox/audioqueueprocessingtapflags.md)
- [AudioQueueBuffer](audiotoolbox/audioqueuebuffer.md)
- [AudioQueueBufferRef](audiotoolbox/audioqueuebufferref.md)
- [AudioQueueLevelMeterState](audiotoolbox/audioqueuelevelmeterstate.md)
- [AudioQueueParameterEvent](audiotoolbox/audioqueueparameterevent.md)
- [AudioQueueParameterID](audiotoolbox/audioqueueparameterid.md)
- [AudioQueueParameterValue](audiotoolbox/audioqueueparametervalue.md)
- [AudioQueueProcessingTapCallback](audiotoolbox/audioqueueprocessingtapcallback.md)
- [AudioQueueProcessingTapRef](audiotoolbox/audioqueueprocessingtapref.md)

### Structures

- [AudioUnitConnection](audiotoolbox/audiounitconnection.md)
- [AudioUnitEvent](audiotoolbox/audiounitevent.md)
- [AudioUnitExternalBuffer](audiotoolbox/audiounitexternalbuffer.md)
- [AudioUnitFrequencyResponseBin](audiotoolbox/audiounitfrequencyresponsebin.md)
- [AudioUnitMeterClipping](audiotoolbox/audiounitmeterclipping.md)
- [AudioUnitMIDIControlMapping](audiotoolbox/audiounitmidicontrolmapping.md)
- [AudioUnitOtherPluginDesc](audiotoolbox/audiounitotherplugindesc.md)
- [AudioUnitParameter](audiotoolbox/audiounitparameter.md)
- [AudioUnitParameterEvent](audiotoolbox/audiounitparameterevent.md)
- [AudioUnitParameterHistoryInfo](audiotoolbox/audiounitparameterhistoryinfo.md)
- [AudioUnitParameterNameInfo](audiotoolbox/audiounitparameternameinfo.md)
- [AudioUnitParameterIDName](audiotoolbox/audiounitparameteridname.md)
- [AudioUnitParameterInfo](audiotoolbox/audiounitparameterinfo.md)
- [AudioUnitParameterOptions](audiotoolbox/audiounitparameteroptions.md)
- [AudioUnitParameterStringFromValue](audiotoolbox/audiounitparameterstringfromvalue.md)
- [AudioUnitParameterValueFromString](audiotoolbox/audiounitparametervaluefromstring.md)
- [AudioUnitParameterValueName](audiotoolbox/audiounitparametervaluename.md)
- [AudioUnitParameterValueTranslation](audiotoolbox/audiounitparametervaluetranslation.md)
- [AudioUnitPresetMAS_SettingData](audiotoolbox/audiounitpresetmas_settingdata.md)
- [AudioUnitPresetMAS_Settings](audiotoolbox/audiounitpresetmas_settings.md)
- [AudioUnitProperty](audiotoolbox/audiounitproperty.md)
- [AudioUnitRenderActionFlags](audiotoolbox/audiounitrenderactionflags.md)
- [AU3DMixerRenderingFlags](audiotoolbox/au3dmixerrenderingflags.md)
- [AUChannelInfo](audiotoolbox/auchannelinfo.md)
- [AUDependentParameter](audiotoolbox/audependentparameter.md)
- [AUDistanceAttenuationData](audiotoolbox/audistanceattenuationdata.md)
- [AUHostIdentifier](audiotoolbox/auhostidentifier.md)
- [AUHostTransportStateFlags](audiotoolbox/auhosttransportstateflags.md)
- [AUHostVersionIdentifier](audiotoolbox/auhostversionidentifier.md)
- [AUInputSamplesInOutputCallbackStruct](audiotoolbox/auinputsamplesinoutputcallbackstruct.md)
- [AUMIDIEvent](audiotoolbox/aumidievent.md)
- [AUMIDIOutputCallbackStruct](audiotoolbox/aumidioutputcallbackstruct.md)
- [AUNumVersion](audiotoolbox/aunumversion.md)
- [AUParameterAutomationEvent](audiotoolbox/auparameterautomationevent.md)
- [AUParameterEvent](audiotoolbox/auparameterevent.md)
- [AUParameterMIDIMapping](audiotoolbox/auparametermidimapping.md)
- [AUParameterMIDIMappingFlags](audiotoolbox/auparametermidimappingflags.md)
- [AUPreset](audiotoolbox/aupreset.md)
- [AUPresetEvent](audiotoolbox/aupresetevent.md)
- [AURecordedParameterEvent](audiotoolbox/aurecordedparameterevent.md)
- [AURenderCallbackStruct](audiotoolbox/aurendercallbackstruct.md)
- [AURenderEvent](audiotoolbox/aurenderevent.md)
- [AURenderEventHeader](audiotoolbox/aurendereventheader.md)
- [AUSamplerBankPresetData](audiotoolbox/ausamplerbankpresetdata.md)
- [AUSamplerInstrumentData](audiotoolbox/ausamplerinstrumentdata.md)
- [AUScheduledAudioSliceFlags](audiotoolbox/auscheduledaudiosliceflags.md)
- [AUSpatialMixerRenderingFlags](audiotoolbox/auspatialmixerrenderingflags.md)

### Enumerations

- [AudioQueueProcessingTapFlags](audiotoolbox/audioqueueprocessingtapflags.md)
- [Anonymous](audiotoolbox/1552627-anonymous.md)
- [Audio Queue Time Pitch Algorithms](audiotoolbox/1552630-audio-queue-time-pitch-algorithm.md)
- [Audio Queue Property IDs](audiotoolbox/1552629-audio-queue-property-ids.md)
- [Audio Queue Property IDs](audiotoolbox/1618733-audio-queue-property-ids.md)
- [Audio Queue Hardware Codec Policy](audiotoolbox/1618727-audio-queue-hardware-codec-polic.md)

### Constants

- [AudioQueuePropertyID](audiotoolbox/audioqueuepropertyid.md)
- [Audio Queue Parameters](audiotoolbox/1552626-audio-queue-parameters.md)
- [Hardware Codec Policy Keys](audiotoolbox/1618724-hardware-codec-policy-keys.md)

### Result Codes

- [kAudioQueueErr_InvalidBuffer](audiotoolbox/kaudioqueueerr_invalidbuffer.md)
- [kAudioQueueErr_BufferEmpty](audiotoolbox/kaudioqueueerr_bufferempty.md)
- [kAudioQueueErr_DisposalPending](audiotoolbox/kaudioqueueerr_disposalpending.md)
- [kAudioQueueErr_InvalidProperty](audiotoolbox/kaudioqueueerr_invalidproperty.md)
- [kAudioQueueErr_InvalidPropertySize](audiotoolbox/kaudioqueueerr_invalidpropertysize.md)
- [kAudioQueueErr_InvalidParameter](audiotoolbox/kaudioqueueerr_invalidparameter.md)
- [kAudioQueueErr_CannotStart](audiotoolbox/kaudioqueueerr_cannotstart.md)
- [kAudioQueueErr_InvalidDevice](audiotoolbox/kaudioqueueerr_invaliddevice.md)
- [kAudioQueueErr_BufferInQueue](audiotoolbox/kaudioqueueerr_bufferinqueue.md)
- [kAudioQueueErr_InvalidRunState](audiotoolbox/kaudioqueueerr_invalidrunstate.md)
- [kAudioQueueErr_InvalidQueueType](audiotoolbox/kaudioqueueerr_invalidqueuetype.md)
- [kAudioQueueErr_Permissions](audiotoolbox/kaudioqueueerr_permissions.md)
- [kAudioQueueErr_InvalidPropertyValue](audiotoolbox/kaudioqueueerr_invalidpropertyvalue.md)
- [kAudioQueueErr_PrimeTimedOut](audiotoolbox/kaudioqueueerr_primetimedout.md)
- [kAudioQueueErr_CodecNotFound](audiotoolbox/kaudioqueueerr_codecnotfound.md)
- [kAudioQueueErr_InvalidCodecAccess](audiotoolbox/kaudioqueueerr_invalidcodecaccess.md)
- [kAudioQueueErr_QueueInvalidated](audiotoolbox/kaudioqueueerr_queueinvalidated.md)
- [kAudioQueueErr_RecordUnderrun](audiotoolbox/kaudioqueueerr_recordunderrun.md)
- [kAudioQueueErr_EnqueueDuringReset](audiotoolbox/kaudioqueueerr_enqueueduringreset.md)
- [kAudioQueueErr_InvalidOfflineMode](audiotoolbox/kaudioqueueerr_invalidofflinemode.md)
- [kAudioFormatUnsupportedDataFormatError](audiotoolbox/kaudioformatunsupporteddataformaterror.md)

## See Also

### Playback and Recording

- [Audio Services](audiotoolbox/audio-services.md)
- [Music Player](audiotoolbox/music-player.md)
- [Anchoring sound to a window or volume](audiotoolbox/spatializing-sound-from-a-uiscene.md)
