Техническое примечание TN2207

Оптимизация пользовательского опыта аудиоустройства в логическом Studio

Логический Studio является комплектом мощного приложения, обрабатывающим ключевые аспекты музыкального производства в пределах от создания, расположения, смешивания, производства сообщения и даже театральной производительности. Этот документ выделяет несколько главных особенностей стандарта аудиоустройства, на который разработчики должны обратить особое внимание гарантировать лучший пользовательский опыт для их продуктов через всю палитру хост-приложений аудиоустройства в Логическом Studio: Логический Pro 8, звуковая дорожка Pro 2, MainStage и WaveBurner.

Введение
Используя auval
Кэширование свойства
Представления аудиоустройства
Объемный звук
Поверхности внешнего управления
Ссылка свойства аудиоустройства логического Studio
Ресурсы
История версии документа

Введение

В то время как код и поведение широко совместно используются среди приложений в Логическом Studio, каждый все еще специализируется на определенных задачах и поэтому естественно обеспечивает немного отличающийся контекст, в котором будет жить Ваше аудиоустройство. Это может сделать стоящим полностью протестировать Ваши плагины через различные приложения для обеспечения правильного функционирования. Прежде, чем повернуться к Логическим приложениям Studio, хотя, мы рекомендуем протестировать Ваше аудиоустройство с AU Lab. Разработанный как ссылочный хост для разработки аудиоустройства, ее поддержки версии Leopard большинство функций аудиоустройства описано в этом документе.

Используя auval

Для обеспечения правильного функционирования каждого аудиоустройства в определенной пользовательской системе Логические приложения Studio полагаются auval инструмент командной строки, предоставленный в Mac OS X, посмотрите Техническое примечание TN2204, 'Проверка аудиоустройства Используя auval Инструмент' для получения дополнительной информации об этом инструменте.

Каждое аудиоустройство, установленное или обновленное, будет проверено, и об отказах сообщат пользователю.

Начиная с Mac OS X 10.4, auval поддержки kAudioUnitErr_Unauthorized ошибка. При разработке защищенного от копирования аудиоустройства Вы используете эту ошибку отличить сбой авторизации от ошибки проверки. Вызывающая сторона может тогда вывести на экран надлежащее сообщение об ошибке и допускать повторную попытку проверки после авторизации этой копии плагина.

Кэширование свойства

Логика, звуковая дорожка Pro 2, MainStage и определенная информация кэша WaveBurner о плагинах аудиоустройства, установленных в системе для ускорения процесса запуска. Это включает:

При изменении кода, не увеличивая номер версии аудиоустройства необходимо будет повторно отсканировать аудиоустройство вручную в менеджере по Аудиоустройству для подавания заявок, распознают изменения. Также можно обнулить номер версии аудиоустройства для принуждения автоматического пересканирования в каждом запуске приложения. Вы можете использовать этот метод при разработке аудиоустройства, но должны установить надлежащий номер версии в сборке развертывания.

Представления аудиоустройства

Все четыре хост-приложения аудиоустройства в Логическом Studio используют Какао для реализации их интерфейса. Это означает, что пользовательские Представления Аудиоустройства, реализованные в Какао, непосредственно встраиваются в окно узла, тогда как пользовательские Представления Аудиоустройства, реализованные в Углероде, выведены на экран с помощью необрамленных окон наложения, подобных методу, описанному в Техническом примечании TN2213, 'Аудиоустройства: Встраивание Представления Углерода в Окне Какао'.

Непосредственно встроенные представления обеспечивают лучший пользовательский опыт через лучшую интеграцию UI. Поэтому Какао является рекомендуемой технологией.

Для еще лучшей интеграции пользовательских интерфейсов пользовательские Представления Аудиоустройства должны воздержаться от использования окон наложения и от открытия листов или вспомогательных окон кроме для просмотра файла. Все элементы пользовательского интерфейса должны быть представлены в корневом Представлении Аудиоустройства путем разметки его содержания динамично и изменения размеров по мере необходимости. Окно узла слушает уведомления изменения размера и адаптируется автоматически.

Объемный звук

Логический Studio предоставляет выделенную поддержку для объемного звука. Если обработка аудиоданных, реализованная Вашим аудиоустройством, предоставляет себя к окружению специфичной реализации, необходимо изучать если это в будущем для улучшения полного пользовательского опыта.

Если Ваша обработка аудиоданных не использует spatialization информацию или если это обрабатывает все каналы независимо, мы рекомендуем что Вы:

  1. Поддерживайте любое количество каналов, при условии, что количество каналов является тем же для ввода и вывода

  2. Не поддерживайте расположение канала (kAudioUnitProperty_AudioChannelLayout) свойство, потому что аудиоустройство не делает никакой семантической обработки на основе определения каналов

Поверхности внешнего управления

Логика и функция MainStage поддерживают для поверхностей внешнего управления, таких как Мэки Universal Pro и Управление/Соединение MC Euphonix и т.д.

MainStage допускает разработку специфичных для пользователя представлений для плагинов с ограниченным количеством параметров для легкого доступа на этапе. Обе функции зависят от параметров, представляемых узлу через kAudioUnitProperty_ParameterList свойство, таким образом, необходимо решить тщательно который параметры экспортировать.

При описании экспортируемых параметров через kAudioUnitProperty_ParameterInfo, используйте поле флагов AudioUnitParameterInfo структура для предоставления дополнительной информации о параметрах, такой как kAudioUnitParameterFlag_NonRealTime препятствовать тому, чтобы параметр был автоматизирован, или kAudioUnitParameterFlag_ExpertMode различать более важные параметры и тех, которые позволяют форумам простую подстройку опытным пользователем. Также используйте kAudioUnitParameterFlag_HasClump вместе с kAudioUnitProperty_ParameterClumpName сгруппировать Ваши параметры в значимые разделы.

Если параметр устанавливает, другой важный вопрос здесь должен удостовериться это kAudioUnitParameterFlag_ValuesHaveStrings, мало того, что необходимо поддерживать kAudioUnitProperty_ParameterStringFromValue (раньше известный как kAudioUnitProperty_ParameterValueName) для того параметра, но также и реализации обратная трансформация через kAudioUnitProperty_ParameterValueFromString позволить хост-приложению переводить вводимый пользователем текст в значение параметра.

Много аудиоустройств все еще изо всех сил пытаются отправить надлежащее уведомление каждый раз, когда параметр изменяется вследствие взаимодействия с пользователем в его пользовательском UI. См. TN2104 Технического примечания, 'Разработка Аудиоустройства - Обрабатывающий События Аудиоустройства, чтобы изучить, когда и как уведомления изменения должны быть отправлены согласно спецификациям AU.

Отказ отправить надлежащие уведомления заставит систему автоматизации не работать должным образом (особенно при использовании сенсорного режима для редактирования существующей автоматизации), и это может также повредить кнопку «Сравнить» настроек в Логике, позволяющей сравнивать измененную установку с ее исходным состоянием.

Ссылка свойства аудиоустройства логического Studio

Для Вашей ссылки вот список всех свойств, используемых Логическими приложениями Studio. Проверьте поддержку этих свойств как подходящих для продукта.

Ресурсы



История версии документа


ДатаПримечания
30.09.2009

Обновленное обсуждение Представлений Аудиоустройства

23.04.2009

Новый документ, которые, как предоставить лучшему пользователю, испытывают с Вашим аудиоустройством в Логическом Studio