Введение
Этот документ описывает аудиоустройства и как создать их. Аудиоустройства являются плагинами цифрового аудио на основе технологии Core Audio Apple мирового класса для OS X.
Как человек, увлеченный своим хобби, или студент информатики, можно разработать и создать собственные аудиоустройства для подавания заявок как GarageBand, делают новые вещи со звуком.
Как коммерческий разработчик, можно создать компоненты программного обеспечения профессионального качества, обеспечивающие функции как фильтрация, реверберация, обработка динамики и основанное на выборке цикличное выполнение. Можно также создать простые или тщательно продуманные ОСНОВАННЫЕ НА MIDI музыкальные синтезаторы, а также больше технических аудиоустройств, таких как время и преобразователи формата данных и устройства изменения высоты тона.
Как часть Core Audio и являющийся неотъемлемой частью OS X, аудиоустройства предлагают подход к разработке для аудио плагинов, выделяющийся с точки зрения производительности, устойчивости и простоты развертывания. С аудиоустройствами Вы также получаете путем обеспечения непротиворечивого, простого опыта для конечных пользователей.
Ваш целевой рынок широк, включая исполнителей, DJs, записывая и осваивая инженеров и любого, кому нравится играть со звуком на их iMac.
Кто должен считать этот документ?
Для использования этого документа необходимо уже быть знакомы с языком программирования C. Необходимо быть довольны использованием XCode для создания плагина OS X, как описано в Обзоре XCode. Например, необходимо знать о различных опциях сборки XCode, таких как ZeroLink, и когда использовать их. Необходимо также знать, как и почему включать платформы, и файлы в соединяющейся фазе XCode создают.
Очень полезно в использовании этого документа иметь достаточно знакомства с языком программирования на C++ для чтения файлов реализации и заголовка. Также полезно иметь основное понимание Менеджера компонентов OS X, как описано в Менеджере компонентов для QuickTime, а также основании в кодировании цифрового аудио и аудио DSP (цифровая обработка сигналов).
Этот документ не удовлетворяет потребности разработчиков хост-приложения аудиоустройства, код которых открывает, подключает и использует аудиоустройства. И при этом этот документ не является поваренной книгой аудиоустройства. Это посвящает очень немного страниц DSP или музыкальным методам синтеза, работающим по существу тот же путь в аудиоустройствах как в других аудио программных технологиях
Организация этого документа
В зависимости от Ваших потребностей и Вашего приобретения знаний стиля, можно использовать этот документ следующими способами.
Если Вы хотите достать создание аудиоустройства сразу же, перейдите прямо к Учебному руководству: Создание Простого Модуля Эффекта с Универсальным Представлением. Поскольку Вы создаете аудиоустройство, можно обратиться к другим разделам в этом документе для концептуальной информации, связанной с тем, что Вы делаете.
Если Вы предпочитаете создавать свое знание инкрементно, начиная с существенной концептуальной основы прежде, чем видеть технологию в действии, считайте главы в порядке.
Если у Вас уже есть некоторое знакомство с созданием Ваших собственных аудиоустройств, можно хотеть перейти прямо к Аудиоустройству и Приложению: Иерархия классов Аудиоустройства. Вы могли бы также хотеть рассмотреть Быстрый Тур по Core Audio SDK, чтобы видеть, содержит ли SDK некоторые сокровища, Вы не использовали до сих пор.
Этот документ содержит следующие главы:
Основные принципы Разработки Аудиоустройства, вид с высоты птичьего полета разработки аудиоустройства, покрывая XCode, Core Audio SDK, проект, разработка, тестирование и развертывание
Аудиоустройство, проект и соображения программирования для части аудиоустройства, выполняющего работу со звуком
Представление Аудиоустройства, описание двух типов представления аудиоустройства — универсальный и пользовательский — а также объяснение автоматизации параметра
Быстрый Тур по Core Audio SDK: Использование в своих интересах кода в Core Audio SDK является самым быстрым маршрутом к разработке аудиоустройства
Учебное руководство: Создавая Простой Модуль Эффекта с Универсальным Представлением, учебное руководство, берущее Вас от нуля до полностью функционирующего модуля эффекта
Приложение: Иерархия классов Аудиоустройства, тур по иерархии классов аудиоустройства, предоставленной Core Audio SDK
Делание дальнейших успехов в разработке аудиоустройства
Для продвижения в разработке собственных аудиоустройств на основе того, что Вы изучаете здесь Вам будет нужно:
Возможность разработать плагины с помощью языка программирования на C++, потому что иерархия классов аудиоустройства в Core Audio SDK использует C++.
Основание в аудио DSP, включая необходимую математику. Также можно работать с кем-то, кто может обеспечить код DSP для аудиоустройств, вместе с кем-то, кто может одновременно покупать и продавать математические миры и аудиоустройство. По оптимальному качеству и производительности аудиоустройства, код DSP должен быть правильно включен в леса аудиоустройства.
Основание в MIDI, если Вы разрабатываете модули инструментов.
Требуемые инструменты для разработки аудиоустройства
При выполнении полной установки текущей версии OS X, включая Инструменты XCode, у Вас будет все, в чем Вы нуждаетесь в своей системе для разработки аудиоустройства. Эти элементы также доступны лишенный веб-сайта разработчика Apple, http://developer .apple.com:
Последняя версия XCode. Примеры в этом документе используют версию 2.4 XCode.
Последние заголовочные файлы OS X. Примеры в этом документе используют заголовочные файлы в 10.4.0 OS X SDK, установленный с Инструментами XCode Apple.
Последний комплект разработчика Core Audio. Примеры в этом документе используют Core Audio SDK v1.4.3, установленный с Инструментами XCode Apple в этом расположении в Вашей системе:
/Developer/Examples/CoreAudio
По крайней мере одно хост-приложение аудиоустройства. Apple рекомендует приложение AU Lab, установленное с Инструментами XCode Apple в этом расположении в Вашей системе:
/Developer/Applications/Audio/AU Lab
Инструмент командной строки проверки аудиоустройства,
auval
, Инструмент проверки Apple для аудиоустройств, предоставленных OS X.
См. также
Как Вы узнаете о разработке аудиоустройств, можно счесть следующую информацию и инструменты полезными:
Список рассылки coreaudio-api, очень активный дискуссионный форум, размещенный Apple, покрывающим все аспекты проектирования и разработки аудиоустройства.
Документация API платформы Аудиоустройства (предварительная), доступная от страницы Audio Topic на веб-сайте разработчика Apple.
Дополнительное аудиоустройство ссылка API, доступная в Ссылке Платформы Core Audio в Ссылочной Библиотеке Apple.
Демонстрационный проект TremoloUnit, соответствующий аудиоустройству, которое Вы создаете в Учебном руководстве: Создание Простого Модуля Эффекта с Универсальным Представлением.
Обзор Core Audio, рассматривающий все функции, доступные в Core Audio, и описывающий, где вписываются аудиоустройства.
Свяжите Руководство по программированию, описывающее файловую систему упаковочный механизм в OS X, используемом для аудиоустройств.
Ссылка Менеджера компонентов, описывающая API Менеджера компонентов, технология OS X, управляющая аудиоустройствами на системном уровне. Для узнавания больше о Менеджере компонентов, можно обратиться к Менеджеру компонентов для QuickTime.