AndroidでStream再生

はじめに

iPhoneでサーバからStream再生できる!って書いてあったのを見て、はや1年半。

比較的多めの音楽データを持ち歩く私は常に容量に飢えていた。だがiPod classiciTunesの使用を強制し、同期は今時有線(USB)、しかもWindows必須という酷い仕様。

そんな状況でAndroidを入手したらやることは1つ!という訳でAndroidでStream再生をしてみる。

サーバ側はUbuntu Server10.10にFirefly(mt-daapd)を載せて。クライアントはAndroid 2.2 Froyo(SIRIUS & Galaxy Tab)で。

サーバ側

まずmt-daapdをapt-getして、
http://localhost:3689/
に繋ぐ(別マシンにsshで繋いでるなら、当然読み替える)

認証を求められるが初期設定では次のようになっている。

User : admin
Pass : mt-daapd

あとはWebで設定すれば良いが、最低限必要なのは、configureのMusic Folderであろうか。あとadminのパスワードも変えた方が良いであろう。

なお、この設定は/etc/mt-daapd.confに書き込まれるので、こちらを直接編集するのも可。

クライアント側

適当に入れればいいと思う。一応DAAP Media PlayerとInfinite Streamがあるが、Infinite Streamはβ版…というにも酷いデキなので、多分DAAP Media Playerじゃないと無理。こちらはこちらで難ありなのだが…。

その他

3G回線で接続するならルータのPort番号3869番をサーバに繋ぐ必要がある。当然ながら、iptablesか何かのファイアウォールを使ってるなら、そこも開けておく必要がある。TDPだけで十分。

やってみた

auのSIRIUSたんでやってみた。まずは3Gだが、起動に時間は掛かるが何とか繋いで再生。起動に1分、再生に数十秒といったところだろうか。正直かなり微妙である。

流石にこれはどうなの、と思い、Wifiでやってみたら、起動も再生も数秒で完了した。どうやら我が家の3G回線が酷いか、3Gのレスポンス辺りがネックになっているのであろうか。

場合によっては、auのホームアンテナの類を検討せねばならないかもしれない。(Wifiと3Gがシームレスになれば良いが、そもそも接続先IPが変わるという辺り、かなり難しいと思われ)

まだまだ実用性は高くないかな…Last.fmに転送できないし…。

追伸

2010/02/16

調べてみたが、Galaxy TabWifi接続のDAAP Media Playerは非常に快適。SIRIUSだと、曲が再生できないことがしばしば。3Gは相変わらず酷く、Wifiは接続直後はアレだが、安定するとマシになる。

更に調べてみると、どうやらDAAP Media Playerは接続の可否を判断するまでの時間が異常に短いらしく、何度か試行すると一発で瞬間で再生できたりするらしい。やはり作り込みが甘い気がする。3G回線での使用は厳しい。

2010/02/17

Twitterの人曰く、Galaxy Tabでは動くが、Xperiaでは動かない、とのこと。

2010/02/17 4:16

旧バージョンでできるとの情報で、下記サイト

http://code.google.com/p/daap-client/downloads/list

から古いバージョンである0.8.5.1を落としたら、SIRIUSたんの3G回線から、全く問題無く再生できた。バージョンUPで改悪ェ…

ちなみに時々音が飛ぶ…というより止まる。個人的には許容範囲だが、人によってはちょっと気になるかも。回線の質にも依るとは思う。

あとバッテリーだが、やはり消費は早いが無茶苦茶という程では無い様子。SIRIUSで推定6〜8時間程度は再生できそう。