4月 092016
 

なんか、いろんな人が書いているようなタイトルだなぁf(^^;;。

本当は前回の「ハイレゾ楽曲を作ってみました。」のエントリでネタは完了する予定でしたが、プレーヤーについて色々調べていたらハイレゾ携帯プレーヤーや USB DAC を購入するより Raspberry Pi 2 でハイレゾ音源を再生するほうがずっと安上がりだ。と、いうことが解り、早速試してみました。

手元には去年購入した Raspberry Pi 2 があり今でも FreeBSD/arm CURRENT が動作していますが、そいつを利用することにしました。
Raspberry Pi 2 に接続するハイレゾ対応のチップを購入し 40PIN にサクっと刺すとハイレゾ再生が可能になる。と、いうので amazon で「サインスマート HIFI DAC サウンドカード モジュール I2S インターフェース」と、いうのを購入しました。

Raspberry Pi 2 に接続すると、こんな感じになります。

RPI2_I2S_volmio_1

購入したモノが届いたときには本体のみでマニュアルやネジ類は一切ついていません。
僕は PC を自作していた時期があったので、マザーボードと ATX ケースを固定するネジをたくさん持っていて、それを利用し I2S ボードの 40PIN の反対側に取り付けて安定性を確保しました。
そして、40PIN をグイグイと押しこみます。

以上で準備は完了です。

 
MicroSD に OS を準備しますが、今回は Volumio を利用しました。

あ。Volumio は 1.55 を利用していますが、最新版の Volumio2 が出るようです。最新版が出たらそっちに乗り換えるかもしれません。
Volumio2 RC1 を試してみたところ、僕の環境では見事にカーネルパニックしたので、今回は Volumio1.55 がターゲットです。

実は Raspberry Pi 2 を購入したあとに FreeBSD/arm と一緒に Volumio も試していたんです。このときはハイレゾに染まっていなかったのでフツーの音楽プレーヤーとして利用していたのですが、 USB の無線 LAN と Bluetooth ドングルが利用できなかったのでお蔵入りしていんですけどもね。

さてと。 Raspberry Pi 2 に I2S ボードを接続し MicroSD にも Volumio が入ったので早速起動します。

他のサイトを眺めていると System メニューの「I2S driver」と、いうメニューを “Hifiderry+” にすると音が出るよ。と、書かれていますが、それだけでは情報がかなり足りないですね。

RPI2_I2S_volmio_4

他にもう 1,2 ヶ所設定を変更する必要がありました。と、いうことで、まずは PlayBack メニューの「Audio Output」を指定します。

RPI2_I2S_volmio_3

default では “ALSA” になっていると思いますが I2S を利用する場合には “sndrpihifiberry” に変更する必要がありました。

その次にその下にある「Volume eontrol mixer」 の設定をしますが “Hardware” を指定すると、Main メニューのボリュームサークルからから音量が変更できないので “Software” を選択します。

RPI2_I2S_volmio_2

以上三つを設定すると音が出て、ボリューム調整もできるようになります。

ふぅ。最初音が出なかったので、壊れているのか? と思ってしまったのですが、これで一安心;-)。

しかし、これでも音が出ない場合には UNIX 系な解決方法を試みます(僕は FreeBSD ユーザなので『Linux 的な』とは書かないです;-)。まずは Volumio に ssh でログインして dmesg で確認してみてください。
以下の行が出力されていればデバイス的には OS から認識されていて利用可能な状態なので、じっくりと設定とかメニューを見なおしてみてください。

snd-rpi-hifiberry-dacplus sound: pcm512x-hifi <-> 3f203000.i2s mapping ok

 
このメッセージが出力されていてもなお音が出ない場合は Ubuntu のコマンドで確認してみる手もあります。
僕は Lunix のマルチメディア系のコマンドはいまいち解らないんですけどねf(^^;;。

 # aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_dacplus], device 0: HiFiBerry DAC+ HiFi pcm512x-hifi-0 []
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 1: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
        : (中略)
card 1: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
# lsmod | grep pcm
snd_soc_pcm512x_i2c     1689  1 
snd_soc_pcm512x         6340  1 snd_soc_pcm512x_i2c
snd_soc_core          140253  4 snd_soc_pcm512x,snd_soc_hifiberry_dac,snd_soc_hifiberry_dacplus,snd_soc_bcm2708_i2s
snd_pcm_dmaengine       3359  1 snd_soc_core
regmap_i2c              2354  1 snd_soc_pcm512x_i2c
        : (以下略)

 
Volumio では Network メニューから Wi-Fi の設定もできるのですが、僕の持っている USB Wi-Fi インターフェースでは設定してもまともに動きませんでした。なので、こちらも実機に ssh して wpa_supplicant の設定を直接手でしてしまいました。基本的に wpa_supplicant は Linux も FreeBSD も一緒なので使い回しの設定で OK でした;-)。

