Mikrofon - Linux'ta statik arka plan gürültüsü bastırma


13

Ses kartım Realtek ALC 892'dir. Windows 7'de resmi Realtek sürücülerini, Linux'ta PulseAudio kullanıyorum (Ubuntu 13.10'da). Hem Windows hem de Linux'ta, mikrofon yükseltme + 30db'yi etkinleştirdiğimde (mikrofonum sessiz olduğu için gereklidir), çok can sıkıcı ve yüksek arka plan gürültüsü alıyorum (ayrıca her iki sistemde Audacity ile arka plan gürültüsünü doğruladım).

Ancak, Windows Realtek sürücülerinde çalışan gürültü bastırma seçeneği vardır (etkinleştirdikten sonra Audacity arka plan gürültüsü göstermez ve kulaklarım da arka plan gürültüsü olmadığını doğrular).

Gürültü bastırma seçeneğini gösteren görüntü

Benim sorum ALSA / PulseAudio'da arka plan gürültüsünü bastırmayı nasıl etkinleştirebilirim? Yükleyebileceğim herhangi bir modül var mı veya bunun yapılandırma dosyasında etkinleştirilebilecek bir ayarı var mı?

Bunun için bir çözüm bulamıyorum ve tamamen Linux'a geçmemi engelleyen tek şey bu - mikrofon kullanarak çok konuştuğumdan ve Windows'ta Realtek yazılımı arka plan gürültüsünü tamamen ortadan kaldırıyor ve PulseAudio bunu kaldırmıyor, ki bu da Linux'ta kaydedilen sesin çok kötü olduğu anlamına gelir.

Daha iyi ses kartı ve mikrofon satın alabileceğimi biliyorum, ancak dediğim gibi, Windows Realtek sürücüleri yazılım seviyesindeki gürültüyü gerçek zamanlı olarak kaldırıyor (yani TeamSpeak3 / Steam / hangi voip programında konuşurken gürültü yok) bu yüzden böyle bir seçenek olduğunu umuyorum Linux'ta da.

Bu da Ask Ubuntu'ya çapraz bağlı ve bu da burada zaten cevaplandı .


1
Crossposted: askubuntu.com/questions/421671/... IMO bununla hiçbir şey yanlış yok eğer sen açıkça belirtilmese. Aksi takdirde insanlar vb yinelenen yanıtları gönderme zamanlarını israf potansiyelini oluşturmak
goldilocks

2
@goldilocks, yinelenen yanıtlar olmayacağından emin olmak için çapraz bağlı olduğu her iki sitede de bilgi ekledi
user1873947

Yanıtlar:


5

Göre Realtek tarifnamede ,

  • Ses uygulamaları için Mikrofon Akustik Yankı Giderme (AEC), Gürültü Bastırma (NS) ve Işın Oluşturma (BF) teknolojisi

Yazılım Özellikleri listesinde listelenir . Ayrıca ALC892 yongaseti veri sayfasına baktım ve aslında yongasetin bir özelliği değil . Bu nedenle, bu işlevin yalnızca Windows ALC892 sürücünüz tarafından işlenen bir yazılım özelliği olduğu onaylanmıştır.

Bu nedenle, bu özel sürücüye bağlı olmayan linux üzerindeki gürültü bastırmanın daha genel çözümüne çaba göstereceğim:

/programming//q/4875818/684229


cevap için teşekkür ederim. Bununla birlikte, bağladığınız soru, statik arka plan gürültü azaltmasından farklı yankı iptali hakkında söylüyor (eko, hoparlörlerden geliyor, statik gürültüye genellikle donanım neden oluyor).
user1873947

Görünüşe göre Realtek (ve diğerleri) bu özelliğin uygulanmasından dolayı patent ihlali nedeniyle dava açtı lexology.com/library/… Orada belirtilen patentleri kontrol etmeye değer olabilir.
Fizz

Bu bağlantının dayanıklılığına ikna olmadığım için: "ABD Patenti No. 5,825,898 ('898 patenti); 6,483,923 (' 923 patenti); 6,049,607 ('607 patenti); 6,363,345 (' 345 patenti); ve 6,377,637 ('637 patenti) ".
Fizz

3

