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

[AS3]AS3录音回放与保存

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

系统要求:flash CS5以上(保证flashplayer播放器10.2以上),需要几个第三方的 类,org.as3wavsound.WavSound,org.bytearray.micrecorder.MicRecorder,org.bytearray.micrecorder.encoder.WaveEncoder, org.bytearray.micrecorder.events.RecordingEvent,附件里面有。
打开flash CS5,新建AS3文档,舞台上放置四个按钮:btn1、btn2、btn3、btn4,两个动态文本框:txtMsg、displayMsg,
第一帧写代码:

  1. import flash.display.StageAlign; 
  2. import flash.display.StageScaleMode; 
  3. import flash.events.Event; 
  4. import flash.events.MouseEvent; 
  5. import flash.media.Microphone; 
  6.  
  7. import org.as3wavsound.WavSound; 
  8. import org.bytearray.micrecorder.MicRecorder; 
  9. import org.bytearray.micrecorder.encoder.WaveEncoder; 
  10. import org.bytearray.micrecorder.events.RecordingEvent; 
  11.  
  12. stage.align = StageAlign.TOP_LEFT; 
  13. stage.scaleMode = StageScaleMode.NO_SCALE; 
  14.  
  15. var recorder:MicRecorder = new MicRecorder( new WaveEncoder() ); 
  16. var player:WavSound; 
  17. var _file:FileReference = new FileReference(); 
  18.  
  19. recorder.addEventListener(RecordingEvent.RECORDING, onRecording); 
  20. recorder.addEventListener(Event.COMPLETE, onRecordComplete); 
  21.  
  22. btn2.visible = false
  23. btn3.visible = false
  24. btn4.visible = false
  25.  
  26. btn1.addEventListener(MouseEvent.CLICK, startRecord); 
  27. btn2.addEventListener(MouseEvent.CLICK, stopRecord); 
  28. btn3.addEventListener(MouseEvent.CLICK, playBack); 
  29. btn4.addEventListener(MouseEvent.CLICK, saveFile); 
  30.  
  31. function startRecord(event:MouseEvent):void 
  32. txtMsg.text = "正在录音"
  33. recorder.record(); 
  34. btn1.visible = false
  35. btn2.visible = true
  36. btn3.visible = false
  37. function stopRecord(event:MouseEvent):void 
  38. txtMsg.text = "录制完成,可以播放"
  39. recorder.stop(); 
  40. btn1.visible = true
  41. btn2.visible = false
  42. btn3.visible = true
  43. btn4.visible = true
  44. function playBack(event:MouseEvent):void 
  45. txtMsg.text = "正在播放"
  46. player = new WavSound(recorder.output); 
  47. player.play(); 
  48.  
  49. btn1.visible = true
  50. btn2.visible = true
  51. btn3.visible = true
  52. function saveFile(event:MouseEvent):void 
  53. _file.save( recorder.output, "recorded.wav" ); 
  54.  
  55. function onRecording(event:RecordingEvent):void 
  56. displayMsg.text = "Recording since : " + event.time + " ms."; 
  57. function onRecordComplete(event:Event):void 
  58. // 

 

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

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

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

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