すべての出力のパルスオーディオ音量を減らすか増やします。

すべての出力のパルスオーディオ音量を減らすか増やします。

私はラップトップのオーディオ設定を頻繁に変更します(時々内蔵のジャックポートを使用する、時々何も使用しない、時々USBヘッドフォンを使用する、時々ラップトップドッキングステーションのジャックポートを使用する)。キーボードショートカットを使って音量を上げ下げしたい。すべての出力に対して一度したがって、現在アクティブなオーディオ出力に関係なく機能します。これを達成する最も簡単な方法は何ですか?私もpavucontrolで100%を超える可能性があることを見ました。

私はDebianテスト、カーネル4.9.0-3-amd64、pulseaudio 10.0を実行しています。

答え1

これにはスクリプトが必要です。同様のスクリプトがありますこれ基本的な受信機を制御するが、すべての受信機を制御する受信機は見たことがない。

使用しているすべてのリスナーのリストをインポートしてpacmd list-sinksボリュームを設定できるpacmd set-sink-volumeため、次の作業を行う必要があります。

VOLUME='+5%'
for SINK in $(pacmd list-sinks | grep 'index:' | cut -b12-)
do
  pactl set-sink-volume $SINK $VOLUME
done

$VOLUME絶対値(150%)、相対値(+5%、、-5%)、またはその他の形式にすることができます。

ほとんどのウィンドウマネージャは、キーを押すとパラメータ付きのスクリプトまたはプログラムを起動するように設定できます。これが最善の方法ですが、WMにない場合は、次のものを使用できますxbindkeys。したがって、任意の方法でカスタマイズできます。

受信機の音量が100%を超えると、Pulseaudioはハードウェアミキサーの使用を開始し、音が歪むことがあります。

また、Pulseaudioを使用すると、アプリケーションごとのボリューム(「オーディオストリーム」)を設定できますpacmd set-sink-input-volume。これをリストし、pacmd list-sink-inputs同様に設定できます。

これにより、ハードウェアミキサーを使用せずにタンクのボリュームを一定のレベルに保つことができ、タンクを切り替えると自動的に「正しい」ボリュームが得られます。これが私が好む設定です。

関連情報