简体   繁体   English

在移动设备上使用Adobe Air进行声学回声消除

[英]Acoustic Echo Cancellation with Adobe Air on mobile

Does anybody achieved echo cancellation in mobile application built by Adobe Air? 有人在Adobe Air构建的移动应用程序中实现回声消除吗?

There are: 有:

  • Microphone.getEnhancedMicrophone() but it returns null on mobile device. Microphone.getEnhancedMicrophone()但它在移动设备上返回null。

  • Microphone.setUseEchoSuppression(true) also doesn't work. Microphone.setUseEchoSuppression(true)也不起作用。

  • Maybe with ANE? 也许与ANE? I saw echo suppression settings in Apple Docs 我在Apple Docs中看到了回声抑制设置

Anybody? 任何人?

There is no known solution currently. 目前还没有已知的解决方案。 Echo suppression has been promised for 4 years. 回声抑制已经承诺了4年。 The above code will NOT work as Microphone.setUseEchoSuppression(true) does not work on Android using Adobe AIR. 上面的代码不能用作Microphone.setUseEchoSuppression(true)在使用Adobe AIR的Android上不起作用。 The ability to detect audio coming through Netstream also does not work so hand coding a solution using volume and gain also does not work. 检测通过Netstream传输的音频的能力也不起作用,因此使用音量和增益手动编码解决方案也不起作用。 I considering rewriting my entire video chat app because of the echo suppression issue. 我考虑重写我的整个视频聊天应用程序,因为回声抑制问题。 Adobe apparently has failed to work with Google to find a solution. Adobe显然未能与Google合作寻找解决方案。

No, Microphone.setUseEchoSuppression does nothing. 不,Microphone.setUseEchoSuppression什么都不做。 It is just a placeholder function that Adobe planned to implement at some point. 它只是Adobe计划在某些时候实现的占位符函数。

As of December 17, 2015, Adobe has not addressed AEC for AIR on mobile devices, on both Apple and Android platforms. 截至2015年12月17日,Adobe尚未在Apple和Android平台上针对移动设备上的AIR进行AEC解决。

However, a contact of mine talked with Chris Campbell at Adobe a couple of times regarding AEC for AIR Mobile, and Chris said they had cleared legal WRT licensing, and was pitching AEC for inclusion in AIR 20 (December 2015). 然而,我的一个联系人与Adobe的Chris Campbell谈了几次关于AIR Mobile的AEC,Chris说他们已经批准了合法的WRT许可,并且正在推动AEC加入AIR 20(2015年12月)。

I haven't seen any other indications that Adobe is going to do this or not. 我还没有看到任何其他迹象表明Adobe将会这样做。 I know it would be a tremendous enabler for developers of video chat-based apps, to include support for mobile devices. 我知道这对于基于视频聊天的应用程序开发人员来说是一个巨大的促成因素,包括对移动设备的支持。 We have AEC on web, and desktop AIR. 我们在网络上有AEC,桌面AIR。 Just need mobile to create omni-channel video solutions. 只需要移动设备来创建全渠道视频解决方案。

It is now implemented in the latest AIR SDKs (v22 and v23). 它现在在最新的AIR SDK(v22和v23)中实现。

https://helpx.adobe.com/flash-player/release-note/fp_23_air_23_release_notes.html https://helpx.adobe.com/flash-player/release-note/fp_23_air_23_release_notes.html

So you can now use Microphone.getEnhancedMicrophone() . 所以你现在可以使用Microphone.getEnhancedMicrophone()

And you will also need to add this permission for Android: 您还需要为Android添加此权限:

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

Your device does not support enhancedMicrophone so just use getMicrophone: 您的设备不支持enhancedMicrophone,因此只需使用getMicrophone:

    mic = Microphone.getMicrophone();
    mic.rate = 44;
    mic.setUseEchoSuppression(true);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM