Chcę zastosować wtyczkę LADSPA do wszystkiego, co jest przesyłane strumieniowo przez domyślny zlew PulseAudio. Jak mam to skonfigurować?
źródło
Chcę zastosować wtyczkę LADSPA do wszystkiego, co jest przesyłane strumieniowo przez domyślny zlew PulseAudio. Jak mam to skonfigurować?
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.