宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

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

2016-10-13 00:16:48 点击量:15 标签: 收藏本文

[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 类】源代码示例

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室