Contents
About the Authors
Foreword
Introduction
Audience for This Book
What You Need to Know
Looking Up Documentation
How This Book Is Organized
About the Sample Code
I: Understanding Core Audio
1 Overview of Core Audio
Core Audio Conventions
The Core Audio Frameworks
Your First Core Audio Application
Core Audio Properties
Summary
2 The Story of Sound
Making Waves
Digital Audio
DIY Samples
Buffers
Audio Formats
Summary
3 Audio Processing with Core Audio
Audio Data Formats
Canonical Formats
Processing Audio with Audio Units
The Pull Model
Summary
II: Basic Audio
4 Recording
All About Audio Queues
Building a Recorder
A CheckError() Function
Creating and Using the Audio Queue
Utility Functions for the Audio Queue
Summary
5 Playback
Defining the Playback Application
Setting Up a File-Playing Audio Queue
Playback Utility Functions
The Playback Audio Queue Callback
Features and Limits of Queue-Based Playback
Summary
6 Conversion
The afconvert Utility
Using Audio Converter Services
Setting Up Files for Conversion
Converting with Extended Audio File Services
Summary
III: Advanced Audio
7 Audio Units: Generators, Effects, and Rendering
Where the Magic Happens
How Audio Units Work
Sizing Up the Audio Units
Your First Audio Units
Speech and Effects with Audio Units
Adding Your Code to the Audio Rendering Process
Summary
8 Audio Units: Input and Mixing
Working with I/O Input
Mixing
Summary
9 Positional Sound
Sound in Space
The OpenAL API
Putting a Sound in Space
Streaming Audio in OpenAL
Summary
IV: Additional Topics
10 Core Audio on iOS
Is That Core Audio in Your Pocket?
Playing Nicely with Others: Audio Session Services
An Audio Session Example
Audio Units on iOS
Other iOS Audio Tricks
Summary
11 Core MIDI
MIDI Concepts
Core MIDI
Instrument Units
Building a Simple MIDI Synthesizer
Handling MIDI Notifications and Events
Creating MIDI Events
Summary: MIDI Mastery … but Mobility?
12 Coda
Still More Core Audio
Next Steps
Lion and iOS 5
The Core Audio Community
Summary: Sounds Good
Index
A
B
C
D
E
F
G-H
I
J-K-L
M
N
O
P
Q-R
S
T
U-Z