Технические вопросы и ответы QA1811

Аудио Сервер PlugIn - Ключ AudioServerPlugIn_MachServices plist

Q: Как мой плагин пространства пользователя говорит с другими процессами?

A: AudioServerPlugIn работает в ограниченной среде. Прежде всего AudioServerPlugIn может не выполнить вызовы клиенту HAL API в CoreAudio.framework. Это приведет к неопределенному (но обычно плохо) поведение.

Далее, хост-процесс поигрался в песочнице. Также, AudioServerPlugIn может только считать файлы в своем пакете в дополнение к системным библиотекам и платформам. Это не может документы пользователя доступа или писать в любые расположения файловой системы кроме кэша системы и временных каталогов, как получено через Apple API. Узел обеспечивает средние значения для плагина, чтобы сохранить и получить данные от персистентного хранения.

AudioServerPlugIn может связаться с другими процессами в системе. Однако плагин должен перечислить имя служб Маха, к которым получат доступ в сменном пакете info.plist в названном ключе»AudioServerPlugIn_MachServices«. Значение этого ключа является массивом имен служб Маха, к которым нужно получить доступ.

Рисунок 1  использование AudioServerPlugIn_MachServices.
<key>AudioServerPlugIn_MachServices</key>
<array>
 <string>com.yourcompanynamehere.audio.HypotheticalAudioDriverXPCService</string>
</array>

Посмотрите AudioServerPlugIn.h заголовочный файл для получения дальнейшей информации относительно Аудио плагинов Сервера.

Пример кода

Примеры драйвера пространства пользователя Core Audio



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


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

Первая версия

 

Новый документ, обсуждающий использование ключа AudioServerPlugIn_MachServices, чтобы говорить с другими процессами.