·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]AS3下的麦克风接口【flash.media.Microphone 类】源代码示

时间:2016-08-24 11:04未知
[AS3]AS3下的麦克风接口【flash.media.Microphone 类】源代码示例

[AS3]AS3下的麦克风接口【flash.media.Microphone 类】源代码示例

  1. package { 
  2.     import flash.display.Shape; 
  3.     import flash.display.Sprite; 
  4.     import flash.events.ActivityEvent; 
  5.     import flash.events.Event; 
  6.     import flash.media.Microphone; 
  7.     public class SoundGame extends Sprite 
  8.     { 
  9.         private var main:Sprite; 
  10.         private var mic:Microphone; 
  11.           
  12.         private var minHigh:int = 0
  13.         private var intervalValue:int = 0
  14.           
  15.         public function SoundGame() 
  16.         { 
  17.             init(); 
  18.         } 
  19.           
  20.         //初始化 
  21.         private function init():void{ 
  22.             initMic(); 
  23.             createSky(); 
  24.             createLand(); 
  25.             createMain(); 
  26.         } 
  27.           
  28.         //初始化麦克风 
  29.         private function initMic():void{ 
  30.             mic = Microphone.getMicrophone(); 
  31.             mic.setSilenceLevel(30,0); 
  32.             mic.setLoopBack(); 
  33.               
  34.             mic.addEventListener(ActivityEvent.ACTIVITY,micActivityHandle); 
  35.         } 
  36.           
  37.         //创建操作 
  38.         private function createMain():void{ 
  39.             var mainContainer:Sprite = new Sprite; 
  40.             main = new Sprite; 
  41.             main.graphics.beginFill(0xffffff); 
  42.             main.graphics.drawCircle(-2,-4,4); 
  43.             mainContainer.x = 100
  44.             mainContainer.y = 250
  45.             mainContainer.addChild(main); 
  46.             addChild(mainContainer); 
  47.               
  48.             main.addEventListener(Event.ENTER_FRAME,frameHandle); 
  49.         } 
  50.           
  51.         //创建天 
  52.         private function createSky():void{ 
  53.             var shape:Shape = new Shape; 
  54.             shape.graphics.beginFill(0x6699cc,1); 
  55.             shape.graphics.drawRect(0,0,400,250); 
  56.             addChild(shape); 
  57.         } 
  58.           
  59.         //创建陆地 
  60.         private function createLand():void{ 
  61.             var shape:Shape = new Shape; 
  62.             shape.graphics.beginFill(0x002222,1); 
  63.             shape.graphics.drawRect(0,250,400,150); 
  64.             addChild(shape); 
  65.         } 
  66.           
  67.         //麦克风活跃处理 
  68.         private function micActivityHandle(e:ActivityEvent):void{ 
  69.             if(e.activating && intervalValue == 0){ 
  70.                 intervalValue = mic.activityLevel / 5; 
  71.             } 
  72.         } 
  73.           
  74.         //持续处理 
  75.         private function frameHandle(e:Event):void{ 
  76.             if(intervalValue == 0) return; 
  77.             main.y -intervalValue
  78.             intervalValue --; 
  79.             if(intervalValue == 0) intervalValue -1
  80.               
  81.             //落地 
  82.             var min:int = - minHigh; 
  83.             if(min < main.y){ 
  84.                 main.y = min
  85.                 intervalValue = 0
  86.             } 
  87.         } 
  88.     } 

[AS3]AS3下的麦克风接口【flash.media.Microphone 类】源代码示例

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器