Подключение и использование звуковых устройств
Статья включает:
В первую очередь необходимо определить подходящий драйвер. Полный перечень доступных драйверов и поддерживаемые ими устройства перечислены на странице драйверы аудио-подсистемы (deva-*).
Менеджер аудио подсистемы может быть запущен при явном указании драйвера (например, deva-ctrl-intel_hda.so):
# io-audio -d intel_hda
После этого следует убедиться в отсутствии ошибок аудио подсистемы в выводе sloginfo и проверить действительно ли доступны менеджер и драйвер:
# pidin -P io-audio mem pid tid name prio STATE code data stack 286747 1 io-audio 10r SIGWAITINFO 148K 144K 24K(516K)* 286747 2 io-audio 50r INTR 148K 144K 4096(132K) 286747 3 io-audio 50r RECEIVE 148K 144K 4096(132K) 286747 4 io-audio 10r RECEIVE 148K 144K 4096(132K) 286747 5 io-audio 10r RECEIVE 148K 144K 4096(132K) 286747 6 io-audio 10r RECEIVE 148K 144K 4096(132K) libc-ksz.so.3 @b0300000 740K 20K deva-ctrl-intel_hda.so @b8200000 20K 8192 <--- !!! deva-mixer-hda.so @b8207000 128K 8192 /dev/mem @40100000 16K
После успешного запуска драйвера следует настроить аудио микшер. Сделать это можно с помощью утилиты mix_ctl или Photon-приложения mixer:
![]() | Недостаточная громкость сигнала (усиление) или отключение звука на соответствующем канале (mute) являются типичными проблемами при проверке работоспособности звука. |
Если текущий HDA-контроллер не поддерживается драйвером deva-ctrl-intel_hda.so, об этом будет сведительствовать наличие ошибок в выводе sloginfo, можно использовать опции vid и did (см. io-audio) для переопределения ID производителя и ID устройства.
Например:
# io-audio -d intel_hda vid=0x8086:0x8086,did=0x2668:0x27D8
![]() | Обратите внимание, что в библиотеке deva-mixer-hda.so предусмотрена поддержка определенных кодеков. В случае, если поддержка кодека может быть не реализована, в системный журнал добавляется сообщение с ошибкой, характеризующее идентификаторы неподдерживаемого кодека. |
![]() | Перед настройкой внешней звуковой карты следует корректно настроить USB стек и соответствующий драйвер. |
Если ранее сервер io-audio не запускался, то можно его запустить сразу с загрузкой драйвера deva-ctrl-usb.so:
# io-audio -d usb
Либо подгрузить в уже запущенный сервер io-audio:
# mount -T io-audio usb
USB звуковые карты (интерфейсы) можно подключать как до старта драйвера, так и после. При этом в /dev/snd
должны появиться новые записи.
Для проверки подключаем микрофон и производим запись нескольких семплов общей длительностью в 10 секунд:
# waverec -t10 1.wav
![]() | Может потребоваться явное указание устройства и его канала с помощью опции -a [card#:]<dev#>. |
К моменту воспроизведения должен быть настроен драйвер и микшер, а также доступны колонки, наушники и т.п. Воспроизвести ранее записанную запись можно следующей командой:
# wave 1.wav
![]() | Как и при записи, может потребоваться явное указание устройства и его канала с помощью опции -a [card#:]<dev#>. Также стоит отметить, что формат воспроизводимого файла должен поддерживаться устройством воспроизведения (число каналов, битрейт, ...). |
Предыдущий раздел: перейти