내용에 따라 볼륨을 자동으로 조정 하시겠습니까?


51

다른 오디오 소스에서는 사운드 레벨이 다릅니다. 거의 모든 미디어 컨텐츠에서 사운드 레벨을 설정하는 것은 매우 성가신 일입니다. 때로는 이전에 조용한 무언가가 있었을 때 더 크게 조정해야했고 얼마 후 다른 미디어를 재생하고 싶었습니다. 예기치 않게 헤드폰이 고장 나고 소리가 너무 큽니다!

모든 미디어 컨텐츠의 사운드 레벨을 자동으로 조정할 수있는 플러그인 / 기능이 있습니까?


답변:


38

LADSPA 플러그인으로 사운드 레벨 조정

입력 레벨과 무관하게 상당히 표준화 된 사운드 출력 레벨을 얻기 위해 LADSPA 플러그인을 사용하여 PulseAudio를 통해 사운드 출력을 필터링 할 수 있습니다.

최소한, 우리는 같은 같은 압축기 플러그인이 필요 dysonCompressor 로부터 SWH-플러그인이 swh-plugins 설치 아직없는 경우 설치해야합니다.

와 함께 기본 싱크의 이름을 찾은 후

pacmd list-sinks

(내 시스템과 함께 여기에 저장된) 플러그인 의 정확한 이름은 다음 명령을 발행 할 수 있습니다/usr/lib/ladspa/dyson_compress_1403

pacmd load-module module-ladspa-sink sink_name=ladspa_sink master=<alsa_output> plugin=dyson_compress_1403 label=dysonCompress control=0,1,0.5,0.99

출력 싱크 <alsa_output>정확한 이름으로 교체하십시오 (내 시스템에서는이 이름이었습니다 alsa_output.pci-0000_00_14.2.analog-stereo).

사운드 설정 메뉴 ladspa_sink에서 액세스 할 수 있는 새로 생성 된 출력 싱크 에서 압축 된 출력을들을 수 있습니다 .

여기에 이미지 설명을 입력하십시오

컴프레서 플러그인의 제어 설정은 피크 제한, 릴리즈 시간, 빠른 비율, 비율 입니다. 이러한 컨트롤에 대한 자세한 내용, 기본값 및 최소 resp 최대 값 은 플러그인 설명서 를 참조하십시오.

재생 클리핑을 피하기 위해 압축 후 리미터와이 플러그인을 결합 할 수도 있습니다. 우리는 사용할 수 있습니다 fast_lookahead_limiter마스터 싱크 위에서 우리 방금 만든 lasdpa_sink 지금 존재와이를 위해 :

pacmd load-module module-ladspa-sink sink_name=ladspa_normalized master=ladspa_sink plugin=fast_lookahead_limiter_1913 label=fastLookaheadLimiter control=10,0,0.8

출처 : 위의 설정은 실수에 대한 brien의 블로그에서 펄스 오디오에 맞게 조정되었습니다.


매우 시원하다! 위의 출력 항목을 선택하면 즉시 차이를들을 수 있습니다! btw, cmd는 테스트를 위해서만 제거하고 pacmd unload-module module-ladspa-sink정규화 된 싱크를 선택합니다pacmd set-default-sink ladspa_normalized
Aquarius Power

소리가 나는 것을 막기 위해 수정 된 것처럼 글리치가 발생하고 볼륨이 갑자기 너무 조용해졌습니다. 그런 다음 ppl이 말하는 내용을 들으려면 볼륨을 한 단계 올린 다음 조금 큰 소리로 들립니다. "이퀄라이저 노멀 라이저"를 사용할 수 있다면 모든 주파수를 동적으로 관리하여 음악, 음향 효과 및 사람들의 말을 모두 제대로 정규화하고 절대로 크게 들리지 않게 할 수 있습니다. 팁 / 아이디어?
물병 자리 힘

1
@AquariusPower 플러그인이 볼륨이 무엇인지 미리 추측하려고하기 때문에 ... 5ms 동안 하드 코딩 된 것으로 보입니다. 대기 시간이 12.5ms 이거나 다른 압축기 (예 : MLT mltframework.org/bin/view/MLT/FilterLadspa-1072) 가있는 TAP 세트 (예 : tap-plugins.sourceforge.net/ladspa/limiter.html) 에서 다른 리미터로 시도 할 수 있습니다. ) ...하지만 시도하지 않았습니다.
Takkat

음 .. 내가 경험 한 문제는 내가 유일하게 ladspa를 적용한 직후에 재생했던 하나의 youtube 비디오에서만 발생한 것 같습니다. 이것은 게임을 포함한 다른 모든 것에서 훌륭하게 작동합니다! 이 다른 팁들도 thx로 확인하겠습니다.
물병 자리 힘

1
0 대신 -12를 사용하여 control반영 하도록 파라미터를 변경합니다. control=-12,1,0.5,0.99이는 -12dB 이상의 사운드 만 압축 (부드럽게)되며 일반적으로 음성 / 대화보다 큰 소리를 포함합니다. 영화 (예 : NetFlix의 RED 2)를 볼 때 폭발에 비해 보컬이 여전히 조용하다는 것을 발견하면이 변경을 수행하십시오.
Jonathan Neufeld

15

Takkat의 솔루션은 훌륭하지만 다음은 더 간단하고 영구적 인 변형입니다.

