Apple's CoreAudio library gives you a lot of flexibility and
power for querying and manipulating the audio hardware
attached to your computer. However, it's easy to get
lost in the sticky details of the C API. I've written a
Cocoa-flavored Objective-C wrapper around CoreAudio, with
the idea that all the tedium is taken care of for you, so
you can concentrate on the actual doing-stuff
part of your application. The framework exposes most of
CoreAudio's functionality to you in a nice, object-oriented
fashion while still giving you the flexibility to do anything
the hard way if you want/need to.