Acoustic Echo Cancellation with Adobe Air on mobile
Asked Answered
U

4

7

Does anybody achieved echo cancellation in mobile application built by Adobe Air?

There are:

  • Microphone.getEnhancedMicrophone() but it returns null on mobile device.

  • Microphone.setUseEchoSuppression(true) also doesn't work.

  • Maybe with ANE? I saw echo suppression settings in Apple Docs

Anybody?

Underfeed answered 22/2, 2013 at 20:12 Comment(1)
If getEnhancedMicrophone() is returning null, it means it's not supported. Perhaps it is possible that you can do this w/an ANE, but at that point you're probably not getting a Flash Microphone object (it would be the device's native implementation of microphone access), and it's likely you couldn't do all the things you could do w/the Flash Microphone class, like attach it to a NetStream.Polyphonic
T
1

It is now implemented in the latest AIR SDKs (v22 and v23).

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

So you can now use Microphone.getEnhancedMicrophone().

And you will also need to add this permission for Android:

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

Tedman answered 12/10, 2016 at 16:43 Comment(0)
M
1

There is no known solution currently. Echo suppression has been promised for 4 years. The above code will NOT work as Microphone.setUseEchoSuppression(true) does not work on Android using Adobe AIR. 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. 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.

Mcandrew answered 28/5, 2013 at 0:43 Comment(0)
B
1

No, Microphone.setUseEchoSuppression does nothing. It is just a placeholder function that Adobe planned to implement at some point.

As of December 17, 2015, Adobe has not addressed AEC for AIR on mobile devices, on both Apple and Android platforms.

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).

I haven't seen any other indications that Adobe is going to do this or not. 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. Just need mobile to create omni-channel video solutions.

Barometer answered 17/12, 2015 at 21:47 Comment(0)
T
1

It is now implemented in the latest AIR SDKs (v22 and v23).

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

So you can now use Microphone.getEnhancedMicrophone().

And you will also need to add this permission for Android:

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

Tedman answered 12/10, 2016 at 16:43 Comment(0)
B
0

Your device does not support enhancedMicrophone so just use getMicrophone:

    mic = Microphone.getMicrophone();
    mic.rate = 44;
    mic.setUseEchoSuppression(true);
Brookbrooke answered 2/4, 2013 at 2:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.