ネットワークの設定は結局 Volumio からではなく /etc/network/interfaces を直接 vi で編集してしまいました;-)。

あと、 I2S インターフェースを付けたのでオンボードのサウンドチップは要らないので削除します。 /etc/modules の中に書かれている snd_bcm2835 の行をコメントアウトすれば OK です。とは言っても /etc/modules には snd_bcm2835 しか書かれていないと思いますけども。

音楽系の話だけでなく、こーいう、UNIX 系技術者向けな話も中々良いですね;-)。

 
さてと。話をもとにもどします;-)。

今回購入した「サインスマート HIFI DAC サウンドカード モジュール I2S インターフェース」と、いう製品は PCM5122 というチップで 384kHz/32bit に対応しているそうで、もうバッチリとハイレゾ対応ですね;-)。

ここにヘッドホンを接続したりスピーカーを接続して mora の楽曲を再生してみました。

最近は通勤の往復の電車の中では ZTE Blade Vec 4G にイヤホンを利用して音を聞いているのですが、その時には 256bit/44.1KHz/16bit な m4a も mora のハイレゾ楽曲も聞きます。なので耳には慣れている音なのですが、このモジュールを利用して音を試聴すると、音質豊かで驚きます。

『人間の耳は 20kHz 以上は聞こえないんだからハイレゾは意味ねんじゃね?』とか言われていますが、聞こえる周波数・聞こえない周波数なんて関係無いですね。耳に入ってくる情報量がうんと多いのには唖然とします。ボーカルのうしろにはこんなに色々な音が隠れていたのかーっ!! って、音が耳に飛び込んでくる感じ。

ハイレゾな楽曲をハイレゾな環境で聞くとすごい音がする。ってことがよぉーく解りました。

 
それにしても Raspberry Pi 2 ってすげーなー。とか、思うんですが、結局のところ、行き着くところは Linux で PCM5122 のチップのドライバが書かれていて、ちゃんと音が出る。ってのがすごいねぇ。などと思えるんですけどもね。
FreeBSD では PCM5122 のデバイスドライバは無いようだしなぁ・・。

と、いうことで Raspberry Pi 2 + PCM5122 + Volumio でハイレゾ再生が可能になり、楽曲(五曲しかないけど、更に二曲追加されました;-)とプレーヤーとスピーカー・イヤホンの全てが揃いました。

CD から flac にリッピングする環境もできたのでハイレゾ環境はこれで一通り揃った感じになります。ただ、 CD -> wav -> flac 変換の楽曲が “なんちゃってハイレゾ” 以下の楽曲データであるとは多分思うのですけどね・・:-|。

さてと。これからは、楽曲をどうして行くか? と、いう点のみが残るな・・。やはり泥沼からは抜け出せないかな? orz

 
ちなみに、今回のハイレゾ環境整えるのにかかった費用ですが、今のところはイヤホン・スピーカー・I2S インターフェースのみなので 23,000yen 弱でしょうかね。 Raspberry Pi 2 は最初から持っていたのでカウントされていません。

これだけの金額でハイレゾ環境が整って一安心。と、いうのが素直な気持ちですが、自分的には

ハイレゾを楽しむならまずはイヤホン・その次にスピーカ、楽曲は色々試して、最後にプレーヤーを揃える

って感じかなぁ。と、思っております。最初にプレーヤーを買っても、ハイレゾで音が聞こえないので。最初にイヤホン買うと Windows10 で試せるし。みたいな感じでしょうか。

 
と、いうことで、今回のハイレゾに関するエントリは全て終了です;-)。

ふぅ。