Core Audio Overview

Introduction

Core Audio provides software interfaces for implementing audio features in applications you create for iOS and OS X. Under the hood, it handles all aspects of audio on each of these platforms. In iOS, Core Audio capabilities include recording, playback, sound effects, positioning, format conversion, and file stream parsing, as well as:

A built-in equalizer and mixer that you can use in your applications

Automatic access to audio input and output hardware

APIs to let you manage the audio aspects of your application in the context of a device that can take phone calls

Optimizations to extend battery life without impacting audio quality

On the Mac, Core Audio encompasses recording, editing, playback, compression and decompression, MIDI, signal processing, file stream parsing, and audio synthesis. You can use it to write standalone applications or modular effects and codec plug-ins that work with existing products.

Core Audio combines C and Objective-C programming interfaces with tight system integration, resulting in a flexible programming environment that maintains low latency through the signal chain.

Note: Core Audio does not provide direct support for audio digital rights management (DRM). If you need DRM support for audio files, you must implement it yourself.

Core Audio Overview is for all developers interested in creating audio software. Before reading this document you should have basic knowledge of general audio, digital audio, and MIDI terminology. You will also do well to have some familiarity with object-oriented programming concepts and with Apple’s development environment, Xcode. If you are developing for iOS-based devices, you should be familiar with Cocoa Touch development as introduced in Start Developing iOS Apps Today (Retired).