あおしまの日記

あおしまさんの日記らしいです。個人的に興味がある事を時々書きます。スマートウォッチPebble日本語パックを作成、公開しています。

Zeroconf+DAAP鯖

Zeroconf+DAAP鯖を作ってみた。
皆さん挑戦されているから情報も豊富で、何の障害も無い。実はこのためだけに素箱を買おうかとも思っていたのだが、うまくいったのでやめることにした。

設置したのはhowl+mt-daapdの組み合わせ。mt-daapdは、mp3のid3tagの処理にid3tagのライブラリが必要のようで、予めlibid3tagの導入も必要である。

  • howl-1.0.0.tar.gz
  • libid3tag-0.15.1b.tar.gz
  • mt-daapd-0.2.1.1.tar.gz

bad know-how 1

mt-daapdをredhat以外で動かす場合には、スタートアップスクリプトがfunctionsを使う事を前提にしているため、書き直す必要がある。

http://hatotech.org/kumatch/archives/000341.html

を参考に、直接に起動させて/var/run/以下あたりにpidファイルでも作るよう
にしてみた。

bad know-how 2

また、multicastがわからないといけないので、ifconfig eth0 multicstする。これは危ないかもしれない。内側オンリーなど、割り切った使い方かもしれない。

おかしい

/www/cgi-bin/mellib.plを見ていたら、

$execIFCFG     = "/bin/ifconfig";
$execIFCFGETH0 = "$execIFCFG"." eth0 allmulti multicast";

という行を見つけた。既にmulticastの指定が入っている。ではなぜ改めて設定するとDAAP鯖が見つかるようになるのか?

ところで、なんでうまく動いているのかが未だによくわからない。知らない事が多くて気持ちが悪い。howlについてもう少し追いかけてみようと思う。あとはDAAPももしビデオストリームなどに対応していればそれはそれでうれしいので、もう少しドキュメントを読んでみようと思う。

だからまだまだ道半ば。

おとなり効果

日記を保存したらkinnekoさんの所がおとなり判定されたので見に行った。
そこで、
http://ouchi.nahi.to/~kaidempa/mt-daapd/
を見つけた。ありがたや。パッチは即座にいただく。しかし上にあんな事を書いているので複雑な気分。kinnekoさんごめんなさいごめんなさい。

うーん、やっぱ素箱買わないといけないかも?

6/27のパッチを試す

780行目あたりでエラー。

gcc -DHAVE_CONFIG_H -I. -I. -I..   -g -DHOST='"powerpc-unknown-linux-gnu"' -DNOT
_HAVE_SA_LEN  -g -O2 -c mp3-scanner.c
mp3-scanner.c: In function `do_convert':
mp3-scanner.c:780: parse error before `const'
mp3-scanner.c:781: `rc' undeclared (first use in this function)
mp3-scanner.c:781: (Each undeclared identifier is reported only once
mp3-scanner.c:781: for each function it appears in.)
  const size_t rc = iconv(cd, &inbuf, &inbytesleft, &outbuf, &outbytesleft);

が初出だといわれる。その前のif文あたりもおかしそうだが、私にはよくわからないので逃げてみた。6/21の方を当ててとりあえずしのぐ。/var/cache/mt-daapd/songs.gdbを消してmt-daapdを起動するとindexが再生成される。これでおそらくSJISの文字列が入るのだろう。たしかにSJISのタグ情報が出て来た。ありがたい。

便利な世の中

何でもコンパイルは通るしMakefileにはご丁寧にuninstallなんてオプションまで標準装備されている。こんな至れり尽くせりの環境で数個のサービスを入れる程度ならパッケージ管理システムなんて大仰な仕掛けは最早要らないのではないか?と思った。
それにしても、便利になったということは、うちらの勘や能力はどんどん減退していくということ。せつない世の中になってまいりました。