L'esempio seguente mostra come creare un tunnel TCP pulseaudio per inoltrare l'audio da un computer alphaall'altro beta. Nel mio caso, entrambi i computer eseguono Ubuntu 14.04.
On alpha(il computer di origine) aggiungere le seguenti righe a /etc/pulse/default.pa:
.fail
load-module module-tunnel-sink sink_name=beta server=tcp:IP_ADDRESS_OF_BETA:4713
.nofail
(Scegli un valore univoco per sink_name. Ho scelto arbitrariamente di utilizzare il valore beta.)
On beta(il computer di destinazione) aggiungere la seguente riga a /etc/pulse/default.pa:
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;LAN_NAME
Quanto sopra LAN_NAMEe IP_ADDRESS_OF_BETAsarà specifico per i tuoi computer e la tua LAN. Ad esempio, potrebbero essere:
LAN_NAME = 192.168.1.0/24
IP_ADDRESS_OF_BETA = 192.168.1.10
Dopo aver apportato le modifiche sopra, riavvia pulseaudio, prima su beta, poi su alpha. L'ordine conta. Riavvio pulseaudio con pulseaudio --kill. Corro pulseaudio --killcome mio pesonal UID(non come root), poiché pulseaudio è già in esecuzione come mio personale UID.
Se tutto ha funzionato correttamente, ora dovresti vedere il tunnel nella Output Devicesscheda di pavucontrolon alpha. Durante la riproduzione di una sorgente audio, dovresti essere in grado di instradare la sorgente al tunnel nella Playbackscheda di pavucontrolon alpha.
Finché il tunnel è intatto, dovresti anche essere in grado di vedere il tunnel nella Playbackscheda di pavucontrolon beta. Se il tunnel scompare, riavviare pulseaudio, prima su beta, poi su alpha. Il tunnel è creato solo quando pulseaudioinizia il alpha.
Nota 1: questo esempio presuppone che pulseaudio sia in esecuzione su entrambi alphae beta. A partire dal 2016, pulseaudio funziona di default su Ubuntu e lo fa da anni.
Nota 2: in questo esempio non viene utilizzata la rete di configurazione Avahi Zero. Avahi può essere abilitato di default su Ubuntu, ma ho disabilitato Avahi sui miei sistemi. Sulla mia LAN beta(il computer di destinazione) ha sempre lo stesso indirizzo IP e conosco quell'indirizzo.
Nota 3: quanto sopra auth-ip-aclconsente l'accesso a qualsiasi dispositivo sulla LAN. Pulseaudio supporta anche altri metodi di autenticazione (più sicuri). Uso auth-ip-aclper semplificare la configurazione.
Maggiori informazioni sono disponibili alle seguenti pagine:
/raspberrypi/8621/how-to-set-up-a-pulseaudio-sink
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Network/# index2h2
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index14h3