2010-10-18

PulseAudio の LAN 設定

PulseAudio を使って、デスクトップ機の音声をLANからノート機に転送することができたメモ。これでデスクトップ機にためこんである音楽を簡単にノート機でも聞ける。


まず聞く側の設定。 module-native-protocol-tcp を読み込んで、接続を許可するIPを指定しておく。デフォルトの設定を変更したり、コマンドからモジュールを読み込んだりとかでも良いと思うけど、私は ~/.pulse/tcp.pa とか適当にファイルを作ってそこから読むようにする。

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

でファイルを読み込んで実行。

pulseaudio -F ~/.pulse/tcp.pa -D

Windowsノートでも聞けるように設定。WindowsではまあPulseAudioはふつう使わないので、デフォルトの設定を変えちゃう。バイナリと同じところに default.pa というファイルを作って以下を記述。

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

こっちは単に実行するだけでOK。

pulseaudio.exe

Vistaではファイアウォールのポップアップが出てきたので許可。

vista uac

次は音楽を飛ばす側の設定。コンソールから設定したかったので調べてみたら、 ~/.pulse/client.conf に default-server を書くだけで良いようだ。

default-server=192.168.x.x

で起動。

pulseaudio -D

GUIの場合は padechooser から指定できる。

padechooser menu screen shot

アイコンを右クリックして、 Default Server から Other を選択。出てきたダイアログに転送先IPを指定する。

padechooser dialog screen shot

あとは音楽を再生して、転送先のPCから聞こえれば成功。まあ音楽に限らずシステム音とかすべての音声が転送されるわけだが。


しかし、Windowsノートでは聞こえたがUbuntuノートでは聞こえない。ファイアウォールだっけなんだっけ?と悩んでいたら、hostsで制限がかかってたのだった。 /etc/hosts.allow にPulseのポート 4713 を追加。

4713: 192.168.

これで聞こえるようになった。

0 件のコメント: