GNUMP3d:多様なプラットフォームで使える小型MP3/OGGストリーミング・サーバー

 数千キロも離れたところにいる友人に自分のコンピューターに保存してある歌を聴かせたい。あるいは、自分のコンピューターにある音楽ライブラリーをLAN上のごく限られた人たちにも使ってもらいたい。あなたならどのようにして実現するだろうか。もちろん共有ファイルにすれば可能だが、この仕掛けはいかにも大仰だ。このようなときに便利なのがGNUMP3dなどのストリーミング・サーバーだ。これはインターネット・ラジオよりも役に立つ。離れたところにいる人に自分の音楽ライブラリーから曲を選んで楽しんでもらうことができ、しかもNFSもSSHもSambaも不要だ。

 GNUMP3dはOgg VorbisとMP3ファイルのほか、数種のビデオ形式にも対応した、安定・自己完結・安全を標榜する小型ストリーミング・サーバーだ。Perlで書かれているため、UnixやUnixベースのプラットフォーム(BSD、Linux、Mac OS Xなど)に加え、Windowsでも動作する。テーマによる着せ替えが可能な使いやすいWebベースのインタフェースを持ち、直感的に操作可能。そして、自己完結というとおり、このサーバーには依存性がほとんどない。

 ほとんどのディストリビューションにはGNUMP3dを起動するinitスクリプトが含まれており、システムが起動すればGNUMP3dはrootで自動的に動作する。しかし、システム構成ファイルにアクセスできない、あるいはGNUMP3dをrootで動かしたくない場合は、root以外の一般ユーザーでも動作させることができる。ただし、その場合は構成を変更する必要がある。

 GNUMP3dを一般ユーザーで起動するとデフォルト・ログ・ファイルが使えない旨のエラー・メッセージが表示されるが、これは一般ユーザーには/var/log/gnump3d/access.logへの書き込み権限がないからだ。このエラーを回避する方法は2通りある。一つは、起動する一般ユーザーのホーム・ディレクトリーにシステム構成ファイル(/etc/gnump3d/gnump3d.conf)をコピーし(~/.gnump3drc)、その中のlogfile変数を変更してログの保存場所を変える方法。もう一つは、システム構成ファイルのlogfile変数を直接変更する方法。一般ユーザーで起動したGNUMP3dは、構成ファイルとして、まずホーム・ディレクトリーの.gnump3drcを読み込もうとする。このファイルがないと/etcにあるシステム構成ファイルを読む。したがって、どちらの方法でもログの保存先を変更できるのだ。私は、システム構成ファイルを自分のホーム・ディレクトリーにコピーし、ログを自分のホーム・ディレクトリーにあるファイルに書き出すようにlogfile変数を変更した。

 GNUMP3dの動作に必要な情報はもう一つある。音楽が置かれているフォルダーだ。既定では/var/musicだが、これを自分の音楽フォルダーを指すシンボリック・リンクにすれば音楽フォルダーを変更することができる。あるいは、構成ファイル中のroot変数(既定では/var/musicとなっている)を自分の音楽フォルダーに変更してもよい。

 構成ファイルで設定できることは、ほかにもある。たとえば、安全性だ。安全性が気になる場合は構成ファイルのセキュリティー・セクションにある説明を丹念に読むことをお勧めする。既定ではGNUMP3dはinitスクリプトで起動されるが、より高い安全性を求めるならroot以外のユーザーで動作させるべきだ。構成ファイルを変更すれば、それが可能になる。コメント化されているuser変数を有効にしnobodyなどに変更する。また、ユーザー名とパスワードを使うようにすれば、詮索好きや許容していない人の利用を阻止することができる。

 GNUMP3dは起動時に音楽コレクションの索引を作るが(新規または更新)、コレクションの大きさが15GBを超えるとこの処理時間が長くなる。この時間が気になる場合は、コマンドラインの引数に--fastを付けて起動し、索引化を抑制すればよい。この場合、音楽ファイルを削除すると、GNUMP3dにはその事実がわからないため、削除したファイルを要求されれば再生を試みることになる。しかし、索引化を抑制した場合の問題点はこれだけだ。

 GNUMP3dには簡易なWebサーバーが付属しており、Webブラウザーを介してストリーム可能な音楽を一覧できるようになっている。URLはhttp://localhost:portportは構成ファイルで指定したGNUMP3dのポート。既定は8888)。外部からも、GNUMP3dのホストIPアドレスあるいはホスト名を指定すれば、同様に、音楽を一覧し再生することができる。ファイアウォールが外部のコンピューターからの接続を禁止していなければだが。

 GNUMP3dのWebインタフェースは使いやすい。また、テーマを変更することで着せ替えができる。ほとんどのテーマに検索機能があり、検索ボックスそのものかリンクが付いている。テーマをカスタマイズするのも容易で、HTMLとCSSの知識があれば見栄えのよいテーマをすぐに作ることができる。歌のストリーミング再生ができるほかダウンロードもでき、歌を無作為に並べたプレイリストや音楽ライブラリー中のすべての歌を含むプレイリストも作成可能。音楽を一覧したり、ID3タグで検索したりすることもできる。また、ビットレート、ジャンル、ファイル名、演奏時間などといった歌の情報もわかる。さらには、統計もとっており、一番人気の歌、ディレクトリー、利用者、最近再生されたトラック、利用が最も多いユーザー・エージェント(通常はブラウザーの識別名)、利用が最も多いクライアント(IPアドレス、ホスト名、接続回数による)、その瞬間にどこかのコンピューターで再生中のものなどがわかる。

 ストリーミング再生については、XMMS、VLC、RealPlayer、Amarok、WinAmp、Zinf、iTunesなど、MP3またはOggファイルを再生できるほとんどのプログラムで聴くことができる。M3Uプレイリストにも対応している。また、ストリーミングしないユーザーは音楽をコンピュータにダウンロードすることを選択できる。しかし、私が試用した限りでは、一部のビデオ・ファイルのダウンロードあるいはストリーミング再生ができなかった。GNUMP3dのサイトを調べてみたが、ビデオに関する情報はあまりなかった。

 GNUMP3dは、よく使われているLinuxディストリビューションのリポジトリーで入手できる。構成・設定・配備・操作が容易で安全性の確保も簡単だ。Perlで書かれているためストリーミング・サーバーとして最大級の移植性を持っている。ソースコードは2MB足らずしかないため、組み込みシステムでも使えるだろう。要するに、GNUMP3dを使えば音楽を簡単に分かち合うことができるのだ。

NewsForge.com 原文