LADSPA 플러그인을 PulseAudio 스트림에 어떻게 적용 할 수 있습니까? 싱크를 통해 스트리밍되는 모든 것에 적용하고

LADSPA 플러그인을 기본 PulseAudio 싱크를 통해 스트리밍되는 모든 것에 적용하고 싶습니다. 이것을 어떻게 설정해야합니까?



답변

pulseaudio에 LADSPA 플러그인 추가는 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 프로세서를 적용하기 위해 “Sound Settings …” 에서 출력 싱크를 선택 하고 처리 된 스트림을들을 수 있습니다. 런타임에는 제어 옵션을 변경할 수 없습니다.

LADSPA 모듈을 언로드하십시오.

모듈을 언로드하고 다른 옵션을 위해 다시로드해야합니다. 언로드를위한 모듈 인덱스를 찾으려면 다음을 발행 할 수 있습니다.

 pacmd list-modules

모듈을 언로드하려면 사운드 서버를 사용하여 사운드 서버를 다시 시작 pulseaudio -k하거나 색인 번호가있는 모듈을 언로드하십시오 #.

pacmd unload-module <#>

pulseaudio참조 위키참조 하십시오 .

시작시 LADSPA 모듈을로드하십시오.

적절한 옵션을 찾은 후에는 기본 옵션별로 실행할 수 있습니다. /etc/pulse/default.pa시작시 데몬이로드 할 구성 파일 에 포함 시켜서 수행 할 수 있습니다 .

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

예:

이 작업을 수행하는 방법에 대한 아이디어를 제공하는 특별한 경우의 예입니다. 이 예에서는 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>

이 옵션을 비워두면이 경우 기본값이 사용됩니다.

따라서 다음 명령은 마스터 싱크 alsa_output.pci-0000_00_14.2.analog-stereo( 싱크 대신)에서 ladspa_out반음 -12시프트가 -50% 인 속도 싱크 , 즉 % ( 비율 ) 처리 및 건식 (처리되지 않은) 믹서 레벨을 사용하여 마스터 싱크 ( 하향 싱크로 교체) 에서 1 옥타브의 피치 시프트를 출력 싱크로 적용 합니다. 의 -90dB, 그리고 웨트 (처리) 레벨 0dB.

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

일부 플러그인의 경우 설명서가 완료되지 않았거나 올바른 설정이 될 때까지 적절한 설정이 필요합니다.


답변