Введение в руководство по программированию драйвера аудиоустройства
Эта книга описывает архитектуру, службы и механизмы семьи Audio Набора I/O, и объясняет, как Вы используете APIs семьи для записи драйвера аудиоустройства для OS X. Это не покрывает аспекта аудио пространства пользователя, программирующего (MIDI, синтезаторы, проигрыватели компакт-дисков, и т.д.) кроме обсудить полный состав аудиосистемы OS X, включающей Core Audio и другие аудио платформы.
Для получения большей части значения от чтения этой книги это помогает быть знакомым с Набором I/O и объектно-ориентированным программированием, предпочтительно программированием на C++. Книга IOKit Fundamentals обеспечивает полное введение в Набор I/O; посмотрите Дополнительную информацию о Наборе I/O для подробных данных об этом и другой документации Набора I/O.
Кто должен считать этот документ?
Если нет никакого другого способа достигнуть целей, как с любым драйвером устройства уровня ядра, необходимо только записать драйвер. Много аудиоустройств поддерживаются исходно в OS X. Если Ваше устройство соответствует USB или стандартам аудио FireWire, Вы не должны должны быть писать пользовательский драйвер, если Вы не должны реализовать опции вне поддерживаемых в соответствующих аудио стандартах.
В некоторых случаях, даже если необходимо сделать специфичную для специального устройства обработку, можно быть в состоянии сделать так, не пишущий весь драйвер. Например, некоторые аппаратные средства аудио USB (для динамиков USB, например) могут потребовать дополнительной фильтрации программного обеспечения, такой как коррекция. OS X обеспечивает механизм в ядре для того, чтобы сделать это через модель плагина AppleUSBAudio. Для получения дополнительной информации посмотрите пример кода SampleUSBAudioPlugin.
Организация этого документа
Этот документ описывает все аспекты создания драйвера аудиоустройства с помощью семьи Audio Набора I/O. Это включает концептуальную и процедурную информацию и состоит из следующих глав:
Аудио на OS X — Описывает функции, преимущества и архитектуру аудиосистемы OS X. Это включает обзор аудио модели I/O.
Аудио Проект семьи — Подарки всесторонний обзор архитектуры семьи Audio, классов, возражают отношениям и основным механизмам. Это также вдается в большее количество подробностей о работах аудио модели I/O в OS X.
Реализация Драйвера аудио — Описывает различные шаги, требуемые к разработке и реализации драйвер аудиоустройства с помощью семьи Audio. Большинство шагов достаточно проиллюстрировано с примером кода.
Для получения дополнительной информации определенных методов, структуры и другие элементы API, консультируются со справочной документацией для семьи Audio. Посмотрите Дополнительную информацию о Наборе I/O для инструкций при доступе к этой документации.
См. также
Apple предлагает несколько других ресурсов разработчикам аудио программного обеспечения для OS X, включая:
Посмотрите http://developer .apple.com/audio для страницы, полной ссылок к связанному с аудио материалу.
Посмотрите Core Audio для описания платформы Core Audio (Аудио HAL).
Для получения информации о платформах MIDI посмотрите Ссылку Платформы Core MIDI и Ссылку Серверной инфраструктуры Core MIDI.
Посмотрите
/Developer/Examples/Kernel/IOKit/Audio
для некоторых демонстрационных проектов драйвера аудио и других примеров кода, относящихся к аудио разработке.
Дополнительная информация о наборе I/O
Для получения дополнительной информации о Наборе I/O в целом, см. следующие документы:
Обзоры Дарвинского ядра, включая Руководство по программированию Ядра.
Вышеупомянутые Основные принципы IOKit описывают функции, архитектуру, классы и общие механизмы Набора I/O и включают обсуждения соответствия драйвера и загрузки, обработки событий, управления памятью и управления питанием.
Руководство по проектированию Драйвера устройства IOKit, который описывает общие шаги, требуемые разработать, кодирует, отлаживает и создает драйвер устройства, который будет резидентным объектом в ядре.
Темы Программирования Расширения ядра, набор учебных руководств, представляющих Вас средствам разработки и берущих Вас через шаги, требуемые создать, отладить, и упаковать расширения ядра и драйверы Набора I/O (тип расширения ядра).
Справочная документация на семьях I/O Kit и классах.
Конечно, можно всегда просматривать заголовочные файлы, поставленные с Набором I/O, которые установлены в Kernel.framework/Headers/iokit
(резидентный объект ядра) и IOKit.framework/Headers
(пространство пользователя).
Документация находится в HTML или Формате PDF. Можно получить доступ к документации HTML (и загрузить PDF) из Меню справки XCode. Для просмотра нажмите Help> Show Documentation Window. Можно тогда искать определенный API или просмотреть всю библиотеку документации разработчика. Можно также получить доступ к документации разработчика относительно веб-сайта Соединения Разработчика Apple в http://developer .apple.com/documentation/index.html.
Другая информация о сети
Apple поддерживает веб-сайты, куда разработчики могут пойти для общей и технической информации о OS X.
Соединение Разработчика Apple: OS X (http://developer .apple.com/devcenter/macosx) предлагает SDKs, информацию о версии, примечания продукта и новости, и другие ресурсы и информацию, связанную с OS X.
Область Поддержки Apple (http://www .apple.com/support/) позволяет Вам определить местоположение технических статей о OS X (и другие области) использование поиска на естественном языке.