2017年6月9日金曜日

Raspberry Pi2でネットワークオーディオ

1つ前の記事に出てきたRaspberry Pi2 + Volumioのオーディオ環境。これを
やろうと思ったきっかけは、

「Raspberry Pi2を使って、ネットワークオーディオをつくれないか」

ってことでした。Volumioをいれるだけなのでソフト面は比較的簡単なんですが
問題はハード環境。せっかくのネットワークオーディオ環境なんだから、電源
ケーブルが複数にょろにょろ出ては困る訳ですよ。ってことで、一番大事な
条件は「Rapberry Pi2の電源1本で音がならせること」です。

■準備するもの
 1)Raspberry Pi2(別に3でも問題ないとは思いますが)
 2)microSDカード
 3)Volumioバイナリ
 4)Raspberry Piのケース(必要に応じて)
 5)USBスピーカー
 6)Wi-Fiのクライアント(USBドングル)

 1)~4)についてはやることは普通なので、別の記事なりに譲ります。

■5)USBスピーカー


 LogitechのZ120を選択しました。Amazonの評もよかったのと、USB電源
 以外必要ないこと。またRaspberry Piと組み合わせた例もネットで見かけ
 ました。実際に音を鳴らしてみると音の分離や抜けもよく、1500円とは
 思えない満足感が得られます(^^)。もちろん、高いスピーカーには適わない
 けど、デスクトップ用としては十分です。

■Wi-Fi USBドングル
 Raspberry Piで使える無線LANのUSBドングルって、実は数が限られてます。
 挿入していきなり使えるようになるものってなかなかないのでは…。また
 Volumioに使用されてるディストリビューションで、何が使用可能なのかも
 不明でした。


 で、今回使用したのがこれ、BuffaloのWLI-UTX-AG300です。これは有線LAN
 しかインターフェースのないTVなどで使用するメディアコンバータです。つまり
 有線を無線化するもの。Raspberry Piの有線LANの口と、このドングルの有線
 LANの口の間をLANケーブルでつなぐことで無線化できます。Raspberry Pi
 側でこのドングルを認識する必要がない(USBポートに挿しますが、電源供給
 だけです)ので、問題なく無線でルータにつながります♪

これで、Raspberry Piの電源ケーブル一本で、スピーカーも鳴りますし、ネットにも
無線でつながります。まあ、スピーカーのラインのケーブルとか上記のドングルと
つなぐためのLANケーブルは必要ですが、LANケーブルは15cmとかで十分ですし
うまくケーシングしてやれば持ち運びも可能かな(^^;。

VolumioはAppleのAirPlayにも対応してますし、AndroidからはBubbleUPnPなどで
音が飛ばせます。HDMIでRaspberry Piとディスプレーをつなげばコマンドラインで
システムの操作ができますが、普段はWeb経由でアクセスすればOK。なかなか
便利ですよ!

Windows10でUSBディスクを共有しても、Androidなどからは見えない問題

なんか一年ぶりぐらいの更新のような…(^^;。

で、本題ですが、次のようなことをやりたかった訳です。

■Raspberry Pi 2を活用するのに、Volumioを入れて音楽サーバみたいな
 ことをしたい

 →これは比較的簡単です。ダウンロードしてSDカードに入れるだけ。

■上記のSDカードに音楽を入れてもいいけど、SDの容量は限られてるので
 NASなり、ネットワーク上のPCなりの音楽を読み込んで再生したい。

■ドスパラのスティックPC「DG-STK3」を最近よく使っているので、
 これとドッキングステーション「DG-STKLC」を組み合わせ、そのUSB
 ポートに128GBのUSBメモリをぶっさし、これをNAS代わりにしよう!

 →ここでハマる(-.-)

DG-STK3で試したところ、本体内蔵のeMMC、本体にスロットのあるmicroSD
については共有すればVolumioから読み込めました(マウントして曲をサーチ
できた)。一方でUSBポートにつないだメモリ、HDDについては、Windows
で共有の設定をしてもVolumioやAndroidから見えないんです。これは…

で、いろいろ調べた結果、これを可能にするのがWindowsの「仮想ハード
ディスク」機能。実はWindows7から使えたらしいですが、Windows10でも
ちゃんと使えます。

やり方は簡単、「コントロールパネル」→「管理ツール」→「コンピューターの
管理」と辿って、その中の「記憶領域」→「ディスクの管理」を選びます。



仮想ディスクを作成したいドライブをクリックしてメニューの「操作」→
「VHDの作成」を選択すれば、作成可能。簡単です♪。ただし、何点か
注意点

■VHDファイルを作成するドライブはNTFSでフォーマットされている
 必要があります。

■VHDは要はファイルなので、でかいサイズの仮想ディスクを作成すると
 それだけ長い時間かかります。

■例えば100GBのVHDを作ってそれをマウント&フォーマットし、そこに
 大容量のファイル群をコピーするとなると、めちゃめちゃ時間かかります。
 USB3.0とかに対応してたら速いかもしれませんが、ウチのはUSB2.0
 なので、時間がかかりすぎて途中であきらめました。

 →VHDは単なるファイルなので、別のPCで作成して、USBメモリにコピー
  したのち、目的のPCでマウントすることも可能です。今回はノートPCの
  HDD上に仮想ディスクファイルを作成し、ノートPCでマウント、
  フォーマット、コピーのすべての作業を実施し、出来上がったファイルを
  USBメモリにコピーしました(ま、100GBの1ファイルをコピーする
  だけでも結構時間はかかりますけどね)

■VHDファイルは、電源切ったらマウントが解除されますので、電源投入時に
 再度マウントする必要があります。これはWindowsのタスクを登録する
 ことで自動的にマウント可能です。

 http://siso-lab.net/yoga-book-vhd-auto-attach/
 
 ↑この辺りが参考になります。

これでVolumioからUSBメモリが見えて、NASのように使えます!