私の自宅のデスクトップ機はオーディオインタフェースにオンボードのAC97を使用しているせいか、どうもノイズが多くヘッドフォンで聴く上では少々辛いものがあります。一方、iBookの方はスピーカは小さいのですが、ノイズに関してはかなり優秀でヘッドフォンでもほぼ無音になります。以前はiBookの方にiTunesのライブラリを入れていたのですが、HDDがクラッシュして以来それも怖くなって、今はデスクトップPCの方にメインのライブラリを入れているので、何とかこれをiBookでも聴けるようにならないか、と思いちょっと調べてみたところ、ちゃんとそのためのdaapdというソフトウェアが開発されていることがわかったので早速インストールしてみました。

daapdというのはDAAP(Digital Audio Access Protocol)のデーモンで、これとBonjour(旧Rendezvous)とを組み合わせることで、MacやWindowsのiTunesが自動的にライブラリを認識して再生できるようになるということです。ちなみに、DAAP自体はAppleが開発したプロトコルで非公開となっているのですが、例によって有志による解析が進んでいて、オープンソースの実装でも一通りのことができるようになっているようです。mt-daapdという実装もあるようですが、daapdの方をインストールした後でその存在を知ったので、どちらがどうなのかはよく知りません。

FreeBSDにはportsといわれる便利なシステムがあって、FreeBSD向けのコンパイル時の設定やパッチを当ててインストールする、という一連の処理を、しかも依存関係を辿って必要なパッケージについてmake一発で自動的にやってくれるようになっています。自分がインストールしたいと思ったソフトウェアがこのportsとして提供されていると圧倒的に簡単にインストールできてしまうのですが、私が探していたdaapdもちゃんとports化されていました。そうであれば作業としては簡単で、portsでaudio/daapdをインストールしたあと、こちらの「LinuxをiTunesのサーバにする」を参考に設定ファイル/usr/local/etc/daapd.confを書き、/etc/rc.conf

mdnsresponder_enable="YES"
daapd_enable="YES"

を追加してリブートすれば動き出します。

というわけで使ってみましたが、ID3タグがUTF-8でないものは文字化けしてしまうという問題はあるものの、それを除けば全く問題なく曲を聴くことができます。iTunesの仕様上、スマートプレイリストなどは使えないというのは残念なところですが、聴きたい曲を自分で探して聴くとか、完全にランダムでいい場合には何ら支障なく使えます。とはいえ、iTunes以前から持っているMP3ファイルなどはID3タグがShift JISで入っていたりするので、それらが化けてしまって何の曲だかさっぱり分からないのはちょっと困りものです。簡単にUTF-8に変換する方法があればいいのですが…daapdなどにパッチをあててしまうという手もあるのかもしれませんが、portsを使えなくなってしまうのは辛いのでやめておきます(と強がってみる)。