This document describes how to use Audio Queue Services, a C programming interface in Core Audio’s Audio Toolbox framework.

What Is Audio Queue Services?

Audio Queue Services provides a straightforward, low overhead way to record and play audio in iOS and Mac OS X. It is the recommended technology to use for adding basic recording or playback features to your iOS or Mac OS X application.

Audio Queue Services lets you record and play audio in any of the following formats:

Audio Queue Services is high level. It lets your application use hardware recording and playback devices (such as microphones and loudspeakers) without knowledge of the hardware interface. It also lets you use sophisticated codecs without knowledge of how the codecs work.

At the same time, Audio Queue Services supports some advanced features. It provides fine-grained timing control to support scheduled playback and synchronization. You can use it to synchronize playback of multiple audio queues and to synchronize audio with video.

Audio Queue Services is a pure C interface that you can use in Cocoa applications as well as in Mac OS X command-line tools. To help keep the focus on Audio Queue Services, the code examples in this document are sometimes simplified by using C++ classes from the Core Audio SDK. However, neither the SDK nor the C++ language is necessary to use Audio Queue Services.

Who Should Read This Guide?

Audio Queue Services Programming Guide is useful to all iOS and Mac OS X developers who want a streamlined, straightforward way to record or play audio. To get the most from this document, you should be familiar with:

Organization of This Document

This guide contains the following chapters:

See Also

You may find the following documents helpful: