
Примечание: я переписал этот вопрос, поскольку отношение сигнал/шум приближалось к 0.
Только что установил pulseaudio-dnla на свою систему Ubuntu 14.04.2 для создания приемников импульсов для моих ROCKI, чтобы я мог транслировать звук на любой из моих ROCKI, выбирая, на какой из ROCKI транслировать, в mpd.
Pulseaudio-dlna отлично работает с моими ROCKI и VLC - я могу выбрать любой из моих 3 ROCKI в качестве аудиоустройства VLCпо имени, а pulsaudio-dlna отправляет аудио на этот ROCKI. Проще не бывает.
Но у меня возникли проблемы с запуском mpd. Я обошел проблему с пользовательским пространством/системным пространством pulseaudio/mpd, запустив mpd в пользовательском пространстве. Я могу заставить его отправлять аудио на одно устройство с помощью padevchooser (как предложил Массимо ниже). Но когда я пытаюсь сделать вывод для каждого ROCKI, используя те же имена приемников, которые работают для VLC:
audio_output {
type "pulse"
name "rockigreen"
}
audio_output {
type "pulse"
name "rockigarage"
}
...из моих ROCKI не доносится ни звука.
решение1
Решение — поле «sink» в разделе audio_output файла .mpdconf. Я ошибочно думал, что mpd использует поле «name» для выбора используемого приемника PulseAudio, поэтому я установил «name» на имя PulseAudio (например, «rockigreen»). На самом деле поле «name» файла mpd — это просто метка, используемая для вывода. Однако если вы поместите «name» PulseAudio в поле «sink» файла .mpdconf, mpd отправит аудио на приемник с этим именем.
(Вы также можете использовать индекс приемника импульсного аудио (0, 1, 2 и т. д.), но индекс приемника может меняться при перезагрузках и отключениях/повторных подключениях устройства, поэтому «имя» импульсного аудио является лучшим выбором.)
Следующий раздел моего файла .mpdconfig позволяет мне выбрать с помощью любого клиентского программного обеспечения mpd любой или все 3 приемника импульсов, используя любую выбранную мной метку:
audio_output {
type "pulse"
name "My A/V Receiver (via pulse)"
sink "alsa_output.pci-0000_01_00.1.hdmi-surround-extra2"
}
audio_output {
type "pulse"
name "The Rocki In My Bedroom"
sink "rockigreen"
}
audio_output {
type "pulse"
name "The Rocki In My Garage"
sink "rockigarage"
}
Я запускаю pulse, pulseaudio-dlna и mpd как текущий пользователь (я). Как Массимо отмечает в своем комментарии, это может не работать или может потребовать сложных изменений прав пользователя/группы, если вы не делаете то же самое.
решение2
Я снова проверил следующее, и оно работает на другом компьютере без каких-либо проблем. Возможно, вы не перезапустили mpd после того, как вставили модуль TCP впульсаудио. Или, возможно, вы не включили 2-й выход.
Измените свой второй выход в вашемmpd.confк:
audio_output {
type "pulse"
name "MPD Pulse Output"
server "localhost"
}
Вставьте модуль TCP впульсаудио:
pactl load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
Перезапустите mpd:
sudo service mpd restart
Установите mpc, чтобы проверить результаты:
sudo apt-get install mpc
mpc outputs
Убедитесь, что включен правильный вывод:
mpc enable <number-of-your-output>
Включи песню,пульсаудиотеперь должен быть в курсе потока mpd, поэтому вы можете переключить его черезpavucontrolили настройки звука Ubuntu для воспроизведения на вашем устройстве.