Expand my Community achievements bar.

echo cancellation

Avatar

Level 4

So does AFCS have echo cancellation for voip calls?   I know connect pro is supposed to and I know that the stock flash player with stratus does not.   Sorry if this is an obvious question.

Thank you,

Eric

65 Replies

Avatar

Employee

We will test this again on different Windows environments and get back to you. Thanks!

Avatar

Employee

I just checked in and thinking to take a nap

I will look for you guys after I get some sleep

Cheers,

Mihai Corlan | Developer Evangelist | Adobe Systems

Blog: http://corlan.org <http://corlan.org/>

Twitter: http://twitter.com/mcorlan Mobile: +40 731 498 764

Avatar

Level 4

mihai, raff, thanks for the responses. have you had a chance to test?

Avatar

Employee

Hi Adam,

Sorry for the delayed response. Our QE's tested AEC on a Win XP machine, and it seemed to work for them.

Did you try checking the useEchoSuppression flag, Can you test on a different Windows machine and check if you have the same issues. Also we have had other users use the AEC feature, and would have known if they faced any issues.

Thanks

Arun

Avatar

Level 4

hey arun, thanks for the reply.  i hadn't tried the echo supression flag because i thought it was an old option from the previous flash player.  i don't have access to an XP machine at the moment but will try and let you know.

i tried the SWF you guys published because i was having trouble with my own application and AEC not working.  it seems i did have it working at one point, and then after a few changes, echo had returned.

i think i may have a configuration problem.  can you tell me exactly what i should be doing to enable AEC in my app?  there are a few threads in this forum regarding that, but some are outdated and i want to confirm the steps.

i'm building using Flash Builder Burrito (still the preview, haven't installed the first release)

- use the LCCS SWC configured for AEC that is linked in this forum

- compile using flex 4.1 sdk

- target 10.3.0 player

- additional compiler option of -target-player=12

- 10.3 playerglobal.swc in [flex sdk 4.1 root]/frameworks/lib/player/12.0

do i need to call Microphone.getEnhancedMicrophone() and useEchoSupression(true) ? i have not been doing that - i assume that the LCCS swc has already been configured to do so?

thanks

adam

Avatar

Employee

Hi Adam,

The app I built also follows the steps you mentioned. You dont have to do use Microphone.getEnhancedMicrophone() or useEchoSupression(true), and as you mentioned we do it for you in the get selectedMic() api.

Can you share your code if possible.

Thanks

Arun

Avatar

Level 1

We also have a problem. Our code is:

---

this.mic = Microphone.getEnhancedMicrophone(miccb.selectedIndex);
var options : MicrophoneEnhancedOptions = new MicrophoneEnhancedOptions();
options.mode = MicrophoneEnhancedMode.FULL_DUPLEX;
options.autoGain = false;
options.echoPath = 128;
options.nonLinearProcessing = true;
this.mic.enhancedOptions = options;
               
this.mic.addEventListener(SampleDataEvent.SAMPLE_DATA, micSampleDataHandler);
this.mic.setUseEchoSuppression(true);
this.mic.setLoopBack(false);
this.mic.gain = 90;
this.ns.attachAudio(this.mic);

---

Mainly problem is because recipient do not receive any audio at all. Looks like microphone is not getting initialized in some version of Flash Player. We have tried 4 different version of Flash Player:

1) 10.3beta - works fine, at least we can hear audio on the recepient end!

2) 10.3 RC1 - NOT working, we can't hear sound on the recipient end. also tried few other example we were able to find in the Internet with AEC

3) 10.3 Release (10.3.181.14) - NOT working, same as RC1

4) 11 Incubator - works fine (tested in firefox 4.0.1, Google Chrome 11.0.696.68)

We made tests on several computer driven on Windows 7, Windows XP, Ubuntu 11. Test was made with FMS 3.5 and 3.1 server.

To analyze the problem we have added a trace function:

---

private function micSampleDataHandler(event:SampleDataEvent):void{
  trace("micSampleDataHandler: " + event.data.bytesAvailable);
}

---

and result of trace is:

1) without AEC, initialization of microphone is this.mic = Microphone.getMicrophone();

---

netStatusStreamHandler NetStream.Publish.Start
micSampleDataHandler: 1024
micSampleDataHandler: 1024
micSampleDataHandler: 2048
micSampleDataHandler: 2048
micSampleDataHandler: 2048
micSampleDataHandler: 1024
micSampleDataHandler: 1024
micSampleDataHandler: 1024
micSampleDataHandler: 1024
micSampleDataHandler: 2048
micSampleDataHandler: 1024
micSampleDataHandler: 1024
micSampleDataHandler: 1024

---

etc.... so it WORKS if we do not initialize AEC

2) with AEC initialized: this.mic = Microphone.getEnhancedMicrophone();

---

netStatusStreamHandler NetStream.Publish.Start

---

and NO data from Microphone.

Should I post it as Bug somewhere? if yes, let me know where.

Avatar

Former Community Member

Hi There,

Thanks for the extremely detailed report - this is the sort of leg-work

that makes our jobs SO much easier. Much appreciated.

A quick question : Are you using a system with more than one microphone?

Say, an internal mic, a USB mic, etc?

thanks

nigel

