Chrome 64'te, echoCancellation
kısıtlamasının etkin olduğu getUserMedia ses akışları için yeni bir davranışı deniyoruz. Bu tür yayınlarda, donanım gürültü azaltma özelliği yayın süresince geçici olarak devre dışı bırakılır. Bu sayede yankı gidericinin daha iyi performans göstereceğini umuyoruz. Bu işlev deneysel olduğundan açıkça etkinleştirilmesi gerekir. Aşağıya bakın.
Bu davranış şu anda yalnızca belirli giriş cihazlarında ve yalnızca macOS'te desteklenmektedir. Destek, Sistem Tercihleri'nin Ses panelinde açma/kapatma düğmeli "çevresel gürültü azaltma" özelliğine sahip cihazlarla sınırlıdır.
Arka plan
Yankı giderici, hoparlörlerde çalınan tüm sesleri mikrofon tarafından alınan ses sinyalinden kaldırmaya çalışır. Aksi takdirde, görüşmenin bir tarafı olarak söyledikleriniz diğer tarafların mikrofonu tarafından alınır ve size geri gönderilir. Kendi sesinizin yankısını duyarsınız.
Yankıyı giderme işleminin başarılı olması için WebRTC'nin yankı gidericisinin (Chrome'da kullanılır) mikrofondan mümkün olduğunca temiz bir ses sinyali alması gerekir. Ses yankı gidericiye ulaşmadan önce uygulanan işlemler (ör. donanım gürültü azaltma) genellikle performansını engeller. Ayrıca, yazılım gürültü azaltma özelliği zaten mevcuttur ancak yalnızca yankı gidericinin işleme yapmasının ardından çalışır.
Yeni davranışla ilgili ayrıntılar
Web geliştiricileri, Kaynak Deneme Sürümünü etkinleştirerek sitelerinde yeni davranışı etkinleştirebilir. Son kullanıcılar, Chrome'u başlatırken bir komut satırı işareti göndererek bu özelliği dünya genelinde etkinleştirebilir. Daha fazla bilgi için aşağıya bakın.
Bu ayar etkinleştirildiğinde ve bir web sayfası, giriş cihazından ses almak için getUserMedia'yı çağrdığında aşağıdakiler gerçekleşir:
echoCancellation
kısıtlaması etkinleştirilirse donanım gürültü azaltma özelliği, yeni oluşturulan ses akışı boyunca devre dışı bırakılır.Sistem genelinde olduğu için bu ayar, aynı cihazdan (ör. aynı mikrofon) gelen tüm ses giriş akışları için geçerli olur.
Donanım gürültü azaltma özelliğinin kapatılmasını isteyen son yayın kapatıldığında donanım gürültü azaltma özelliği tekrar açılır.
Donanım gürültü azaltma daha önce devre dışı bırakıldıysa Chrome durumunu değiştirmez.
getUserMedia,
echoCancellation
etkin olmadan çağrılırsa Chrome, donanım gürültü azaltma özelliğine dokunmaz.
Bu ayar kullanıcı tarafından da kontrol edilebildiğinden, kullanıcıyla belirli etkileşimler vardır:
Chrome, donanım gürültü azaltma özelliğini devre dışı bırakırsa ve kullanıcı bu özelliği tekrar etkinleştirirse Chrome, söz konusu akış için bu özelliği tekrar devre dışı bırakmaya çalışmaz.
Chrome, donanım gürültü azaltma özelliğini kapatırsa ve kullanıcı bu özelliği tekrar açıp kapatırsa Chrome, yayın sona erdiğinde bu özelliği yeniden etkinleştirir.
Davranış, denemenin etkinleştirilmesiyle geçerli olur. API'de değişiklik yapılması gerekmez.
Denemeyi etkinleştirme
Bu yeni davranışı sitenizde kullanmak için "Donanım Gürültü Engellemeyi Devre Dışı Bırakma" Origin Deneme Sürümü'ne kaydolmanız gerekir. Yalnızca yerel olarak denemek istiyorsanız komut satırında da etkinleştirebilirsiniz:
chrome --enable-blink-features=DisableHardwareNoiseSuppression
Bu işaret, komut satırında iletildiğinde özellik geçerli oturum için dünya genelinde etkinleştirilir.
Bu denemeyle değerlendirmek istediğimiz birkaç unsur vardır:
Donanım gürültü azaltma özelliğinin açık ve kapalı olması arasındaki alan içi niteliksel farklılıklar.
Bu ayarın Chrome'dan değiştirilmesi son kullanıcıyı ve çalıştırmakta olabilecek diğer yazılımları nasıl etkiler?
Bu iki konu hakkındaki geri bildirimlerinizi öğrenmekten memnuniyet duyarız. Bu özellik etkinken aramalar daha iyi mi yoksa daha kötü mü? Uygulamayla ilgili, beklenmedik davranışlara neden olan sorunlar var mı? Bu özelliği denerseniz lütfen bu hatayla ilgili geri bildirim gönderin. Mümkünse kullanılan mikrofonu/kulaklık vb. ve ortam gürültüsü azaltmayı destekleyip desteklemediğini belirtin. Daha büyük ölçekli denemeler yapıyorsanız sesli arama kalitesiyle ilgili karşılaştırmalı istatistiklere bağlantılar eklemenizi rica ederiz.