私が欲しいのは次のとおりです:
- ヘッドフォンを接続するとき、サウンドのミュートを解除し、特定の音量レベルに設定する必要があります。
- ヘッドフォンのプラグを抜くとき、サウンドをミュート(または特定の音量レベルに設定)する必要があります。
音量レベルの設定は問題ではありませんが、ヘッドフォンの取り外し/接続時に何らかの理由でこれを行う必要があるため、これらのイベントを通知する方法を探しています。
/proc/asound/card0/codec#0
ヘッドフォンが接続されているかどうかをすぐに見つけたのでinotifywait
、変更した通知に基づいてそれを監視し、音量レベルを変更しようとしました。残念ながらinotifywait
、procは通常のファイルシステムではないため失敗しました。
これを行う他の方法はありますか?
オーディオデバイス:インテルHDA、オーディオコーデック:Conexant社CX20585。
これまでに試したことをまとめると:
- Ear Candy:私のシステムではまったく動作しませんでした。放棄されたプロジェクトのようですか?
- Karl Bielefeldtが投稿したコードは、一部のハードウェアで動作する可能性がありますが、私のハードウェアでは動作しません。
- StephenPaulgerのアイデアは、「スピーカー」チャンネルがないために失敗します。
- aking1012によって動機付けられました(コーデックのジャックセンシングコードを見つけた後)カーネルコードをハックして機能させましたが、それはかなり面倒な解決策です。
だから、私はまだこれを行う簡単な方法を探しています。