Bu, yalnızca birlikte gelen yazılımın değil (muhtemelen eski olan) cihazın bir özelliğiyse, çekirdek sürücüsünde uygulanması gerekir. 1 Bana öyle geliyor ki, Realtek PCI ses kartları normalde Intel HDA sürücüsünü ALC kodeklerini desteklemek için bir yama ile kullanıyor (ilgilenen herkes için [src]/sound/pci/hda/patch_realtek.c).

Çekirdek kaynak belgelerinde arama yaparken, bu cihazlarla ilgili olarak "gürültü bastırma" veya "eko iptali" ifadelerinden bahsedilmez. Sürücü kaynağının kendisinde arama yaparken de açıkça belirtilmemiştir. Eğer uygulanmış olsaydı, bu neredeyse kesinlikle bir arayüzde /procveya /syshangi kullanıcı alanı yazılımının kullanabileceği veya sürücü modülü seçenekleri ile belgelenecektir .

Sorun, elbette, çoğu donanım üreticisi gibi Realtek'in sürücü kaynak kodunu gizli olarak görmesi ve üçüncü tarafların örneğin Realtek'in linux gibi tam olarak desteklemediği sistemler için sürücüler oluşturmasını zor veya imkansız hale getirmesidir. . Realtek'in linux sürücüsünü listeleyen bir sayfası var , ancak bağlantılar ölü gibi görünüyor. Daha iyi şansınız varsa, birisinin buraya kurması için talimatları vardır (bu bir Nane merkezli sitedir, ancak süreç herhangi bir dağıtım için aynı olacaktır). 2

Ancak , bir yerde bir kopya bulsanız bile, sürücünün istediğiniz özellikleri uyguladığından şüpheliyim, çünkü bulabileceğim bir söz yok. Büyük olasılıkla, zaten sahip olduklarınızla hemen hemen aynıdır; biraz daha iyi olabilir (Mint sayfası çekirdek sürücüsünün yan ve arka hoparlörleri değiştirdiğinden bahseder), ancak ağaç dışı sürücüler çekirdek geliştiricileri tarafından denetlenmediğinden, daha kötü veya tamamen işlevsel olmayabilir. ve yazarların farkında olmadığı çekirdekle ilgili sorunlar içerebilir (ağaç içi hda düzeltme ekinin yazarlarının @realtek.com.twe-posta adresleri olduğunu unutmayın).

Farklı bir şey duymazsanız, muhtemelen şansınız kalmaz. Bunun için yazılım çözümleri arayabilir, bu tür özellikler görünüşe göre Skype tarafından linux üzerinde uygulanır, bu yüzden açıkça sadece yazılımı kullanarak gerçek zamanlı çalışabilirler. Birisi de üzerine bir kağıt yazmış , lol. Ne yazık ki etrafta arama şansım yoktu.

Burada, bazıalsamixer gürültü azaltma işlemlerini gerçekleştirmek için özelliklerini kullanma konusunda bir tartışma var . Bunu yapmak için pulseaudio'yu devre dışı bırakmanız gerektiğini düşünüyorum .


1. Pulseaudio aslında çekirdeğin ses alt sistemi olan ALSA'nın üzerine kurulmuş bir kullanıcı alanı aracıdır.

2. Eğer bulursanız, 2.6 sürümünü değil 3.0 sürümünü istiyorsunuz. Bu sayılar, uyumlu oldukları linux çekirdeğinin sürümünü belirtir ve siz 3.x çekirdeği kullanırsınız. Yine de, eğer sesiniz iyi değilse, sizin için bir şey yapması pek mümkün olmadığından, bununla uğraşmanızı şiddetle tavsiye ederim.


Ayrıntılı cevap için teşekkürler. Ancak burada açıklanan "webrtc-aec modülü" adlı bir şey buldum: wiki.gentoo.org/wiki/PulseAudio . Ancak sadece bu modülü destekleyen uygulamalarda çalışıyor gibi görünüyor, doğru mu? Ayrıca bunun Ubuntu'da devre dışı bırakılma olasılığı da vardır, bu nedenle PulseAudio'da bu modülü nasıl etkinleştireceğinizi biliyor musunuz?
Sorunumun

Özür dilerim. Pulseaudio modülü bir yazılım çözümü örneği olacaktır. En iyi ayrı, özel bir soru ile tedavi edilecek bir şey gibi görünüyor;)
goldilocks

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.