Raspberry Pi4BからI2S出力 その3 ― 2025年09月12日 19時43分09秒
Raspberry PiにI2S経由でDACを接続することは、すでに一般化していて、多数のDACメーカーから対応するドライバーが提供され、Raspberry OSにはそれらのドライバーが最初から含まれている。
なので、Raspberry対応のDACを選択する限り、ユーザーはなんの苦労もなくI2Sの恩恵を受けることができる。
ところが今回はそれらを使うことができない。理由は二つある。
(1)TDA1541Aという特殊性
今回使いたいのは、TDA1541Aという今や化石のようなDACである。これまで旭化成以外の有名なDACをいろいろ試したことがあるのだが、結局私にとってこのDACが好ましく思われた、というのがその理由である。
これに対応するドライバーなど公式にあるはずもなく、自分で作るか、先駆者達がすでに作ったものを拝借するかという二択になる。その話はまた後で語ることになるだろう。
(2)クロックをDAC側から供給するマスター・モードで動かしたい
最も簡易な方法は、DACで必要なクロック信号をRaspberry Pi側から供給してもらうことである。そうすれば、DAC以外の周辺回路はいらなくなるので安価に仕上げることができる。
しかしこれには大きな問題があって、推測されるとおりRaspberry Piのクロックは非常に精度が悪く、真面目なオーディオ用途にはまったく使うことができない。
そこでどうしても外部から精度の高いクロックを供給したくなる。
私は当初、I2S規格ではそのような要求を実現することはできないのではと思い込んでいたが、調べてみると問題ない。Raspberry用に外部クロックを積んだDACも多数売られている。
ブロック概念図の丸で囲んだところがそれで、BCK, FS信号を外部にあるクロック発振回路からRaspberry Pi側に供給するようになっている。Raspberry Piは、このクロック信号を使って音声信号を出力する。DAC側からクロックを供給する方法をMaster Modeを呼ぶ。
ということで、今回のプロジェクトの成否はこのドライバーがうまく動くかどうかにかかっている、と目論みが立つ。
なので、Raspberry対応のDACを選択する限り、ユーザーはなんの苦労もなくI2Sの恩恵を受けることができる。
ところが今回はそれらを使うことができない。理由は二つある。
(1)TDA1541Aという特殊性
今回使いたいのは、TDA1541Aという今や化石のようなDACである。これまで旭化成以外の有名なDACをいろいろ試したことがあるのだが、結局私にとってこのDACが好ましく思われた、というのがその理由である。
これに対応するドライバーなど公式にあるはずもなく、自分で作るか、先駆者達がすでに作ったものを拝借するかという二択になる。その話はまた後で語ることになるだろう。
(2)クロックをDAC側から供給するマスター・モードで動かしたい
最も簡易な方法は、DACで必要なクロック信号をRaspberry Pi側から供給してもらうことである。そうすれば、DAC以外の周辺回路はいらなくなるので安価に仕上げることができる。
しかしこれには大きな問題があって、推測されるとおりRaspberry Piのクロックは非常に精度が悪く、真面目なオーディオ用途にはまったく使うことができない。
そこでどうしても外部から精度の高いクロックを供給したくなる。
私は当初、I2S規格ではそのような要求を実現することはできないのではと思い込んでいたが、調べてみると問題ない。Raspberry用に外部クロックを積んだDACも多数売られている。
ブロック概念図の丸で囲んだところがそれで、BCK, FS信号を外部にあるクロック発振回路からRaspberry Pi側に供給するようになっている。Raspberry Piは、このクロック信号を使って音声信号を出力する。DAC側からクロックを供給する方法をMaster Modeを呼ぶ。
ということで、今回のプロジェクトの成否はこのドライバーがうまく動くかどうかにかかっている、と目論みが立つ。
コメント
トラックバック
このエントリのトラックバックURL: http://john.asablo.jp/blog/2025/09/12/9802641/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。

コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。