pulseaudio :Воспроизведение звука на нескольких компьютерах одновременно по сети

Предостережение :su в Linux может быть разным во всех системах. Как обычно, man suдолжен дать вам ответы о ваших опциях и версии.

Условия для распространения среды:

  1. Переменная экспортируется командойexport ENVVARIABLE
  2. su сказано сохранить среду, что здесь (Debian 9 )можно сделать с помощью опций -m, -p, --сохранить -environment.

Здесь это работает:

su -m - user -c env 2>/dev/null | grep 'ENVVARIABLE=' | awk -F= '{print $2}'
0
21.08.2020, 22:21
1 ответ

Включить сетевой выход

На обеих машинах установите pulseaudio-zeroconf.

На исходном компьютере отредактируйте /etc/pulse/default.pa, указав

load-module module-native-protocol-tcp
load-module module-zeroconf-discover

На целевом компьютере отредактируйте /etc/pulse/default.pa, указав

load-module module-native-protocol-tcp
load-module module-zeroconf-publish

Скопируйте $HOME/.config/pulse/cookieс одного компьютера на другой, чтобы они оба имели одинаковое содержимое.

Перезапустить pulseaudio на обеих машинах

systemctl --user restart pulseaudio.service

На исходном компьютере запустите

pacmd list-sinks

Вы должны увидеть несколько приемников, имя которых начинается с tunnel.{destination_machine_hostname}.{remote_sink_name}. Воспроизведение звука на них должно воспроизводиться на другом компьютере.

Включить комбинированный выход

Из только что созданного списка приемника выберите локальный приемник и удаленный приемник, на который вы хотите воспроизвести звук. Обратите внимание наname(внутри угловых скобок ).

На исходном компьютере запустите

pactl load-module module-combine-sink sink_name=combined slaves={local_sink_name},tunnel.{destination_machine_hostname}.{remote_sink_name}

(Вы можете отредактировать это в default.paбез pactlдля автоматического создания комбинированного приемника)

Воспроизведение звука на этот комбинированный приемник теперь должно воспроизводиться с выбранных устройств на обеих машинах.

3
18.03.2021, 23:11

Теги

Похожие вопросы