我正在开发一个记录麦克风输入的应用程序,同时必须能够通过扬声器播放 MP3 文件。
我需要取消 MP3 文件的回声。我尝试使用回声消除器,但它不起作用。
现在我已经在我的项目中集成了 speex 库。回声消除器函数界面如下所示:
public native static short[] process(short[] inputFrame, short[] echoFrame);
问题是我不知道如何获取"echoFrame"(当前播放的MP3文件的数据(。我正在使用媒体播放器来播放它。
是否可以取消 MP3 文件中的回声?或者我必须将 MP3 转换为 PCM 并通过原声带播放?感谢您的阅读。
据我所知,您应该使用 PCM。AEC 不适用于压缩音频格式。