问题标签 [aec]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
audio - WebRTC:非 10 毫秒音频帧可能吗?
有没有人尝试更改 WebRTC 中的音频帧大小?它使用 10ms 帧。我需要一个不同的尺寸,而且代码看起来没有希望......
windows - 使用核心音频 API 消除回声
有人尝试使用 Windows Core 音频 API 取消回声吗?我想知道它有多好用。
java - 是否可以为 2^14 音频帧实现 65 微秒 FFT?
我正在开发一个 Java 项目,我需要在 65 微秒内实现 FFT 转换。FFT 的输入是 2^14 个实数。我已经尝试过可以从 Internet 上找到的每个 Java FFT 库,例如 JTransforms 和 Apache Common Math,但没有一个可以达到这个速度。最快的库是 JTransforms,但仍然需要大约 1 毫秒。那么有人可以告诉我是否有可能在 JAVA 中达到这样的速度(65 微秒)?据我所知,在这种情况下,C 库 FFTW 可以足够快,但我不能在这里使用 JNI,我需要一个纯 Java 实现,因为它将作为 Applet 部署在网站中。
PS 我的工作是使用 FFT 将 2^14 音频帧传输到频域,然后对其应用声学回声消除算法 (MDF)。2^14 由普通房间的标准回声延迟决定。
谢谢!!!
android - Speex 回声消除配置
我正在使用它的 AudioRecord 和 AudioTrack 类以及通过 NDK 的 Speex 来制作一个 Android 到 Android VoIP(扬声器)应用程序来进行回声消除。我能够成功地传入 Speex 的 speex_echo_cancellation() 函数并从中检索数据,但回声仍然存在。
这是录制/发送和接收/播放音频的相关android线程代码:
以下是相关的 NDK/JNI 代码:
这些代码运行良好,音频数据肯定是从 android-to-android 发送/接收/处理/播放的。给定 8000 Hz 的音频采样率和 2000 字节/1000shorts 的数据包大小,我发现需要 1000 的 frameSize 才能使播放的音频流畅。filterLength 的大多数值(根据 Speex 文档又名尾长)将运行,但似乎对回声消除没有影响。
有没有人足够了解 AEC 来为我提供一些关于实施或配置 Speex 的指示?谢谢阅读。
java - Android 上的 WebRTC AEC
我正在为Android开发一个SIP 软电话应用程序,并面临回声消除问题。我尝试使用Speex解决它,但没有成功。所以我的下一个镜头是WebRTC AEC(声学回声消除),但我找不到任何关于如何使用它的文档。
在我的应用程序中,音频由 Java 中的 AudioTrack 和 AudioRecord 类管理,但发送和接收的套接字在 C 代码中(与 JNI 集成)。WebRTC 是一个大型项目,我只想集成 AEC 模块。
有人知道我必须包含哪些文件,编译器需要哪些标志,要执行哪些函数调用,等等?我有 CSipSimple 代码,它也使用 WebRTC(但也用于其他用途),我找不到包含和使用它的简单和正确的方法。
谢谢。
audio - 检测声音文件或设备中的回声或侧音
我需要从未静音的电话听筒中检测回声/侧音。
基本上,我在我的麦克风静音电脑上拨打电话听筒。然后我从电脑向手机播放声音,并记录听筒传入的音频。
我需要检测我拨打的电话是否静音。如果它没有静音,我应该在音频文件中看到一些侧音/回声。
目前,我在看到原始音频中的任何回声时遇到问题。
是否有任何软件或算法可以运行音频文件来检测回声/侧音?
我应该播放任何特定的音调或频率来产生最大的回声吗?
c# - 如何在 Silverlight C# 上实现声学回声消除,我正在使用 speex
我一直在研究 Silverlight 语音聊天应用程序,使用 speex(基本上是 C# 移植的 Jspeex)进行编码和解码。我想实现以下内容:
- 在 C# 中使用 Speex 进行声学回声消除:我一直在环顾四周,还没有找到可行的解决方案,或者真的不确定如何做到这一点。
- 声音的质量非常嘈杂,每 30 秒就会中断一次。
以下是我迄今为止实现的代码:
/*******************************编码******************* ***************/
/****************************解码******************** *******************/
我一直在调整 speex 编码和解码类以获得最佳语音质量,但没有运气。并且一直在 speex 类中搜索我可以访问和实现的任何 AEC,这里也没有运气,但是 speex 文档提到了 C++ 中的 AEC,但不清楚如何在 C# 中实现。
我是 C# 开发的新手,请指导,如果可能的话,请指出一个可以帮助我实现这个 AEC 并提高语音质量的方向。我很感激任何指导。
谢谢!
algorithm - Flash 中的算法回声消除器
有人知道 Flash 中 Echo Canceller 的算法和架构/方案是什么吗?
webrtc - webrtc AEC算法
我制作了一个使用 WebRTC DSP 库(AEC、NS、AGC、VAD)的软件。现在我需要知道每个算法使用什么算法来写我的硕士论文,但我没有找到任何相关信息。
有人知道这个库的算法,特别是声学回声消除(例如 NLMS,我知道它很常用,但我不知道 WebRTC 是否也使用它)。
我试图了解查看源代码的算法,但我还不够了解。
提前致谢!
android - 回声消除
有谁知道仅适用于一个扬声器的 Android AEC 吗?假设我与我的 Android 手机通话,它将音频数据流式传输到 PC,PC 会立即在扬声器上输出这些数据。所以我会听到自己的声音。
我不确定 WebRTC- 和 Speex-AEC 是否只能消除另一个扬声器的回声。