2011-01-17 2 views
1

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

<?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> 

ответ

0

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

+0

Попробуем и дадим вам знать .. – Rajeev

+0

Это не помогает на самом деле – Rajeev