Uygulamaların Linux'ta ana ses seviyesini kontrol etmesini önleme


11

VLC, Rhythmbox veya YouTube'daki bir videodaki ses seviyesini her değiştirdiğimde ana ses seviyesini, yani sistem ses seviyesini değiştirir. Bunun olmasını nasıl önleyebilirim?

Debian 7.0.0 (wheezy) xfce4 ile çalıştırıyorum, aşina olmadığım PulseAudio kullanıyor gibi görünüyor. İşte xfce ile birlikte gelen "Mixer" uygulamasının ekran görüntüsü:

resim açıklamasını buraya girin

Evet, "zincir" simgesinin işaretini kaldırmayı denedim. Yükledim pavucontrolama bunu değiştirmek için bir seçenek yok gibi görünüyor:

resim açıklamasını buraya girin

Yanıtlar:


9

Bu Gentoo wiki makalesi burada geçerli olabilir: PulseAudio uygulama başına ses düzeyi denetimi :

PulseAudio, uygulama başına ses düzeyi denetimini destekler, ancak varsayılan olarak bu, yalnızca bu birimleri yalnızca pulseaudio ses düzeyi denetim yardımcı programından denetleyebileceğiniz için pek bir şey yapmaz. Yani Audacious gibi bir uygulamada, çıkış cihazı PulseAudio olarak ayarlandığında ve ses seviyesi kontrolü donanıma ayarlandığında, uygulama başına ses seviyesi kontrolünü değil ana ses seviyesi kontrolünü ayarlayacaktır.

Bu davranışı gidermek için aşağıdakileri ayarlayın: /etc/pulse/daemon.conf

flat-volumes = no

Şimdi Audacious ses seviyesini ayarlamaya gittiğinde, yalnızca audacious ses seviyesini ayarlayacaktır ve böylece ana ses kontrolü üzerinde savaşan birden fazla uygulamanız olmayacaktır.


Teşekkürler, ama işe yaramadı. Hem ses düzeyini pulseaudio GUI'den ( burada görüldüğü gibi ) hem de uygulamanın kendisinden ( burada ) değiştirmek sistem hacmini değiştirir. Değişiklikleri yaptıktan sonra bilgisayarı yeniden başlattım. Dosyayı kontrol ettim ve değişiklikler gerçekten kaydedildi
Alex

Debian wheezy görünüşte PulseAudio sürüm 2.0-6.1 kullanıyor. Deneysel dağıtımda bulunan 3.0-1 sürümüyle ilgili yukarıdaki önerileri deneyebilirsiniz.
harrymc

@Alex Doğru. PulseAudio ve PA özellikli uygulamalar uzun yıllar boyunca istediğiniz gibi çalıştığı için Debian'a özgü olma sorununun üzerine bahse girerim.
Michael Hampton

Ame sorunu var - yoksa farklı bir varyant mı? Ana ve tüm uygulama hacimleri, örneğin% 35 olarak ayarlanmıştır. Master'ı (ve kendisini)% 100'e ayarlayan ancak diğerlerini (şimdi göreceli)% 35'ine bırakan bir uygulama başlatıyorum. Bu uygulamadan çıkıyorum, master% 100, tüm uygulamalar şimdi% 35 ile sınırlı (Arch Linux'tayım). Hala buna bir çözüm arıyor.
bossi

1

Sorununuzu doğru bir şekilde yorumlarsam, bulduğum çözüm budur:

Sorun

Bir uygulama ses seviyesini kontrol ettiğinde (örn. Onu maksimuma ayarlar), sistem ses seviyesini etkiler ve uygulamaların ses seviyelerini oldukları yerde bırakır, örneğin pavucontrolher seferinde yeniden ayarlama yapmayı gerektiren etkili bir şekilde "kapatır" .

Initial settings:
  system      |========o--------|
  application |========o--------|

Controlling application adjusts:
  system      |================o|
  application |========o--------|

Result when bringin system volume level down again:
  system      |========o--------|
  application |===o-------------|

Çözüm

Benim durumumdaki kurulum, pulseaudio-daemon'u yapılandırmaya izin veriyor gibi görünen üç farklı yere sahip :

  1. /etc/pulse/daemon.conf
  2. ~/.pulse/daemon.conf
  3. ~/.config/pulse/daemon.conf

To decouple (bu genellikle sistem genelinde donanım ses kontrolleri eşleştirilen ne örn olan) ana kontrol ve uygulamaları ikisinin ya birbirlerini etkilemeden, benim için çalıştı aşağıdakiler kendi hacmini kontrol vardır:

  • set flat-volumes=noiçinde2.
  • flat-volumes1'de ayar olmadığından emin olun . veya3.
  • pulseaudio'yu yeniden başlat :
    • pulseaudio -k
    • pulseaudio --start

Sonuç

İzin Vermek

ses seviyesi kaydırıcı kontrolünün değeri ve
ses kazanımı komşularınızı sallayan etkili ses basıncı olmalıdır

  • Sonuç
    1. kendi egemen ses seviyesine sahip bir uygulama ve
    2. Bir küresel sistem ses seviyesi de olan, sadece kendisi tarafından etkiledi.
  • Uygulamanın sonuçta elde edilen maksimum ses seviyesi kazancı (hoparlörlerinizden gelir), sistem ses seviyesi o anda ayarlanmış olan değerle sınırlandırılır .
  • Artan sistem ses seviyesi orantılı artacaktır etkili hacim kazancı uygulaması çıkışı üzerinden üretir, ama değil kendi ses seviyesi .

Bir örnek

flat-volumes = yes
  1. Uygulamalar sistem sesini "yukarı iter": Örneğin sistem hacmi% 60'tır; uygulama hacmi% 60'ın altında serbestçe hareket eder, ancak mevcut sistem hacmini aştığında sistem sesini "yukarı iter"
  2. Bir uygulama ses seviyesini maksimuma ayarlayabilir (örneğin, sahip olduğum bir durumda kodi). Öyleyse, sistem ses seviyesi (maks.) Olarak ayarlanırken, diğer uygulamaların seviyeleri oldukları yerde kalır. Bu noktaya kadar bu davranış etkili hacim kazancını korur, ancak hacmi maksimum çıkışa ayarlayan uygulama, tüm düzeyler bulundukları yerde kalır, sistem hacmini maksimumda tutar ve uygulama hacimleri artık göreceli konumlarında kapatılır.
flat-volumes = no
  1. Uygulama birimi , sistem birimini hiç etkilemez.
  2. Bir uygulama ses seviyesini maksimuma ayarlayabilir (örneğin, sahip olduğum bir durumda kodi). İle düz hacimleri devre dışı, bu yok değil bunlar diğer tüm uygulama ses düzeylerini bırakarak sistem birimi etkilemez ancak sadece kendi.
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.