しばらくの間、サウンドにやや面倒な問題がありましたが、ついに何かをする時が来たと判断しました。
ツールバーのメインボリュームスライダーを調整するたびに、またはラップトップでボリュームホットキーを使用するたびに、Ubuntuは奇妙な方法でミキサーレベルを調整します。 GNOME ALSA Mixerを開くと、SigmaTel STAC9200にはマスター、PCM、LFEの3つの出力スライダーがあります。マスターとLFEの両方にミュートチェックボックスがあります。
ボリュームを上げるホットキーを1回押すと、マスターとLFEのミュートが解除され、PCMとLFEのスライダーが半分ほど跳ね上がります。マスタースライダーはゼロのままです。別のプレスを使用すると、PCMとLFEが最大約4/5になり、マスターは下部に移動しません。
Ubuntuは、PCMとLFEが最大になるまでマスターを移動しません。これは、メイン出力ミキサーで約15%〜20%の間に発生します。
これの効果は、約15%から20%まではまったく音が出ないことです(マスターがゼロになっているため)。そのしきい値を超えると、すぐに大きな低音が聞こえます(明らかにLFEから) 。ヘッドフォンを使用する場合、そのしきい値まで音は聞こえませんが、少なくとも音が聞こえても音がしません。
PulseAudioの構成など、出力ミキサーの動作を変更する可能性のある場所はありますか?
オーディオスタックには、この症状を引き起こす可能性のある多くのレイヤーがあります。最も直接的なのは、PulseAudioのデフォルトの動作です。これについては http://pulseaudio.org/wiki/PulseAudioStoleMyVolumes で確認できます。 https://wiki.ubuntu.com/DebuggingSoundProblems/KarmicCaveats#Volume%20range%20anomalies :で提供した指示を使用して、いくつかのインスタンスを回避できます。
ボリューム範囲の異常
PulseAudioの最新バージョンは、ミキサーコントロールを使用してサウンドカードの音量を制御しようとします。通常、これは正常に機能しますが、場合によっては適切に機能しません。 (これがPulseAudioのせいかALSAのせいかは、このWikiページの範囲外です。詳細な背景情報は ここ です。)
診断
次のいずれかが発生します。
- 20%未満がすべてミュートされ、21%が非常に大きい場合など、音量がジャンプします。
- ボリュームが特定の(低)レベルを超えて設定されている場合、オーバードライブ(音の歪み)
- 範囲の一部で音量が変化しない。たとえば、20%が70%と同じくらい大きい場合。
修正/回避策
PulseAudioが音量を制御する方法を制御するいくつかの変数があります。
/etc/Pulse/default.pa
を編集して(それを行うにはrootになる必要があります)すべてのユーザーの動作を変更するか、そのファイルを~/.Pulse/default.pa
にコピーしてからそのファイルを編集し、現在のユーザ【専用・のみ。上記のファイルを開きます。
load-module module-udev-detect
という行を見つけて、次のように変更します。load-module module-udev-detect ignore_dB=1
変更を試みるには、次のコマンドでPulseAudioを再起動します。
killall pulseaudio
その後、PulseAudioは自動生成されます(自動的に再起動します)。
上記の回避策では不十分な場合があります。この場合、PCM(alsamixerを参照)など、1つのミキサーコントロールのみを制御するようにPulseAudioを構成できます。
#load-module module-alsa-sink
という行を見つけて、次のように変更します。load-module module-alsa-sink control=PCM
(行の先頭にある#を削除することを忘れないでください!)オプションで、PCMをPulseAudioで制御したいミキサーコントロールに置き換えます。
次に、上記の
killall pulseaudio
を実行して、デーモンが自動生成されるようにする必要があります。
最後に、この異常が実際にバグであるかどうかは、ubuntu-bug alsa-base
を使用する必要があります。