0 Replies Latest reply on May 31, 2011 2:46 PM by ptamilar

    Echo cancellation does not work when NetStream.bufferTime > 0

    ptamilar Level 1

      I'm testing echo cancellation with flash 10.3 using the code below:

       

      m = Microphone(Microphone['getEnhancedMicrophone']());
      if (m)
      {
          var options:MicrophoneEnhancedOptions = new MicrophoneEnhancedOptions();
          options.mode = MicrophoneEnhancedMode.FULL_DUPLEX;
          options.autoGain = false;
          options.echoPath = 256;
          options.nonLinearProcessing = true;
          m['enhancedOptions'] = options;
      }

      m.codec = SoundCodec.SPEEX;
      m.framesPerPacket = 1;
      m.encodeQuality = 6;
      m.setSilenceLevel(0);
      m.setUseEchoSuppression(true);

       

      If I play this stream from another machine with a bufferTime = 0 it seems to work more or less.  When the bufferTime > 0, or there is any sort of network delay, echo cancellation does not work at all, as if I had never enabled it.  Is this a requirement of using echo cancellation?

       

      Thanks,