海上忍のラズパイ・オーディオ通信(38)

続・ASUS「Tinker Board」。ラズパイ用DACボードをI2S接続で使うことはできるのか?

海上 忍

前のページ 1 2 3 次のページ

2017年12月08日

■Tinker BoardでもI2Sで192kHz/24bitを鳴らせる、しかし……
結論からいうと、DAC 01の動作テストはほぼ失敗。音源に利用した192kHz/24bit FLACと44.1kHz/16bit FLACのうち、曲がりなりにも音が出たのは44.1kHz/16bit FLACのみで、192kHz/24bit FLACはウンともスンともいわなかった。"曲がりなりにも"と書いたのは、再生中絶え間なくクリックノイズが聞こえるためで、もはやジッター以前の問題である。

DAC 01で44.1kHz/16bit FLACを再生したところ。音は出るには出るものの……

原因を探るべく、PCM 5122ドライバ(関連ページ)を確認したところ、Tinker Board版ではRockchipアーキテクチャと判定するとマスタークロックをソフトウェアで生成していた(232行以降)。問題の一端はここにありそうだ。マスター/スレーブの動作も、デバイスツリーファイルのソースを見ると(arch/arm/boot/dts/overlays/hifiberry-dacplus-overlay.dts)、初期化の時点でスレーブモードを強制していることがわかる。

マスター/スレーブの判定は、RK3288のI2Sマニュアルを見ると「Support master and slave mode」との記述があり、I2Sコントローラドライバー(sound/soc/rockchip/rockchip_i2s.c)を見ても判定機構は実装されているようで、今後の対応に期待を持たせてくれる。つい2年ほど前、Raspberry Piをスレーブモードで動作させることが開発コミュニティ全体でも手探り状態だったことを思えば、楽観的でいていいのかもしれない。

DAC 01だけでは検証不足なので、ラズパイ・オーディオファンに高い評価を獲得しているDACボード「SabreBerry32」も試してみた。開発者のTakazine氏は、I2SをサポートしたTinkerOS v2.0.1のリリースからほどなくして対応ドライバを試験的に公開、インストール手順を含め自身のブログで手取り足取り解説しているので(関連ページ)、それを参考に導入してみた。

TinkerBoardにSabreBerry 32を装着し「CASE 01」に収めたところ。一見TinkerBoardとはわからないはず

手はじめに192kHz/24bit FLACを再生してみたところ、意外にもあっさり成功。PCM5122ドライバ同様に現状はスレーブモードのみの対応となるが、こちらはクリックノイズが皆無でESS SABRE9018Q2Cらしい透明感あるサウンドを楽しめる。Raspberry Pi 3(SabreBerry32がマスター)で聴くときと比べると、トランジェントはやや後退した感はあるが、低域の量感という点ではTinker Boardのほうに魅力を感じる。マスターモードで聴けばさぞや、そう期待させてくれるサウンドだ。

だが、44.1kHz/16bit FLACに曲が切り替わると……音が出ない。MPDを再起動しても解決しないうえシステムが不安定化するという事象が発生、やむなくテストを中断した。ESSのドライバはオープンソースではないため、筆者では原因を調べようがないからだ。もっとも、こちらはTinkerOS v2.0.1と1つ前のバージョンであり、公開されたばかりのI2S周辺機能が不安定なのもやむをえないこと。v2.0.3対応のドライバが公開されたら、早速試してみたいと考えている。

SabreBerry32で192kHz/24bit FLACを再生したところ。スレーブモードでの動作ではあるが、Tinker Boardの今後に期待を感じさせる音だ

前のページ 1 2 3 次のページ

関連記事