アンプ/アッテネータ専用のAlsaドライバ?

アンプ/アッテネータ専用のAlsaドライバ?

ALSAにはドライバという概念がありますか?ただアンプ/アッテネーター用?システムの音量を調整しながら、アンプの音量もコントロールしたいです。現在のサウンドカードドライバをコピーしてアンプを処理するコードを追加できますが、ドライバ全体を維持することは避けたいと思います。

私のハードウェア設定は次のとおりです。

Soundcard [analogue]-> Amplifier [analogue]-> Speaker

Alsaはすでにサウンドカードを完全に処理しています。アンプのゲインを直接制御するコードがあります。サウンドカードドライバが提供するソフトウェアアッテネータの代わりにそれを使用したいと思います。理想的には、サウンドカードドライバ全体をフォークすることなく可能です。

これは忠実度の高いアプリケーションではなく、pulseaudioに正しい概念がある場合は別のアプローチで開かれています。私はすでにユーザースペースでこれを完全に実行できます(volume(unsigned char val)ボリュームを正しく設定するfnがあります)。

制御コードにインターフェースを作成できるように、アンプ/アッテネーターを概念的にインライン化する方法はありますか?

ベストアンサー1

概念は存在します。ただし、非常に限られたハードウェアデバイスセットにのみサービスを提供できます。

以下はTAS575xMベースのオーディオアンプのコードです。

SSM4567ベースのオーディオアンプのコードと実装の内容。

時間を投資するエコシステムを探しているなら、上のリンクを読んでみるとわかるように、I2C必ず候補になります。


注:このリストは完全ではありません。私の知識によってのみ制限されます)

しかし、デバイスにAlsaドライバがない場合、pulseaudioは自動的にドライバを作成または偽造しません。

おすすめ記事