LADSPAプラグインをPulseAudioストリームに適用するにはどうすればよいですか?


15

LADSPAプラグインを、デフォルトのPulseAudioシンクを流れるすべてのものに適用したい。これをどのように設定すればよいですか?

回答:


19

LADSPAプラグインをpulseaudioに追加するには、module-ladspa-sinkを使用します。

このモジュールを出力シンクとしてインストールし、処理モジュールを定義して、処理された信号をこの新しく作成されたシンクに送信できます。

LADSPAモジュールをロードします。

このモジュールは、実行時に以下を使用してロードできます。

pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]

マスターシンクの名前は、次のコマンドで読み取ることができます。

 pacmd list-sinks

の出力リストに表示されるように、処理されたシンクの名前を指定しますsink_name。その他のオプションはすべて、使用するプラグインによって異なります(以下の例を参照)。

LADSPAプロセッサを適用するには、「サウンド設定...」から出力シンクを選択し、処理されたストリームをリッスンできます。制御オプションは実行時に変更できません。

LADSPAモジュールをアンロードします。

モジュールをアンロードして、さまざまなオプションで再度ロードする必要があります。アンロード用のモジュールインデックスを見つけるには、次のコマンドを発行します。

 pacmd list-modules

モジュールをアンロードするには、サウンドサーバーを再起動するか、pulseaudio -kインデックス番号でモジュールをアンロードします#

pacmd unload-module <#>

pulseaudioリファレンスwikiも参照してください。

起動時にLADSPAモジュールをロードします。

適切なオプションを見つけたら、デフォルトごとに実行することができます。これは/etc/pulse/default.pa、起動時にデーモンによってロードされる構成ファイルに含めることで実行できます。

.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif

例:

これは、それを行う方法に関するアイデアを提供する1つの特別なケースの例です。この例では、TAPプラグインtap_pitchtap-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

一部のプラグインでは、ドキュメントが完全ではない場合があります。または、適切な設定を行うには、適切になるまでかなりの実験が必要になります。


1
これらのフィルター(pacmd load-module module-ladspa-sink *で作成)のいずれかをマイク入力に適用するにはどうすればよいですか?したがって、システム全体のフィルターを実行できます。これは、Mumble、Teamspeak、Skype、Gamesに適用されます。私は他の人にフィルタリングされた入力をここにしてもらいたいのですが、それは自分のためではありません(のみ)。
脳損傷14年

@braindamageはこれをテストできません(マイクなし)が、マスターシンクのデュプレックスプロファイルを試すか、マスターとして<name_of_source> .monitorを試します。
タクカット14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.