두 단계 만 있습니다.

  1. apt-get install swh-plugins
  2. ~ / .config / pulse / default.pa 파일에 다음을 잘라 붙여 넣습니다 .

    .nofail
    .include /etc/pulse/default.pa
    load-module module-ladspa-sink  sink_name=ladspa_sink  plugin=dyson_compress_1403  label=dysonCompress  control=0,1,0.5,0.99
    load-module module-ladspa-sink  sink_name=ladspa_normalized  master=ladspa_sink  plugin=fast_lookahead_limiter_1913  label=fastLookaheadLimiter  control=10,0,0.8
    set-default-sink ladspa_normalized
    

다음에 로그인하거나 실행할 pulseaudio -k때 기본적으로 정규화가 자동으로 설정됩니다.


"마스터"매개 변수를 생략하면 어떤 효과가 있습니까? 이 경우 싱크 마스터로 무엇이 구성되어 있습니까?
Nicolay Doytchev

Hi Nicolay : 소스 코드를 읽으면 NULL 문자열이 "@ DEFAULT_SINK @"와 동일하다는 것을 나타냅니다. (namereg.c의 216 행 등도 참조하십시오). 그런데 왜 물어? 내 솔루션에 문제가 있으면 문제를 해결하고 싶습니다.
hackerb9

안녕하세요, 이 답변 의 솔루션을 사용하여 스피커와 헤드폰을 뽑지 않고 전환 할 수있었습니다. 사운드 제어판에서 스피커의 필터링 된 출력 만 얻습니다. 헤드폰 출력에서도 작동하는 방법에 대한 아이디어가 있습니까?
user1738984

확실하지 않지만 각 출력마다 하나씩 두 개의 필터를 실행해야 할 수도 있습니다. 또는 헤드폰 / 스피커를 별도의 출력으로 분할 한 후에 정규화가 필요할 수 있습니다.
hackerb9

실제로, 나는 틀렸다. 죄송합니다. 필터링 된 출력을 선택하면 원하지 않는 헤드폰과 스피커를 통해 소리가 들립니다. 나는 그것을 분리하는 방법을 알지 못했다
user1738984

3

SMPlayer에 볼륨 정규화가 있습니다. 소프트웨어 센터로 이동 하여이 멋진 플레이어를 다운로드 한 다음 오디오 옵션에서 볼륨 표준화를 활성화하십시오 :)


1

이전에는 VLC 미디어 플레이어에서 영화를 재생하는 동안 오디오 표준화 문제가 있었지만 인터넷을 통한 검색은 거의 없었습니다. 이에 대한 완벽한 솔루션을 찾을 수 있었고 아래에서 공유하여 혜택을 누릴 수도 있습니다 ....

오디오 표준화 VLC 수정 / 오디오가 동기화되지 않음 VLC 수정


2
Ask Ubuntu에 오신 것을 환영합니다! 이 이론적으로 질문에 대답 할 수 있습니다 동안, 바람직 할 것이다 여기에 대한 대답의 본질적인 부분을 포함하고 참조 할 수 있도록 링크를 제공합니다.
Kevin Bowen

0

대안과 함께 dysoncompressor 사용을 제안하는 위의 솔루션에 대한 의견이 있습니다.

매뉴얼에서 :

 2.37  Dyson compressor (dysonCompress, 1403)
Peak limit (dB)
Controls the desired limit of the output signal in dB's.
Release time (s)
Controls the time taken for the compressor to relax its gain control over the input signal.
Fast compression ratio
I have no clear idea what this controls.
Compression ratio
I have no clear idea what this controls. 

http://plugin.org.uk/ladspa-swh/docs/ladspa-swh.html#tth_sEc1.1

패키지 작성자는 마지막 두 값이 무엇을 제어하는지 알 수 없습니다. 그렇다면 마지막 두 값으로 무엇을 입력해야하는지 어떻게 알 수 있습니까?

플러그인 자체는 control = 0,0.25,0.5,0.5를 제안합니다

$ analyseplugin /usr/lib/ladspa/dyson_compress_1403.so

Plugin Name: "Dyson compressor"
Plugin Label: "dysonCompress"
Plugin Unique ID: 1403
Maker: "Steve Harris <steve@plugin.org.uk>"
Copyright: "GPL"
Must Run Real-Time: No
Has activate() Function: Yes
Has deactivate() Function: No
Has run_adding() Function: Yes
Environment: Normal or Hard Real-Time
Ports:  "Peak limit (dB)" input, control, -30 to 0, default 0
    "Release time (s)" input, control, 0 to 1, default 0.25
    "Fast compression ratio" input, control, 0 to 1, default 0.5
    "Compression ratio" input, control, 0 to 1, default 0.5
    "Input" input, audio
    "Output" output, audio

sc4와 같이 문서화 된 것처럼 보이는 다른 압축기 중 하나를 사용해 보는 것이 좋습니다.

load-module module-ladspa-sink  sink_name=ladspa_sink  plugin=sc4_1882 label=sc4  control=0,101.125,401,0,1,3.25,0

이 대체 압축기는 나에게 더 잘 들리지만 답변에 나열된 제어 매개 변수는 아무런 영향을 미치지 않는 것 같습니다. 임계 값 레벨은 0 (압축 안 함)으로 설정되고 비율은 1로 설정됩니다 (압축 되더라도 1 : 1을 사용하므로 신호가 변경되지 않음). 대신 control = 0,101.125,401, -22,10,3.25,0과 같은 것을 사용할 수 있으므로 -22dB 이상은 1:10으로 압축됩니다. 이들은 의도적으로 다소 극단적 인 값이므로 필터의 효과를 듣고 값을 미세 조정할 수 있습니다.
Zoltan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.