Avatar

Employee

Hi Alen,

Are you working with LCCS ?

We did test AEC and it seemed to work for us with player versions you mentioned. Can you double check again at your end.

Thanks

Arun

Avatar

Level 1

Thanks Nigel, we are also developers and completely understand detailed report is very helpful.

we actually tried different computers

1) We have 2 mic devices on Windows 7

* Internal mic on the motherboard (Intel platform with Core-i5 processor)

* USB dirven Mic embedded into webcam

2) there was 1 mic on Windows XP

* Internal on the motherboard  (AMD based Athlon 64 X2)

3) there was 1 mic on Ubuntu 11

* Internal mic on the Motherboad (AMD based Athlon 64 X2)

situation is identical on all computers, looks like it does not related to the hardware where Flash application is played on. We also tested it with our client in Australia, and he was getting similar issues.

Avatar

Level 1

Thanks Arun,

actually I saw this Flash application, but actually I am not sure how I should understand if it works for me?

basically I can move Gain, I can click on Enter... thats all. I don't see any dynamic changes like I think there should be Mic volume bar running/changing? I also don't hear anything.  Probably this application is not working for me as well.

I am using Chrome browser and  here is my screenshot:

adobe_fp_aec_issue.JPG

Menu is Russian but Flash Player version is in English and its 10.3.181.14. Same version says if I go to http://www.adobe.com/software/flash/about/

Hope that helps!

Thank you and have a nice weekend!

Avatar

Level 1

Hi guys, any word yet?

I did more testing today and figured one interesting thing.

I have 2 microphone devices:

1) Standard microphone on the motherboard (works fine for me in Skype and in Flash without AEC)

2) USB camera with embedded microphone (also works fine in Skype and in Flash w/o AEC activated)

today did some tests with your application

http://blogs.adobe.com/arunpon/files/2011/05/Audio103.swf

And I mentioned one important things on the Mic preferences in Flash, see screenshot:

adobe_aec_issue.png

As soon as I initialize Mic with AEC looks like there is no data from my default microphone. However it works fine if I use it without AEC initialization on the same  Flash Player 10.3

Avatar

Former Community Member

Hi There,

How are you initializing the mic with AEC? Everything seems to work for me

as well.

nigel

Avatar

Former Community Member

Hello.

We have same problem to. I registered it to the JIRA (http://bugs.adobe.com/jira/browse/FP-7065).

Out code for mic initialization:

        private function initMicrophone():void

        {

            _microphone = Microphone.getEnhancedMicrophone();

            _microphone.codec = SoundCodec.SPEEX;

            microphone.rate = 44;

            microphone.enableVAD = false;

            microphone.noiseSuppressionLevel = 0;

            microphone.setSilenceLevel(0);

                    var options:MicrophoneEnhancedOptions = new MicrophoneEnhancedOptions();

                    options.mode = MicrophoneEnhancedMode.FULL_DUPLEX;

                    options.autoGain = true;

                    options.echoPath = 128;

                    options.nonLinearProcessing = true;

                    _microphone.enhancedOptions = options;

        }

Avatar

Level 4

Hi,

I just started seeing this also. Where the prompt for the mic go up but no sound. It seems like if you stop publishing then publish again. it starts working.

According to the room console the mic is on, and you can hear people in the room console but others cant hear on the real site.

I havnt done anything to the audioSubscribers. But have been tweeking the publisher for thoes who dont have 10.3

_audioPub = new AudioPublisher();

_audioPub.codec = "SPEEX";

_audioPub.useEchoSuppression = true;

_audioPub.silenceLevel = 0;

_audioPub.silenceTimeout = 5;

As a side note. I know there wont be an official buld for a whie but any chance of a flash only swc?

thanks.

...russ

Avatar

Employee

Hi Russ,

We have a release coming pretty soon, and I could try to build a flash only swc for 10.3 with AEC support along with the release.

Thanks

Arun

Avatar

Level 4

Hi Arun,

That would be great.

I think there are a lot of folks on the board (including my self) that would love the option of AS3 only SWC for testing on things like android.

Much appreciated.

...russ

Avatar

Employee

Hi Russ,

Posted a flash only swc with AEC support @ http://forums.adobe.com/thread/860488

Thanks

Arun

Avatar

Level 1

Hi,

I developed a simple P2P chat with audio/video using FMS4 and when I activate the AEC (Microphone.getEnhancedMicrophone();) I get a 2 seconds' constant latency. Just removing the AEC (Microphone.getMicrophone();) and all become real-time again, with no delay.

Does anybody have the same problem?

How can I solve this issue?

Regards,

Flavio Mikami

Avatar

Level 1

Hi. This is to the guys from Adobe.

Do youy have any idea when you may be bringing out a fix to the issues raised, particularly those raised in postings #48, #51, #52, #55 by softservice.alen?

Please can you keep as informed of an ETA - it will assist us plan.

Thanks

Michael

Avatar

Former Community Member

Hi guys,

I think you should take these bugs to the Flash Player forum - we've got

several users saying everything's working, and the app works here for us.

It's also the case that these reports aren't for LCCS - these are folks

building FMS apps. We'd love to have time to help everybody, but we've got

to stay focused on our own product.

thanks

nigel