Antworten:
Das Hinzufügen eines LADSPA-Plugins zu pulseaudio erfolgt mit module-ladspa-sink .
Wir installieren dieses Modul als Ausgangssenke, wo wir das Verarbeitungsmodul definieren und das verarbeitete Signal an diese neu erstellte Senke senden können.
Dieses Modul kann zur Laufzeit geladen werden mit:
pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]
Der Name der Master-Senke kann mit dem folgenden Befehl gelesen werden:
pacmd list-sinks
Geben Sie einen Namen für die bearbeitete Senke ein, wie er in der Ausgabeliste in angezeigt wird sink_name
. Alle weiteren Optionen hängen vom verwendeten Plugin ab (siehe Beispiel unten).
Um den LADSPA-Prozessor anzuwenden, wählen wir die Ausgabesenke unter "Sound Settings ..." und können nun den verarbeiteten Stream anhören. Steuerungsoptionen können zur Laufzeit nicht geändert werden.
Wir müssen das Modul entladen und für verschiedene Optionen erneut laden. Um den Modulindex zum Entladen zu finden, können wir Folgendes ausgeben:
pacmd list-modules
Um ein Modul zu entladen, starten wir entweder den Soundserver neu pulseaudio -k
oder wir entladen das Modul mit seiner Indexnummer #
:
pacmd unload-module <#>
Siehe auch das Referenz-Wiki von pulseaudio .
Nachdem wir die entsprechenden Optionen gefunden haben, möchten wir sie möglicherweise standardmäßig ausführen. Dies können Sie tun, indem Sie es in die /etc/pulse/default.pa
Konfigurationsdatei aufnehmen, die der Dämon beim Start laden soll:
.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif
Dies ist ein Beispiel für einen speziellen Fall, um Ihnen eine Vorstellung davon zu geben, wie das geht. In diesem Beispiel wollen wir mit dem TAP-Plugin tap_pitch ( tap-plugins ) eine Tonhöhenverschiebung auf unsere Soundausgabe anwenden . Für dieses Plugin sind die folgenden zusätzlichen Optionen zum Laden in Pulse Audio erforderlich:
plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch # defines which label of a plugin to use
Um die entsprechenden Steuerungsoptionen zu finden, navigieren Sie zur Plugin-Dokumentation (hier TAP-Plugin-Pitch-Shifter ). Dort finden wir eine schöne Tabelle mit vier relevanten Steuerelementen, die wir im control=
Befehl anwenden müssen :
control=<semitone>,<rate>,<dry>,<wet>
Wenn Sie eine Option leer lassen, wird die Standardeinstellung in diesem Fall verwendet.
Mit dem folgenden Befehl wird also eine Tonhöhenverschiebung von einer Oktave nach unten von meiner Master-Senke alsa_output.pci-0000_00_14.2.analog-stereo
(durch Ihre Senke ersetzen) auf die Ausgangs-Senke ladspa_out
mit einer Halbtonverschiebung von -12
, dh einer Ratenverschiebung von -50
%, und mit einem trockenen (unverarbeiteten) Mischpegel angewendet von -90
dB und einem nassen (verarbeiteten) Pegel von 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
Für einige Plugins ist die Dokumentation möglicherweise nicht vollständig, oder die entsprechende Einstellung erfordert einige Experimente, bis sie richtig sind.