Daha fazla yerel yankı giderme

Önceki denemeden devam ediyoruz. Chrome M68'de, hangi yankı iptal edicinin kullanıldığını kontrol etmek için deneysel bir MediaStreamTrack kısıtlaması ekledik, Windows'da yerel yankı iptal edici için destek ekledik ve macOS'te yerel yankı iptalicinin işlevselliğini iyileştirdik. Daha önce olduğu gibi, tüm bunlar bir Kaynak Denemesinin arkasındadır. Bu nedenle, kaydolmak veya denemek isterseniz Chrome'u bir komut satırı işaretiyle başlatmanız gerekir. Daha fazla bilgi için aşağıya bakın.

Yenilikler:

Öncelikle, getUserMedia çağrılarınıza yeni bir kısıtlama ekleyerek artık hangi yankı iptali cihazının kullanıldığını kontrol edebilirsiniz.Örneğin:

echoCancellationType: type

Burada type şunlardan biri olabilir:

  • Tarayıcı tarafından sağlanan yazılım uygulamasını kullanmak için browser veya
  • Temel sistem tarafından sağlanan uygulamayı kullanmak için system. Şu anda bu uygulama, macOS ve Windows'daki uygulamalardan biridir.

Bu kısıtlamayı dışarıda bırakırsanız Chrome, her zaman olduğu gibi yankı giderme aracını seçer: Donanım yankısı gidermesi varsa bu özellik kullanılır, aksi takdirde Chrome'un yazılım yankı iptali özelliği kullanılır. Sınırlama belirtilmediğinde, Chrome hiçbir zaman bu denemenin parçası olan iki deneysel yankı iptal ediciden birini seçmez.

echoCancellationType diğer tüm kısıtlamalar gibi çalıştığından, ideal değer olarak system öğesini belirtebilir ve varsa Chrome'un bunu kullanmasını sağlayabilir ya da aksi takdirde browser değerine geri dönebilirsiniz. browser echoCancelType, Chrome'da her zaman kullanılabilir. Hangi yankı iptalinin seçildiğini öğrenmek için getUserMedia ses parçasından getSettings() yöntemini çağırabilir ve echoCancellationType alanının değerini kontrol edebilirsiniz.

Son olarak, bir MediaStreamTrack için getCapabilities() çağrısı yaparak hangi yankı iptali cihazlarının kullanılabileceğini kontrol edebilirsiniz. Ancak echoCancellationType, InputDeviceInfo için henüz uygulanmadı.

Windows yankı giderme desteği

Yerel yankı iptali desteğini, Ses Yakalama DSP bileşenini kullanarak Windows'u içerecek şekilde genişlettik. macOS echo iptal edicide olduğu gibi, performansını değerlendirmek ve yalnızca ses donanımına daha yakın yerleştirilmesi için olsa da yazılım çözümümüzden daha iyi performans gösterdiği durumlar olup olmadığını görmek istiyoruz. macOS'teki durumun aksine, Windows'daki ilk testimiz pek umut verici olmadı. Daha iyi performans göstermesini sağlayıp sağlayamayacağımızı görmek için uygulamada küçük değişiklikler yapmaya devam edeceğiz. Şimdilik en iyisi, Windows yankı iptalcisi ile daha büyük ölçekte deneme yapmaktan kaçınmaktır. Yerel makineniz gibi kontrollü ayarlarda deneyin, ancak sorunsuz çalışacağını beklemeyin.

macOS yankı giderme desteği iyileştirildi

Bir önceki deneme sırasında macOS uygulamasında, kullanılan çıkış cihazının doğru şekilde izlenebilmesi mümkün değildi. Bu da bilgisayarın varsayılan cihazı olmayan cihazlardan yankının giderilemeyeceği anlamına geliyordu. macOS, mikrofonlu kulaklık gibi bir öğe takıldığında veya çıkarıldığında varsayılan cihazları otomatik olarak değiştirebildiğinden çoğu durumda bu durum bir sorun oluşturmayabilir. Ancak, bu yöntem her durumda düzgün çalışmaz.

Bu işlev, Chrome M68'e eklenmiştir ve hem macOS hem de Windows yankı giderme özelliği için uygulanmıştır. Chrome'un yazılım yankı giderme özelliği, oynatma sesinin iptal edilmesini sağlamak için dahili bir geri dönüş kullandığından bu işlev eksikliğinden etkilenmemiştir.

Denemeyi etkinleştirme

Sitenizde bu yeni davranışı elde etmek için "Yerel AEC için deneysel destek" Kaynak Denemesine kaydolmanız gerekir. Yalnızca yerel olarak denemek istiyorsanız denemeyi komut satırında etkinleştirebilirsiniz:

chrome --enable-blink-features=ExperimentalHardwareEchoCancellation

Bu işaretin komut satırına geçirilmesi, yeni echoCancellationType kısıtlamasını mevcut oturum için Chrome'da global olarak kullanılabilir hale getirir. Bu kısıtlamayı kullanarak, uygulamanızdaki yerel yankı iptallerini yukarıda açıklandığı gibi test edebilirsiniz. Bu, önceki denemedeki komut satırı işaretiyle aynıdır; Chrome M68'de yeni işlev etkinleştirilir. Yeni kaynak denemesi etkinleştirildiğinde yalnızca yeni işlev etkinleştirilir. Chrome'un eski sürümlerindeki bu işlem önceki deneme sürümünü tetiklemez.

Geri bildirim gönderme

Önceki denemede olduğu gibi, macOS ve Windows yankı iptal edicilerin (öncelikli olarak) nitel performansıyla ilgileniyoruz. Ayrıca yeni echoCancellationType kısıtlamasının uygulamada ne kadar iyi çalıştığı, kullanımının ne kadar kolay olduğu gibi konularda da geri bildirim almak isteriz. Bu kısıtlamanın getSettings ve getCapabilities içine dahil edilmesi de dahildir.

Ayrıca, bu yerel yankı önleyicileri kullanırken Chrome'un diğer uygulamalarla nasıl etkileşime girdiğini ve ayrıca, uygulamayla ilgili herhangi bir kararlılık sorunu veya diğer sorunları da merak ediyoruz.

Bunu deniyorsanız lütfen geri bildiriminizi bu hata sayfasında gönderin. Mümkünse hangi donanımın kullanıldığını (OS sürümü, donanım modeli, mikrofon / kulaklık / mikrofon vb.) belirtin. Daha büyük ölçekli denemeler yapıyorsanız nesnel veya öznel olmasına bakılmaksızın sesli arama kalitesiyle ilgili karşılaştırmalı istatistik bağlantılarının verilmesine önem verilir.