« "Steve Jobs" update | トップページ | HDL2-G2.0(NAS)へのforked-daapdインストール(とりあえず断念) »

2011.12.04

HDL2-G2.0(NAS)のFireFly(mt-daapd)を更新

HDL2-G2.0にはiTunesサーバー機能がありますが、普段あまり使用していない機能ではあるのですが、iTunes 10.5以降では共有ライブラリの表示もまともにできない状況に陥ったため、今回iTunesサーバーを更新する事にしました。
iTunesサーバーソフトである、FireFly(mt-daapd)には、幸い、iTunes 10.5用のパッチが提供されており、これを利用します。

FireFlyのソースは、mt-daapd-svn-1696.tar.gzを使用しました。
iTunes 10.5用のパッチは、iTunes 10.5 does not load shared library files : Apple Support Communitiesから頂いてきた21_itunes10.5.dpatchを使用します。
手順は、iTunes10.5とmt-daapd(FireFly)の問題が解決した!:Debian GNU/Linux 3.1 on PowerMac G4が詳しいです。

ただし、HDL2-G2.0の環境ですので、それなりの手順が必要になります。
以下、
HDL2-G2.0にnetatalk 2.2.0をインストール(その1)
HDL2-G2.0にnetatalk 2.2.0をインストール(その2)
HDL2-G2.0にnetatalk 2.2.0をインストール(その3)
HDL2-G2.0にnetatalk 2.2.0をインストール(その4)
まで、環境が整っている事を前提とします。

apt-get install patch
apt-get install g++
apt-get install id3ed
apt-get install libid3tag0-dev
apt-get install sqlite3
apt-get install libsqlite3-dev

次に、libiconv-1.14.tar.gzを入手してmakeします。

tar xfvz libiconv-1.14.tar.gz
cd libiconv-1.14
./configure
make
make install

そうしたら、いよいよmt-daapdをインストール。

tar xfvz mt-daapd-svn-1696.tar.gz
cd mt-daapd-svn-1696
cd src/plugins
patch < /mnt/sataraid1/share/tonop/work/201112/21_itunes10.5.dpatch (patchの場所を指定してあげて下さい)
export LDFLAGS=-liconv(不要かもしれない)
export LD_LIBRARY_PATH=/usr/local/lib(環境によっては不要かもしれない)
cd ../..
./configure --enable-sqlite3 --enable-iconv
make
/etc/init.d/mt-daapd stop
make install

あとは、/etc/mt-daapd配下のmt-daapd.confのバックアップをとった後に、mt-dappd-svn-1696/contrib配下のmt-daapd.confを/etc/mt-daapd/にコピーして環境変数を合わせます。
mt-daapd.confの主な設定は以下のとおり。


web_root = /usr/local/share/mt-daapd/admin-root
port = 3689
admin_pw = (適宜設定)
db_type = sqlite3
db_parms = /usr/local/var/cache/mt-daapd
mp3_dir = /mnt/daap
servername = LANDISK-A0CC65
runas = nobody
extensions = .mp3,.m4a,.m4p
ssc_codectypes = ogg,flac,alac
ssc_prog = /usr/local/bin/mt-daapd-ssc.sh
scan_type = 2
plugin_dir = /usr/local/lib/mt-daapd/plugins
process_playlists = 1
process_itunes = 1
process_m3u = 1

chown nobody:nobody mt-daapd.confを忘れずに。

さらに、/etc/init.d/mt-daapdをバックアップをとった後に編集します。
変更点は、以下のとおり。

#DAEMON=/usr/sbin/mt-daapd
DAEMON=/usr/local/sbin/mt-daapd

その後、
/etc/init.d/mt-daapd start
で起動。成功すれば、iTunesで共有が機能するでしょう。

なお、上の方法では、FireFlyの日本語化パッチは考慮していません。
文字化けが生じた場合には、今のiTunesはUnicode対応されていますので、特段の事情がなければ、ID3TAGを変換する方が良いのではないかと思います。
やり方はThecus N0204 miniNASのiTunesサーバーが文字化けする対処法:Digitalyze PCが詳しいです(情報提供ありがとうございます)。
自分の場合、長期間の使用の過程でライブラリに重複登録が生じていましたので、これを機にライブラリの再作成も行いました。

それにしても、FireFlyは最近更新が止まっているようなので、今回はパッチが有志から提供されて対応ができたということで、良かったとなったのですが、今後、メンテナンスがどうなっていくのか心配ではあります。対応が開発者任せという、OpenSource開発の不安定な部分が出てしまった事象といえるかもしれません。もっとも、メーカー提供でも、対応してくれない時はしてくれないんですが。
(もっとも、OpenSourceなのでパッチ対応が可能だったという言い方もできるんですが…難しい問題です)

(2011.12.04追記)
調べてみたら、FireFlyを書き直したforked-daapdなる実装があるようです。
新しいフォーマットにも対応しているみたいです。いずれ使用するかもしれないので、とりあえず、メモ。

|

« "Steve Jobs" update | トップページ | HDL2-G2.0(NAS)へのforked-daapdインストール(とりあえず断念) »

NAS」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1024423/43245375

この記事へのトラックバック一覧です: HDL2-G2.0(NAS)のFireFly(mt-daapd)を更新:

« "Steve Jobs" update | トップページ | HDL2-G2.0(NAS)へのforked-daapdインストール(とりあえず断念) »