İçeriğe göre ses seviyesi otomatik olarak ayarlanır mı?


51

Farklı ses kaynaklarında ses seviyesi farklıdır. Hemen hemen her medya içeriğinde ses seviyesini ayarlamak çok can sıkıcı. Bazen, daha önce sessiz bir şeyiniz olduğunda daha yüksek sesle ayarlamak zorunda kalıyordunuz ve bir süre sonra başka bir medya oynatmak istiyorsunuz - bang! beklenmedik şekilde kulaklıklarınızı kırar, ses çok yüksek!

Peki, her medya içeriğindeki ses seviyesini otomatik olarak ayarlayabilen bir eklenti / özellik var mı?


Yanıtlar:


38

LADSPA eklentisi ile ses seviyesini ayarlama

Giriş seviyesinden bağımsız olarak oldukça normalleştirilmiş bir ses çıkış seviyesi elde etmek için, ses çıkışını PulseAudio üzerinden filtrelemek için bir LADSPA eklentisi kullanabiliriz.

Asgari olarak, böyle bir kompresör eklentisi gerekiyor dysonCompressor gelen swh-eklentileri SWH eklentilerini yükle henüz mevcut değilse yüklü olması gerekmektedir.

Bizim varsayılan lavabonun adını öğrendikten sonra

pacmd list-sinks

ve eklentinin tam adını depolandığı şekliyle /usr/lib/ladspa/(burada sistemimde dyson_compress_1403) aşağıdaki komutu verebiliriz

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

Çıktı havuzunun tam adı <alsa_output>ile değiştirin (sistemimde bunun öyleydi ).alsa_output.pci-0000_00_14.2.analog-stereo

Sıkıştırılmış çıkış şimdi Ses Ayarları menüsünden ladspa_sinkerişilebilen yeni oluşturulan çıkış havuzunda duyulabilir .

görüntü tanımını buraya girin

Kompresör eklentisi için kontrol ayarları aşağıdaki gibidir: tepe sınırı, serbest bırakma süresi, hızlı oran, oran . Bu kontroller için daha fazla detay, varsayılan ve minimum maksimum değer için eklenti dokümanlarına bakınız .

Oynatmanın kırpılmasını önlemek için bu eklentiyi sıkıştırma işleminden sonra bir sınırlayıcı ile birleştirebiliriz. Biz kullanabilir fast_lookahead_limiterusta lavabo yukarıdan bizim yeni oluşturulan lasdpa_sink şimdi olmak bunun için:

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

Kaynak: Yukarıdaki ayarlar , bricen'in blogundaki miscfits blogunda pulseaudio'ya uyarlandı.


çok havalı! Yukarıdaki çıkış girişini seçerek farkı hemen duyabiliriz! btw, cmd sadece testler için bunları kaldırmak pacmd unload-module module-ladspa-sinkve normalize lavabosu seçmek içinpacmd set-default-sink ladspa_normalized
Kova Gücü

Bir aksaklık yaşıyorum, ses seviyesi aniden çok sessizleşiyor, ses yüksekliği önlemek için değiştirilmiş gibi ve sonra ppl'nin ne dediğini duymak için ses seviyesini bir adım yükseltmek zorunda kalıyorum, ama sonra biraz yüksek oluyor .. Acaba eğer bir tür "ekolayzır normalleştiricisi" olabilirse, tüm frekansların müzik, ses efektleri ve insanların konuşmalarını normal şekilde normalize edilmiş ve asla çok yüksek sesle duymamızı sağlayacak dinamik bir şekilde yönetilir. Herhangi bir ipucu / fikir?
Kova Gücü

1
@AquariusPower Sanırım, eklentinin hacminin ne kadar olabileceğini önceden tahmin etmeye çalışmasından kaynaklanıyor ... bunun için 5 ms kodlanmış gibi görünüyor. Başka bir sınırlayıcı ile örneğin TAP setinden deneyebilirsiniz : 12.5 ms gecikmeli veya başka bir kompresöre sahip tap-plugins.sourceforge.net/ladspa/limiter.html (örneğin, MLT mltframework.org/bin/view/MLT/FilterLadspa-1072). ) ... ancak bunu denemedim.
Takkat

mmm ... Şunu da eklemeliyim ki, yaşadığım sorun sadece ladspa uyguladıktan hemen sonra oynadığım şansla oynadığım tek bir youtube videosunda olmuş gibi görünüyor; Bu oyunlar dahil her şey için harika çalışıyor! Bu diğer ipuçlarına da thx, onları kontrol edeceğim!
Kova Gücü

