Уменьшить нежелательный шум - PullRequest
1 голос
/ 17 января 2011

В приведенном ниже коде иногда, когда микрофон не подключен, генерируется некоторый шум, и система просто продолжает гудеть тем же звуком. Что не так с кодом ниже и как уменьшить нежелательные шумы. Должен ли я установить myMic.setLoopBack (false) в следующем коде

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
width="300"
height="100"
creationComplete="init()">

<mx:Script>
  <![CDATA[
     import mx.controls.Alert;
     import flash.net.NetStream;

     private var myMic:Microphone;
     private var recordingState:String = "idle";

     private function init():void {

        myMic = Microphone.getMicrophone();
        myMic.setSilenceLevel(0);
        myMic.rate = 44;
        myMic.gain = 100;
        myMic.setUseEchoSuppression(true);
        micLevel.visible = true;
        //Security.showSettings(SecurityPanel.MICROPHONE);
        myMic.setLoopBack(true);
        if (myMic != null)
        {
           myMic.setUseEchoSuppression(true);
           micLevel.setProgress(myMic.activityLevel, 100);
           addEventListener(Event.ENTER_FRAME, showMicLevel);
           //micLevel.setProgress(myMic.activityLevel, 100);
        }

     }

     private function showMicLevel(event:Event):void{
        switch (recordingState){
           case "idle" :
              micLevel.setProgress(myMic.activityLevel, 100);
              break;
        }

       }







  ]]>
  </mx:Script>

    <mx:ProgressBar x="0" y="36" mode="manual" id="micLevel" label="" labelPlacement="bottom" width="100" fontSize="10" fontWeight="normal"/>


  </mx:Application>

1 Ответ

0 голосов
/ 17 января 2011

Попробуйте сделать myMic.silenceLevel (20) или более высокое целое число и проверьте. Это должно решить проблему.

...