Ana içeriğe geç

Akustik Yankı Giderme

Streaming Sound Wave ve Capturable Sound Wave gibi türetilmiş tipleri, Akustik Yankı Giderme'yi (AEC) destekler. AEC, bir render sinyalinin (örneğin, hoparlörlerden çalan ses) oynatılmasından kaynaklanan, yakalanan mikrofon sesindeki yankıyı giderir. Sonuç, gerçek zamanlı iletişim senaryolarında daha temiz bir ses yakalamadır.

Eklenti, AEC'yi WebRTC AEC3 uygulaması aracılığıyla, yalnızca ilgili AEC3 kodunu içeren hafif bir uzantı eklentisi olarak sağlar. WebRTC AEC3, gerçek zamanlı iletişim uygulamalarında yaygın olarak kullanılan yüksek kaliteli bir akustik yankı gidericidir. Hoparlörler ve mikrofon arasındaki akustik yolu modelleyerek, yakalanan sinyalden yankıyı çıkarır.

Kurulum

Akustik Yankı Giderme'yi kullanmak için WebRTC AEC3 uzantı eklentisini kurmanız gerekir:

  1. Runtime Audio Importer eklentisinin projenizde zaten kurulu olduğundan emin olun
  2. WebRTC AEC3 uzantı eklentisini buradan indirin
  3. İndirilen arşivden klasörü, projenizin Plugins klasörüne çıkarın (bu klasör yoksa oluşturun)
  4. Projenizi yeniden derleyin (bu uzantı bir C++ projesi gerektirir)
important
  • WebRTC AEC3, Runtime Audio Importer tarafından desteklenen tüm motor sürümlerini destekler (UE 4.24, 4.25, 4.26, 4.27, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6 ve 5.7)
  • Bu uzantı kaynak kodu olarak sağlanır ve kullanmak için bir C++ projesi gerektirir
  • Eklentileri manuel olarak nasıl derleyeceğiniz hakkında daha fazla bilgi için, Building Plugins tutorial öğreticisine bakın

Temel Kullanım

Tipik bir AEC iş akışı üç adım içerir:

  1. Streaming/capturable ses dalganızda AEC'yi etkinleştirin
  2. Render ses dalgasında, 10 ms'lik kare teslimi için render parça boyutunu yapılandırın
  3. Sesi, yakalama sinyalinden yankıyı gidermek için kullanılacak olan render ses dalgasını bağlayın

AEC'yi Etkinleştirme

Bir streaming ses dalgası oluşturduktan sonra AEC'yi etkinleştirmek için ToggleAEC işlevini kullanın. AEC işlemcisi için örnekleme hızını ve kanal sayısını belirtmelisiniz. Gelen yakalama veya render sesi bu değerlerle eşleşmezse otomatik olarak yeniden örneklenir, ancak yapılandırılan örnekleme hızı yine de kaliteyi (örneğin, 48000 Hz, 16000 Hz'den daha iyi yankı giderme sağlayacaktır) ve performansı etkiler, bu nedenle yeniden örneklemeye bırakmaktansa bu değerleri bilinçli olarak seçmeye değer.

Toggle AEC node

AEC'nin şu anda etkin olup olmadığını kontrol edebilirsiniz:

Is AEC Enabled node

Render Parça Boyutunu Yapılandırma

WebRTC AEC3, sesin 10 ms'lik parçalar halinde işlenmesini gerektirir. Render ses dalgasının ses verisini doğru çerçeve boyutunda sağlamasını sağlamak için, render Imported Sound Wave (hoparlörlerden çalınan ses dalgası) üzerinde SetNumSamplesPerChunk işlevini kullanın.

Doğru parça başına örnek sayısını hesaplamak için formül şudur:

Samples per chunk=SampleRate100\text{Samples per chunk} = \frac{\text{SampleRate}}{100}

Örneğin, 48000 Hz ses için: 48000 / 100 = 480 örnek parça başına.

Set Num Samples Per Chunk node

Render Ses Dalgasını Bağlama

AEC'yi etkinleştirdikten ve parça boyutunu yapılandırdıktan sonra, sesinin yakalama sinyalinden yankıyı tanımlamak ve kaldırmak için kullanılacağı render ses dalgasını bağlayın. Bu tipik olarak, mikrofonun algılayabileceği hoparlörlerden çalınan ses dalgasıdır:

Bind AEC To Sound Wave Playback node

Ses dalgasının bağını çözmek için:

Unbind AEC From Sound Wave Playback node

Ek Yapılandırma

Akış Gecikmesi

Render ve yakalama ses yolları arasındaki tahmini akış gecikmesini (milisaniye cinsinden) ayarlayabilirsiniz. Bu, donanım ve sistem gecikmesini hesaba katar, ancak WebRTC AEC3 bu gecikmeyi birçok durumda otomatik olarak tahmin edebilir:

Set AEC Stream Delay node

AEC'yi Sıfırlama

Dahili AEC işlemci durumunu istediğiniz zaman sıfırlayabilir, böylece birikmiş herhangi bir yankı modelini temizleyebilirsiniz:

Reset AEC node

ipucu

WebRTC AEC3, 8000, 16000, 32000 ve 48000 Hz örnekleme hızlarını destekler. Uyumsuz ses otomatik olarak yeniden örneklenir, ancak bu bir performans yükü getirir. En iyi kalite ve performans için 48000 Hz kullanın ve hem yakalama hem de oynatma akışlarının gerçek ses yapılandırmasını eşleştirin.