Odpowiedzi:
Dodanie wtyczki LADSPA do pulseaudio odbywa się za pomocą modułu-ladspa-sink .
Instalujemy ten moduł jako odbiornik wyjściowy, w którym możemy zdefiniować moduł przetwarzający i jesteśmy w stanie wysłać przetworzony sygnał do tego nowo utworzonego odbiornika.
Ten moduł można załadować w czasie wykonywania za pomocą:
pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]
Nazwę głównego zlewu można odczytać za pomocą następującego polecenia:
pacmd list-sinks
Podaj nazwę przetworzonego zlewu, tak jak pojawi się na liście wyników w sink_name
. Wszystkie dalsze opcje zależą od używanej wtyczki (patrz przykład poniżej).
Aby zastosować procesor LADSPA, wybieramy ujście wyjściowe z „Ustawień dźwięku ...” i możemy teraz słuchać przetworzonego strumienia. Opcje sterowania nie mogą być zmieniane w czasie wykonywania.
Będziemy musieli rozładować moduł i załadować go ponownie dla różnych opcji. Aby znaleźć indeks modułu do rozładunku, możemy wydać:
pacmd list-modules
Aby zwolnić moduł, albo ponownie uruchamiamy serwer dźwięku, pulseaudio -k
albo usuwamy moduł z jego numerem indeksu #
:
pacmd unload-module <#>
Zobacz także referencyjne wiki z pulseaudio .
Po znalezieniu odpowiednich opcji możemy chcieć uruchomić go domyślnie. Można to zrobić, dołączając go do /etc/pulse/default.pa
pliku konfiguracyjnego ładowanego przez demona podczas uruchamiania:
.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif
To jest przykład jednego specjalnego przypadku, który daje pomysł, jak to zrobić. W tym przykładzie chcemy zastosować zmianę wysokości dźwięku do naszego wyjścia dźwięku za pomocą wtyczki TAP tap_pitch ( wtyczki tap ). W przypadku tej wtyczki dodatkowe opcje potrzebne do załadowania do Pulse Audio są następujące:
plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch # defines which label of a plugin to use
Aby znaleźć odpowiednie opcje sterowania, przeglądamy dokumentację wtyczki (tutaj TAP zmieniacz pitch wtyczki ). Tam znajduje się ładna tabela czterech istotnych elementów sterujących, które musimy zastosować w control=
poleceniu:
control=<semitone>,<rate>,<dry>,<wet>
Pozostawienie opcji pustej spowoduje użycie domyślnej w tym przypadku.
W ten sposób następujące polecenie zastosuje przesunięcie o jedną oktawę w dół od mojego zlewu głównego alsa_output.pci-0000_00_14.2.analog-stereo
(zamień na zlew) do zlewu wyjściowego ladspa_out
z przesunięciem półtonowym wynoszącym -12
, tj. Przesunięcie szybkości -50
%, oraz z suchym (nieprzetworzonym) poziomem miksera od -90
dB i mokrej (przetworzonej) poziomu 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
W przypadku niektórych wtyczek dokumentacja może być niekompletna lub odpowiednie ustawienie będzie wymagało sporo eksperymentów, dopóki nie będą prawidłowe.