Я пытаюсь настроить forked-daapd
на своем компьютере, и все идет хорошо, за исключением того, что в файле конфигурации я не могу установить новое значение для строки, соответствующей звуковой карте. Это код по умолчанию в файле конфигурации:
#card = "default"
Я хочу использовать звуковую карту под названием «DG2», которая является звуковой картой № 1 и имеет первое устройство, которое ALSA
распознает как «нет». 0. Итак, я изменяю строку следующим образом:
card = "hw:DG2,0"
Я перезагружаю службу daapd, и в следующий раз, когда я воспроизводю файл через iTune Remote, я получаю сообщение в файле журнала моего сервера, говорящее, что это Воспроизведите файл, потому что устройство занято. Любое изменение в имени устройства возвращает другую ошибку, говоря, что устройство не существует. Я уверен, что никто другой не использует это внешнее устройство, и я не понимаю, почему я получаю это сообщение. Я тоже пытался plughw
, с тем же результатом.
При выполнении lsof
я получаю следующий результат:
mah@HomeServer:~$ lsof /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1579 mah 20u CHR 116,3 0t0 9083 /dev/snd/controlC1
pulseaudi 1579 mah 26u CHR 116,10 0t0 9542 /dev/snd/controlC0
pulseaudi 1579 mah 32u CHR 116,10 0t0 9542 /dev/snd/controlC0
Позвольте мне добавить одну последнюю деталь. Эта звуковая карта представляет собой USB-адаптер SPDIF-out с очень ограниченными функциями (например, без регулировки громкости). Alsamixer
говорит, что у него есть только канал PCM (это будет номер устройства 0).
Устройство default
автоматически использует плагин, который может смешивать несколько потоков вместе.
Попробуйте использовать default:DG2
(но это не будет работать, если другая программа также не пройдет default
).
Запустите lsof /dev/snd/*
, чтобы увидеть, какие программы обращаются к звуковым устройствам.