Raspberry PiのAirPlay化

Raspberry PiAirPlayデバイスにする為にちょこちょこイジッてはいたけど、本格的に設定を始めました。
141225_10.jpg
Raspberry Pi airplay」で検索すると結構ヒットするから簡単かなって思ったら、幾つか引っかかるとこが^^;

まずはUSB-DACから音を出すとこでつまずき。
USB-DACは無事に認識されたけどAirPlayをエミュレートするshairportをインストトールしてそちらから音を出すのに一苦労。
自作のUSB-DACは1度WindowsのPCに繋いで動作確認はしておきます。
Paspberry Pi本体にあるイヤホンジャックからはshairportで音が出るのも確認。
USB-DACがshairport.plのオプションの「--ao_devicename=<デバイス名>」でうまく認識してくれません。
色々調べると「--ao_deviceid=<番号>」でも指定出来るのが判って、なんとかUSB-DACから音を出せました。

その後は/etc/modprobe.d内にあるalsa-base.confをnanoエディタを使って編集。
「options snd-usb-audio index=-2」と書かれた行を「#」でコメントアウト。
解説してるサイトとかではviエディタを使ってっていうとこが多いですけど、nanoエディタのほうがわたしには使いやすいですね。

最後にdeamon化するとこでつまずきました。
どうやらshairportがバージョンによってちょっと違うとこもあるみたい。
shairportディレクトリー下にある「shaiport.inii.sample」ファイルを/etc/init.d/下に「shairport」っていう名前でコピーしてパーミッションの変更、「shairport」ファイルをnanoで開いてDAEMON_ARGSという項目を「DAEMON_ARGS="-w $PIDFILE -a AirPi01"」って変えてAirPi01が名前にします。
あとユーザーshairportをaudioグループに「sudo useradd -g audio shairport」と入れて追加します。
最後にupdate-rc.dにshairportを「sudo update-rc.d shairport defaults」と入れて登録。

これで再起動させればOK・・・のはずが、iTunesでAirPi01が出てきません(ToT)
sshでアクセスして/etc/init.d/shairportをstartさせると・・・エラー?
エラー内容をみるとshairportが指定場所に無いって。
/shairportディレクトリに移動して「sudo make install」として無事にスクリプトが指定する場所にインストールされたはず。
どうやらshairportをコンパイルする時にmakeだけでmake installしてなかったみたいです^^;
デーモンを起動させてもエラーが出なくなりました。

Raspberry Piを再起動させても無事にAirPi01がiTunesで出てくるようになりました。
これで一安心です。
年末からの懸案事項の一つがこれで終了!

一番参考にさせていただいたサイトはこちら。
Raspberry Piの要点だけ:Raspbian+ShairPortでAirPlay対応にする スマートフォン要点だけブログ

コストを考えるとRaspberry Pi Type Bが購入当時で4100円、ケースが1700円ちょい。
8GBのSDカードは650円ほど。
秋月のUSB-DACは1700円でアクリル板は家にあったのを使ったからお金は掛からずスペーサーに100円程度?
ケーブル類や電源も家にあったのでお金はかかってません。
トータルすると8300円くらい?
AirMac Expressは9400円(税別)だから税込でも1万円ちょい。
Linuxをコマンドラインで色々触ったり調べ物をしたりを考えると、単純にAirPlay端末が欲しいならAirMac Expressを買ったほうが値段差もそんなに無いからオススメ^^;
情報は色々あっても、やっぱりLinuxの知識が少しは無いとキツいかもですしね。