nokの雑記

技術的な内容にしようと思ったけど無理でした。

PINE64を無線LANに接続してAirPlayサーバにする

Raspberry PiがAirPlayサーバになるんだからPINE64も当然(?)AirPlayサーバになるのだ。

こんな感じでくだらん遊びをしていたのですが、たまにはちょっと使えそうな内容でも……。 nok0714.hatenablog.com

// 実は自分がPINE64を入手した時は提供されているdebian側にバグ(か設定がうまくいっていないところ)があり、音が出ませんでした。どっかのビルドでちゃんと音が出るようになったらしいので、もし新しくOSを焼くときは最新のビルドをダウンロードしましょうね。

必要なもの

  • PINE64が動作する環境(手元の環境はMem1GBモデル/microSD32GB/debian)
  • 音を出せるデバイス(手元の環境はHDMI音声アウトプット)

以降の設定では、ターミナル(CLI)を想定しています。debianGUIで使っている場合はAlt+F1→System Tools→MATE Terminalで起動できると思います。

ネットワークの設定AirPlayサーバの構築

PINE64のネットワークの設定

 なんとなくsshから接続している人が多い気がするので必要ないかもしれませんが。

有線LANの場合

 ケーブルを挿す。おしまい。ターミナルからifconfigとかpingとかして疎通確認できれば良いと思います。

無線LANの場合

 無線LANを使う場合、有線LANよりちょっと面倒になると思います。おそらくほとんどの方がWPA2-personalの暗号化を施していると思うので、キーを設定しなければなりません。こちらも参考サイトさまさまが。

takuya-1st.hatenablog.jp

こちらのサイトの"無線LANパスワードを設定する方法"の通りに設定していきます。
SSID: hogehoge
PASS: fugafuga
無線LANに接続する場合、以下のようにターミナルに打ち込みます。

sudo sh -c "sudo wpa_passphrase hogehoge fugafuga" >> /etc/wpa_supplicant/wpa_supplicant.conf

ちなみにこのままだと/etc/wpa_supplicant/wpa_supplicant.confにパスワードが平文で書かれるので削除しておくとよいと思います。

進めていきます。sudo -e /etc/network/interfacesを打ち込むと、なにやらファイルが開くと思います(Ctrl+Cで閉じます)。自分の環境では以下の設定になっています。たぶん同じにして大丈夫……。

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

編集が終わったらCtrl+Cで閉じます。閉じる時にファイルが変更されていると保存するか聞かれるのでy/n/cで答えてあげましょう。
実際に繋がるかはsudo ifdown wlan0からのsudo ifup wlan0でよいそうです。

AirPlayサーバ化

dounokouno.com

↑こちらの記事の"AirPlayの設定"の通りに行いました。環境にdebianを選択した理由にはなるたけRaspberry Piのraspbianと近いOSがいいからという理由があるのですが、正直Ubuntu選んでも同じだと思います。

まずは必要なもののインストール

sudo apt-get install -y libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl

インストールが終わったらAirPlayサーバ機能の動作に必要なPerl関連の何かを導入します(gitがcommand not foundになるときはsudo apt-get install gitで)。

まずはファイルの取得。

git clone https://github.com/njh/perl-net-sdp.git

移動してビルド。

cd perl-net-sdp
perl Build.PL
sudo ./Build

最初にWARNINGが出ましたが無視して大丈夫でした。ビルドが終わったらcdでホームに移動して本番へ。

同じく最初はファイルの取得。

git clone https://github.com/hendrikw82/shairport.git

ビルド。

cd shairport
make && sudo make install

終わったら、shairport.pl -a AirPINEを実行してみると……。

ばーん!!ちゃんとHDMIから音出てます。3.5mmステレオジャックから出るかは今後検証します。