C05 カバーアートの表示

室長:音楽の再生は出来るようになったので今度はカバーアート(アルバムアート)、ようするにCDジャケットを表示させてみよう。

助手:とりあえずMPDクライアントに中華パッドにMPDroidをインストールしました。

室長:MPDroidでカバーアートを表示するには2つの方法がある。一つはインターネット経由でlast.fmのデータを表示する。これにはlast.fmにユーザー登録している必要がある。もう一つは音楽データのフォルダ内にfolder.jpgという名前で画像ファイルを保存しておいて、このファイルを表示するようにするものだ。ここでは2番めの方法でやっていこう。このためにはHTTPサーバ(Webサーバ)を動かす必要があるので音楽再生に関係ない余計なプロセスが増えることになるが気にしない事にする。

助手:HTTPサーバーと言えばApacheが有名ですね。軽量ならばlighttpdがよく使われているようです。どちらもapt-getで簡単にインストールできますね。

室長:どちらも今回の用途では無用に高機能だな。ここはシンプルな静的ページ専用のdarkhttpを使ってみよう。ArchLinuxではpacamで簡単にインストール出来るがUbuntuにはパッケージがないので公式サイトからダウンロードしてコンパイルする必要がある。

助手:lighttpdでいいじゃないですか?どうしていつもあまり人のやらない方法ばかりするのですか?

室長:はははっ! もともとオーディオはマイナーな趣味な上にマルチアンプシステムなんぞはよっぽど物好きしかしない。人に合わせる必要もないだろう。とにかく開発システムを用意する必要がある。べつに音楽再生専用PCでしなくてもよいぞ。別のパソコンでコンパイルして出来上がった実行ファイルだけ持っていけば良い。

まずはUbuntuをインストールしたPCで

sudo apt-get install build-essential

あとはdarkhttpdの公式サイトからソースをダウンロードする。現在の最新バージョンはdarkhttpd-1.8.tar.bz2のようだな。これを展開してそのディレクトリに入ってmake一発だ。あっという間に実行ファイルのdarkhttpdが出来上がる。これを再生専用PCに持っていってパスの通った適当なディレクトリに入れる。そして/etc/rc.localに

darkhttpd /var/lib/mpd/music

と追記して再起動すればよい。

助手:なるほど。MPDroidでジャケットが表示できました。…あれ、日本語ディレクトリだと表示されませんね。

室長:これはMPDroid側の問題だな。URLエンコードなしでリクエストを出すのでwebサーバーがデータを送れないのだ。DroidMPDならば日本語フォルダ内のカバーアートも表示できるぞ。

(現在のMPDroidでは日本語ディレクトリ内のカバーアートも問題なく表示できます。2014年5月3日追記)

2013年2月25日

次ページへ

目次へ