1
controlParametreyi control=-12,1,0.5,0.990 yerine -12 kullanarak yansıtmak için değiştirin. Bu, yalnızca -12 dB'nin üzerindeki seslerin sıkıştırılacağı (yumuşatılacağı) anlamına gelir; Film izlerken (örneğin NetFlix'teki KIRMIZI 2), vokallerin patlamalara kıyasla hala çok sessiz olduğunu bulursanız, bu değişikliği yapın.
Jonathan Neufeld

15

Takkat'ın çözümü iyi, ama işte daha basit ve kalıcı bir varyasyon.

Sadece iki adım var:

  1. apt-get install swh-plugins
  2. Aşağıdakileri kesin ve ~ / .config / pulse / default.pa adlı bir dosyaya yapıştırın :

    .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
    

Bir sonraki oturum açışınızda (veya çalıştırdığınızda pulseaudio -k), normalleştirme otomatik olarak varsayılan ayar olarak açılır.


"Master" parametresini atlamanın etkisi nedir? Bu durumda lavabonun efendisi olarak yapılandırılmış olan nedir?
Nicolay Doytchev

Merhaba Nicolay: Kaynak kodu okudum, NULL bir dizginin "@ DEFAULT_SINK @" ile aynı olduğunu gösterir. (Ayrıca bakınız, 216, ya da öylesine, namereg.c). Ama neden soruyorsun? Çözümümle ilgili herhangi bir sorun varsa, düzeltmek istiyorum.
hackerb9

Merhaba, bu yanıtta çözümü kullanmadan hoparlörler ve kulaklıklar arasında fişleri açmadan geçiş yapabilmek için kullanmaya başladım ve Ses kontrol panelinde yalnızca hoparlörler için filtrelenmiş çıkışlar alıyorum. Kulaklık çıkışı için nasıl çalışacağına dair bir fikrin var mı?
user1738984

Emin değilim, ama belki de her çıktı için bir tane olmak üzere iki filtre çalıştırmanız gerekir. Veya, kulaklıkları / hoparlörleri ayrı çıkışlara böldükten sonra belki de normalleşmenin gerçekleşmesi gerekir.
hackerb9

Aslında, yanılmışım, bunun için üzgünüm: ne olur ki, filtrelenmiş çıkışı seçersem, istemeyeceğim hem kulaklıklardan hem de hoparlörlerden ses geliyor. Nasıl ayrılacağını
çözmedim

3

SMPlayer'da hacim normalizasyonu mevcuttur. Yazılım merkezine gidin ve bu harika oyuncuyu indirin, ardından ses seçeneklerinde ses normalleştirmeyi etkinleştirin :)


1

Daha önce VLC medya oynatıcımda film oynatırken ses normalleştirme sorunları yaşıyordum ancak İnternet üzerinden çok az arama yaptım. Bunun için mükemmel bir çözüm buldum ve bundan faydalanabildim.

Ses Normalleştirme VLC Düzeltme / Senkronize Etme VLC Fix


2
Ubuntu'ya Sormaya Hoş Geldiniz! Bu soruyu teorik olarak cevaplayabilse de , cevabın temel kısımlarını buraya eklemek ve referans için bağlantıyı sağlamak tercih edilir.
Kevin Bowen

0

Alternatif olarak, dysoncompressor kullanımı öneren yukarıdaki çözümlere bazı yorumlar var.

Kılavuzdan:

 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

Paketin yazarı son iki değerin neyi kontrol ettiğini bilmiyor. Öyleyse, son iki değer olarak girmeniz gerekenleri nasıl söyleyebilirsiniz?

Eklentinin kendisi kontrol = 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 gibi daha iyi belgelenmiş görünen diğer kompresörlerden birini denemenizi bile öneririm.

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

Bu alternatif kompresör bana daha iyi geliyor, ancak cevabında listelenen kontrol parametrelerinin herhangi bir etkisi görünmüyor. Eşik seviyesi 0 olarak ayarlanır (asla sıkıştırılmaz) ve oran 1 olarak ayarlanır (sıkıştırılmış olsa bile, sinyali değiştirmeyen 1: 1 kullanır). Kontrol = 0,101.125,401, -22,10,3.25,0 gibi bir şey kullanabilirsiniz, böylece -22dB'nin üstündeki herhangi bir şey 1:10 oranında sıkıştırılır. Bunlar kasıtlı olarak bir dereceye kadar aşırı değerlerdir, böylece bir kişi filtrenin etkisini duyabilir ve sonra değerleri ayarlayabilir.
Zoltan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.