esd 経由で別のPCで音楽を聞いて見る

うちにはGentoo機が一台リビングのテレビにつながっていて、キャプチャーしたテレビ番組とかをみれるようにしてある。リビングなのでキーボー ドとかマウスとか無しで、操作はssh経由でやっているのだが、mp3などを聞くのにいちいちssh経由でmpg123などを起動するのが若干面倒。

そこで、別の部屋にあるメイン機(クライアント)から直接リビング機(サーバー)に音が出力できると多少楽になると思い、色々探した結果、簡単にesd ( Enligtenment Sound Daemon ) を使って出来ることを発見したのでメモしておく。

サーバー側:

esdを提供しているebuildはesound、さらにはesdというUSE FLAGもあるので設定しておく。

# emerge esound
次に/etc/esd/esd.confを編集する

-spawn_options=-terminate -nobeeps -as 2

+spawn_options=-d default -nobeeps -as 2 -tcp

-terminate があるとクライアントが終了するとesdごと終了するのを防ぐため。

-tcp をつけるのはtcp経由でリモートから演奏できるようにするため。

-d はalsaのデフォルトのデバイスを指定している。

デーモンの起動

# /etc/init.d/esound start

クライアント側:

次 にクライアント側から音楽でもならしてみる。esdのUSE FLAG を設定していれば、mpg123や、beep-media-player、xmmsでも大丈夫なはず。 esdをリモートに飛ばす設定はクライアントPCの音声全てをリモートに飛ばす方法と、環境変数を使ってアプリ単位で飛ばす方法がある。今回は普段はロー カルのesdに音声を出力、サーバーでたまに音楽を聞きたいだけなので、環境変数でやってみる。

$ ESPEAKER=server.ip mpg123-esd hoge.mp3

ESPEAKER環境変数をサーバーのIP:ポート(デフォルト16001)にしてあげて、 mpg123のesd版である、mpg123-esdをつかって何かを再生してみると…

で き た ! !

ちょっとは便利になったかな?

ちなみにサーバー側にusbのリモコンを繋げてごにょごにょと思って、ハード自体は購入ずみなんだけど、まだ試していない。やる機会があれば、レポートします。

コメント

人気の投稿