LADSPAプラグインを、デフォルトのPulseAudioシンクを介してストリーミングされるすべてのものに適用したい。これをどのように設定すればよいですか?
LADSPAプラグインをpulseaudioに追加するには、module-ladspa-sinkを使用します。
このモジュールを出力シンクとしてインストールします。ここで処理モジュールを定義し、処理された信号をこの新しく作成されたシンクに送信できます。
このモジュールは、実行時に以下を使用してロードできます。
pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]
マスターシンクの名前は、次のコマンドで読み取ることができます。
pacmd list-sinks
sink_name
の出力リストに表示される処理済みシンクの名前を指定します。その他のオプションはすべて、使用するプラグインによって異なります(以下の例を参照)。
LADSPAプロセッサを適用するには、 "Sound Settings ..."から出力シンクを選択し、処理されたストリームをリッスンできるようになりました。制御オプションは実行時に変更できません。
モジュールをアンロードして、さまざまなオプションで再度ロードする必要があります。アンロード用のモジュールインデックスを見つけるには、次のコマンドを発行します。
pacmd list-modules
モジュールをアンロードするには、pulseaudio -k
でサウンドサーバーを再起動するか、インデックス番号#
でモジュールをアンロードします。
pacmd unload-module <#>
pulseaudioのwikiを参照 も参照してください。
適切なオプションを見つけたら、デフォルトごとに実行することができます。これは、起動時にデーモンによってロードされる/etc/Pulse/default.pa
構成ファイルに含めることで実行できます。
.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif
これは、それを行う方法に関するアイデアを提供する1つの特別なケースの例です。この例では、TAP-plugintap_pitch( tap-plugins -を使用して、サウンド出力にピッチシフトを適用します。 )。このプラグインの場合、Pulse Audioへのロードに必要な追加オプションは次のとおりです。
plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch # defines which label of a plugin to use
適切な制御オプションを見つけるには、プラグインのドキュメント(ここでは TAPプラグインピッチシフター )を参照します。そこで、control=
コマンドで適用する必要がある4つの関連するコントロールの素敵なテーブルを見つけます。
control=<semitone>,<rate>,<dry>,<wet>
この場合、オプションを空のままにするとデフォルトが使用されます。
したがって、次のコマンドは、マスターシンクalsa_output.pci-0000_00_14.2.analog-stereo
(シンクと交換)から1オクターブ下のピッチシフトを、ladspa_out
の半音シフトで出力シンク-12
に適用します。 -50
%のレートシフト、-90
dBのドライ(未処理)ミキサーレベル、0
dBのウェット(処理済み)レベル。
pacmd load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci-0000_00_14.2.analog-stereo plugin=tap_pitch label=tap_pitch control=-12,-50,-90,0
一部のプラグインでは、ドキュメントが完全ではない場合があります。または、適切な設定を行うには、適切になるまでかなりの実験が必要になります。