Jump To:
Leopard Reference Library
System-level Mac OS X services streamline the development process for audio developers, and for application developers who incorporate audio into their products. Core Audio provides native multichannel audio in a manner scalable for future high-resolution formats. The Audio Unit API provides a plug-in architecture for both DSP and for MIDI-based virtual instruments. MIDI services provide multiport MIDI capability.

An introduction to audio development in Mac OS X.   Essential information for developers working with audio in Mac OS X.   C and Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Topic
Sort by
Resource Type
Sort by
Date
Apple Core Audio Format Specification 1.0 (HTML) (PDF)
Specifies the Apple Core Audio Format (CAF) for audio files.
Apple Applications, Core Audio Reference 2006-03-08
Are the Name Registry device tree nodes unique? (HTML)
Deprecated - HW64: Discusses whether Name Registry nodes copied from the Open Firmware device tree are unique.
Hardware & Drivers Technical Q&As 1999-10-11
Audio Codec Services Reference (HTML) (PDF)
Describes the programming interface for configuring audio codecs and for encoding and decoding audio data.
Core Audio Reference 2007-10-31
Audio Device Driver Programming Guide (HTML) (PDF)
Explains how to develop kernel-resident drivers for audio devices.
Hardware & Drivers Guides 2009-03-04
Audio Export - Encoding AAC Audio For MPEG-4 Export (HTML)
TN2237: The QT MPEG4 Exporter does not show all options for generating AAC, this TN discusses workarounds.
Core Audio, QuickTime Technical Notes 2009-01-27
Audio File Services Reference (HTML) (PDF)
Describes a C programming interface for reading and writing audio files.
Carbon, Cocoa, Core Audio Reference 2008-07-08
Audio File Stream Services Reference (HTML) (PDF)
Describes the interface for reading non-random access audio file streams.
Core Audio Reference 2008-10-15
Audio Queue - Looping Compressed Audio (HTML)
QA1636: Discusses the format information required to seamlessly loop compressed audio using Audio Queue.
Carbon, Cocoa, Core Audio Technical Q&As 2009-02-20
Audio Queue Services Programming Guide (HTML) (PDF)
Describes how to play and record audio using Audio Queue Services.
Carbon, Cocoa, Core Audio Guides 2007-10-31
Audio Queue Services Reference (HTML) (PDF)
Describes a high-level programming interface for recording and playing back audio data.
Carbon, Core Audio Reference 2008-07-08
Audio Toolbox Framework Reference (HTML)
Describes the Core Audio API to access audio files and convert between linear PCM and compressed audio formats.
Core Audio Reference 2006-11-07
Audio Unit Programming Guide (HTML) (PDF)
Explains how to use Core Audio frameworks and the Core Audio SDK to create audio units.
Apple Applications, Carbon, Cocoa, Core Audio Guides 2007-10-31
Audio Unit Resizing (HTML)
QA1343: Discusses the host's responsibilities when resizing Audio Units.
Core Audio Technical Q&As 2004-03-23
Audio Unit Validation Using the auval Tool (HTML)
TN2204: Test the conformance of audio units to Audio Unit Services.
Core Audio Technical Notes 2008-09-08
Audio Units: Embedding a Carbon View in a Cocoa Window (HTML)
TN2213: Carbon-Cocoa Integration for Audio Units
Core Audio Technical Notes 2008-02-29
AudioCDSample (HTML) (DMG) (ZIP)
Demonstrates how to discover audio CDs and access the TOC information presented by the CD-DA filesystem.
Hardware & Drivers Sample Code 2005-10-04
AudioChannelLayout - What's the Audio Channel Order when the Layout has a Channel Bitmap? (HTML)
QA1638: Explains the audio channel order when a channel layout is tagged as kAudioChannelLayoutTag_UseChannelBitmap.
Core Audio Technical Q&As 2009-04-12
AudioConverter: How do I know when I am done? (HTML)
QA1532: Describes how to correctly signal AudioConverter when a conversion is completed.
Core Audio Technical Q&As 2007-08-23
AudioDevice sample rates (HTML)
QA1196: Getting, setting and converting sample rates with Audio Devices.
Core Audio Technical Q&As 2003-12-09
AudioDeviceNotify (HTML) (DMG) (ZIP)
Demonstrates how to enumerate audio devices attached to the system and how to handle device notifications
Carbon, Cocoa, Core Audio Sample Code 2006-04-21
AudioQueueTest (HTML) (DMG) (ZIP)
Demonstrates AudioQueue, an audio playback API introduced in Mac OS X 10.5
Carbon, Core Audio Sample Code 2006-08-01
AudioQueueTools (HTML) (DMG) (ZIP)
Demonstrates usage of the AudioQueue API
Core Audio Sample Code 2007-06-08
AUGraphs and AudioUnit connections (HTML)
QA1174: Discusses AudioUnit connection issues when using more than one AudioUnit or an AUGraph.
Core Audio Technical Q&As 2003-12-09
Available FireWire Isochronous Bandwidth (HTML)
QA1356: Discusses attempting to "pre-flight" an isochronous bandwidth allocation request by reading the currently available bandwidth.
Hardware & Drivers Technical Q&As 2004-07-07
Avoiding Pauses When Looping Audio files with QuickTime (HTML)
QA1371: Demonstrates how to avoid pauses when looping audio files with QuickTime
Games Technical Q&As 2004-09-08
CAPlayThrough (HTML) (DMG) (ZIP)
Illustrates how to use the HAL's Audio Output Unit (AUHAL) for device input and the Default Output Audio Unit for output.
Core Audio Sample Code 2007-08-22
Capturing Speech Manager Output (HTML) (日本語 HTML)
Deprecated - SND15: Capturing the output from the Speech Synthesis Manager to a file.
Carbon Technical Q&As 1998-05-18
Changing the volume of audio devices (HTML)
QA1016: Demonstrates volume controls for audio devices
Carbon, Core Audio Technical Q&As 2006-05-02
Core Audio Data Types Reference (HTML) (PDF)
Describes data types and constants used throughout Core Audio.
Core Audio Reference 2008-11-19
Core Audio Framework Reference (HTML)
Describes a C API that interfaces with audio hardware and includes data types used throughout Core Audio.
Core Audio Reference 2006-11-07
Core Audio Glossary (HTML) (PDF)
Defines general digital audio terms as well as terms specific to Apple's Core Audio technology.
Carbon, Cocoa, Core Audio, Games, General, Hardware & Drivers, MIDI Reference 2008-07-07
Core Audio Overview (HTML) (PDF)
Provides an overview of Core Audio and its programming interfaces.
Apple Applications, Carbon, Cocoa, Core Audio, Games Guides 2007-01-08
Core MIDI Framework Reference (HTML)
Describes a C API for Mac OS X MIDI system services.
Core Audio, MIDI Reference 2008-04-08
Core MIDI Server Framework Reference (HTML)
Describes the Mac OS X MIDI driver interface.
Core Audio, MIDI Reference 2008-04-08
CoreAudio Overload Warnings (HTML)
QA1467: Describes CoreAudio overload warnings what they mean and how to avoid them.
Carbon, Cocoa, Core Audio, Performance Technical Q&As 2006-03-29
Creating Core Audio Format (.caf) Files (HTML)
QA1534: Describes how to use afconvert to create .caf files
Apple Applications, Core Audio, QuickTime Technical Q&As 2009-01-07
The Default Output Audio Units (HTML)
QA1577: Describes the Mac OS X output audio units and their purposes.
Core Audio Technical Q&As 2008-08-21
Determine the version of an Audio Unit (HTML)
QA1408: Determine the version of an Audio Unit
Core Audio Technical Q&As 2005-03-07
Device input using the HAL Output Audio Unit (HTML)
TN2091: How to get input from an audio device by using the HAL's Output Audio Unit.
Core Audio Technical Notes 2006-07-25
Difference between using Restart or Shut Down in the Finder's Special menu in Open Firmware (HTML) (日本語 HTML)
HW47: Explains the differences between using Restart or Shut Down on Open Firmware
Hardware & Drivers Technical Q&As 1999-02-15
Disabling Processor Cores on a Multi-Core System (HTML) (日本語 HTML)
QA1141: Describes how to disable processor cores on a multi-core system for testing purposes.
Performance Technical Q&As 2008-09-16
Disc Recording Framework Reference (HTML)
Describes the Objective-C and C API for burning audio and data CDs and DVDs.
Carbon, Cocoa Reference 2008-04-08
Disc Recording UI Framework Reference (HTML)
Describes the Objective-C and C API for presenting a user interface when burning audio and data CDs and DVDs.
Carbon, Cocoa Reference 2008-04-08
DiscRecording Release Notes (HTML)
Updated for Mac OS X v10.5
Carbon, Cocoa Release Notes 2007-10-31
dist_fft (HTML) (DMG) (ZIP)
Gigaelement FFTs on Apple G5 clusters
Performance Sample Code 2004-08-23
Extended Audio File Services Reference (HTML) (PDF)
Describes an interface for reading and writing audio files with automatic format conversion.
Core Audio Reference 2008-09-09
ExtractMovieAudioToAIFF (HTML) (DMG) (ZIP)
Demonstrates how to extract audio from QuickTime Movies and write the data to an AIFF file.
Cocoa, QuickTime Sample Code 2006-03-31
FilterDemo (HTML) (DMG) (ZIP)
Demonstrates how to write a filter AudioUnit with a custom Cocoa User Interface.
Core Audio Sample Code 2005-06-01
FireWire Audio User Library Framework Reference (HTML)
Describes the API that supports user-space access to FireWire audio devices and enables the creation of virtual FireWire audio devices.
Hardware & Drivers Reference 2008-04-08
Generating a Non-Maskable Interrupt (NMI) (HTML) (日本語 HTML)
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
Hardware & Drivers Technical Q&As 2008-10-13
Going Universal: Audio Developers Catch the Wave (HTML)
Learn how audio developers who built universal binaries of their applications are reaping the benefits.
Carbon, Cocoa, Core Audio Articles 2006-07-18
Handling Audio Unit Events (HTML)
TN2104: This technote explains how to handle AudioUnit Events
Carbon, Cocoa, Core Audio Technical Notes 2005-04-29
The header file 'alut.h' is missing from the OpenAL framework. (HTML)
QA1504: ALUT headers were removed from OpenAL.framework with the Xcode 2.4. This Q&A describes how to regain access to those system-supplied symbols
Carbon Technical Q&As 2007-02-06
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
Apple Applications Technical Q&As 2001-06-13
How do I create a QuickTime movie from PCM audio samples in memory? (HTML)
QA1539: How to create a QuickTime movie from PCM audio samples in memory
QuickTime Technical Q&As 2007-08-29
How to handle audio data with magic cookie information (HTML)
QA1318: How to handle sound files with magic cookies when using an AudioConverter.
Core Audio Technical Q&As 2003-10-22
How to handle kAudioUnitProperty_MaximumFramesPerSlice (HTML)
QA1533: Illustrates how to use the kAudioUnitProperty_MaximumFramesPerSlice property
Core Audio Technical Q&As 2007-07-16
I/O Kit Framework Reference (HTML)
Describes the I/O Kit classes that support non-kernel access to I/O Kit objects through the device-interface mechanism.
Hardware & Drivers Reference 2009-03-04
Installing an I/O Kit KEXT Without Rebooting (HTML)
QA1319: Describes the state of the art of installing I/O Kit kernel extensions (KEXTs) without requiring a restart.
Hardware & Drivers Technical Q&As 2003-10-28
IODeviceTree and the I/O Registry (HTML) (日本語 HTML)
QA1120: Describes the IODeviceTree plane in the Mac OS X I/O Registry.
Hardware & Drivers Technical Q&As 2008-09-18
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
Hardware & Drivers Technical Q&As 2002-01-15
Kernel Framework Reference (HTML)
Describes the APIs and classes (including I/O Kit families) that support kernel-resident device drivers.
Hardware & Drivers Reference 2009-01-06
MACE Restrictions (HTML) (日本語 HTML)
Deprecated - SND16: MACE algorithms only support the compression of 8-bit offset binary sound.
Carbon Technical Q&As 1999-06-08
Making Input Gain Setting Changes (HTML) (日本語 HTML)
Deprecated - SND01: Changing the input gain setting on older Power Macs before recording.
Carbon Technical Q&As 1996-06-01
MIDI File Format (HTML)
Describes the QuickTime implementation of the MIDI file standard.
Carbon, MIDI, QuickTime Reference 2002-09-17
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Carbon Sample Code 2003-10-27
MovieAudioExtraction - Ensure a Movie is fully loaded before starting an extraction session (HTML)
QA1469: Describes the importance of making sure a Movie is fully loaded before extracting audio.
QuickTime Technical Q&As 2006-03-29
MovieAudioExtraction - Extracting all available audio samples (HTML)
QA1481: Describes how to correct for MovieAudioExtraction missing some audio samples at the end of audio files.
QuickTime Technical Q&As 2006-07-18
Music Player Sequence Destinations (HTML) (日本語 HTML)
QA1330: Provides clarification on MIDI Endpoints and assigning MIDI data flow.
MIDI Technical Q&As 2004-01-15
NSSound Class Reference (HTML) (PDF)
Describes an object that loads and plays audio files.
Cocoa Reference 2008-10-15
Obtaining the name of an external MIDI Device from a MIDI Endpoint (HTML)
QA1374: Get the names of external MIDI Devices from MIDI Endpoints.
Hardware & Drivers, MIDI Technical Q&As 2004-12-01
OpenALExample (HTML) (DMG) (ZIP)
Basic example showing OpenAL usage in a 2D OpenGL environment
Games Sample Code 2005-06-01
Optimizing Audio Unit User Experience in Logic Studio (HTML)
TN2207: How to provide the best user experience with your audio unit in Logic Studio
Apple Applications, Core Audio Technical Notes 2009-04-23
The "packages" node in the device tree (HTML)
HW90: Describes the "packages" node in the Open Firmware device tree.
Hardware & Drivers Technical Q&As 2006-02-22
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance Guides 2006-10-03
Playback of QuickTime movie audio through a multi-channel speaker system (HTML)
QA1627: Specify a specific pair of channels for QuickTime audio movie playback through a multi-channel speaker system
QuickTime Technical Q&As 2008-11-05
Playing a sound file using the Default Output Audio Unit (HTML)
TN2097: Playing an Audio File using the Default Output Audio Unit
Core Audio Technical Notes 2006-11-15
Playing QuickTime 3 Movie Sound Data (HTML) (日本語 HTML)
QTMTB50: Explains why a movie's sound data can continue to play longer than video data.
QuickTime Technical Q&As 1998-11-09
QTAudioContextInsert (HTML) (DMG) (ZIP)
Demonstrates use of Audio Context Insert APIs to perform custom processing on QuickTime's audio stream.
QuickTime Sample Code 2008-01-21
QTAudioExtractionPanel (HTML) (DMG) (ZIP)
Enhances the QTKitPlayer to add an Audio Channel Mapping and Extraction panel
Core Audio, QuickTime Sample Code 2005-06-27
QTExtractAndConvertToAIFF (HTML) (DMG) (ZIP)
Demonstrates using MovieAudioExtraction and an AudioConverter to extract and convert audio to a AIFF file.
QuickTime Sample Code 2006-11-08
QTExtractAndConvertToMovieFile (HTML) (DMG) (ZIP)
Demonstrates using MovieAudioExtraction and an AudioConverter to extract and convert audio to a QuickTime movie file.
QuickTime Sample Code 2006-11-08
QuickTime Audio (HTML)
Explains how to enable recording and playback of various audio media.
Carbon, QuickTime Guides 2002-09-17
QuickTime Audio - Easy Frequency Level Metering with MovieAudio APIs (HTML)
QA1459: Describes how to perform frequency band level metering using MovieAudio metering APIs.
QuickTime Technical Q&As 2009-01-29
QuickTime Audio - Retrieving the correct audio format bit depth value (HTML)
QA1477: Discusses how to retrieve accurate audio format bit depth.
QuickTime Technical Q&As 2008-11-05
QuickTime Media Types and Media Handlers Guide (HTML) (PDF)
Describes video, sound, text, time code, and tween media handlers.
QuickTime Guides 2006-01-10
QuickTime Music Architecture Guide (HTML) (PDF)
Explains how to enable synthesizing and playing of sounds and musical sequences.
Carbon, QuickTime Guides 2006-01-10
RecordAudioToFile (HTML) (DMG) (ZIP)
Demonstrates recording audio to an AAC file using Core Audio
Carbon, Core Audio, Games, Performance Sample Code 2007-02-27
Recording Compressed Sounds (HTML) (日本語 HTML)
Deprecated - SND14: Sound Manager and sound input driver compression options are limited to allow interrupt time recording.
Carbon Technical Q&As 1998-04-12
Retain Counts of io_object_t Objects in IOKit.framework (HTML) (日本語 HTML)
QA1195: Distinguishes between the retain counts of an I/O Kit kernel object and its io_object_t user space proxy.
Hardware & Drivers Technical Q&As 2008-09-24
SampleUSBAudioPlugin (HTML) (DMG) (ZIP)
USB audio plugin that performs a lowpass filtering operation on audio streamed through an audio USB Device.
Hardware & Drivers Sample Code 2005-03-07
Selecting a specific sound input source (HTML) (日本語 HTML)
Deprecated - SND10: Using the sound input driver to select specific sound input sources.
Carbon Technical Q&As 1998-01-16
Setting Audio Input Gain (HTML) (日本語 HTML)
Deprecated - SND11: Setting audio input gain under Mac OS 8.1.
Carbon Technical Q&As 1998-02-10
siActive Channels Unsupported on Some Power Macs (HTML) (日本語 HTML)
Deprecated - SND03: siActive Channels is unsupported on some older PowerMacs (siUnknownInfoType returned by SPBGetDeviceInfo).
Carbon Technical Q&As 1996-06-01
Signaling the end of data when using AudioConverterFillComplexBuffer (HTML)
QA1317: How to signal the end of data when using AudioConverterFillComplexBuffer to convert audio data.
Core Audio Technical Q&As 2004-04-26
SillyFrequencyLevels (HTML) (DMG) (ZIP)
Demonstrates how to obtain audio frequency levels from a Movie using SetMovieAudioFrequencyMeteringNumBands and GetMovieAudioFrequencyLevels APIs.
QuickTime Sample Code 2006-01-25
siMonitorSource Selector (HTML) (日本語 HTML)
Deprecated - SND13: Using the sound output siMonitorAvailable, and siMonitorSource selectors.
Carbon Technical Q&As 1998-04-12
SimpleAudioExtraction (HTML) (DMG) (ZIP)
Demonstrates the QuickTime 7.0 Movie Audio Extraction APIs
QuickTime Sample Code 2006-01-03
SimplePlayThru (HTML) (DMG) (ZIP)
Use the HAL's Audio Output Unit (AUHAL) for device input and output on a single device (play-thru)
Carbon, Core Audio, Hardware & Drivers Sample Code 2006-10-25
SimpleSpeechRecExample (HTML) (DMG) (ZIP)
Demonstrates how to use the Speech Recognition Manager in a simple application.
Carbon Sample Code 2003-03-26