回答:
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プロセッサを適用するには、「サウンド設定...」から出力シンクを選択し、処理されたストリームをリッスンできます。制御オプションは実行時に変更できません。
モジュールをアンロードして、さまざまなオプションで再度ロードする必要があります。アンロード用のモジュールインデックスを見つけるには、次のコマンドを発行します。
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プラグインtap_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>
この場合、オプションを空のままにするとデフォルトが使用されます。
したがって、次のコマンドは、マスターシンクから1オクターブ下のピッチシフトをalsa_output.pci-0000_00_14.2.analog-stereo
(シンクと交換して)ladspa_out
セミトーン-12
シフト、-50
%のレートシフト、およびドライ(未処理)ミキサーレベルで出力シンクに適用します-90
デシベルとのウェット(処理)レベル0
デシベル。
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
一部のプラグインでは、ドキュメントが完全ではない場合があります。または、適切な設定を行うには、適切になるまでかなりの実験が必要になります。