LINUX.ORG.RU

Отследить запуск удалённого Pulseaudio сервера.

 


1

2

Есть сервер под именем dirac, на нём pulseaudio в качестве звукового сервера локальной сети (/etc/pulse/default.pa):

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/16

На клиенте (/etc/pulse/default.pa):

load-module module-tunnel-sink-new sink_name=edifier   server=dirac
update-sink-proplist edifier    device.description="Edifier 2800"

Запускаю pulseaudio на dirac, затем запускаю pulseaudio на клиенте, всё хорошо: в kmix появляется возможность выбирать место воспроизведения звука, тыц.

Проблема в том, что если pulseaudio на сервере (dirac) запускается после того, как запущена pulseaudio на клиенте, то пункта воспроизвдениия на сервере («Edifier 2800») не появляется.

Есть ли красивый способ отследить появление pulseaudio на dirac и создать при этом тунель?

В голову приходят мысли со словами bash, cron и т.д., но это же костылище. Проще вручную делать pulseaudio -k после старта dirac'а, правда уже запущенный на клиенте звук будет отваливаться.

★★★★★

На сервере

load-module module-zeroconf-publish
На клиенте
load-module module-zeroconf-discover

Правда, поднимающийся тунель имеет некрасивое имя.

Что с ним делать - без понятия. По хорошему на сервере где-то надо дать имя этому безобразию.

P.S. Оставлять нужно только второй способ определения тунеля, иначе получается каша.

Jurik_Phys ★★★★★
() автор топика
Последнее исправление: Jurik_Phys (всего исправлений: 2)
Ответ на: комментарий от Jurik_Phys

По хорошему на сервере где-то надо дать имя этому безобразию.

На сервере

update-sink-proplist alsa_output.pci-0000_01_01.0.iec958-stereo device.description="Edifire R2800"
где alsa_output.pci-0000_01_01.0.iec958-stereo device.description определяется из вывода команды pactl list

В итоге всё красиво.

Jurik_Phys ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.