会员登录 立即注册

搜索

开启左侧

AS3与本地文件交互之——录音回放保存

[复制链接]
etthink 发表于 2013-8-4 22:59:19 | 显示全部楼层 |阅读模式
etthink
2013-8-4 22:59:19 5741 0 看全部
系统要求: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. import org.as3wavsound.WavSound;
  7. import org.bytearray.micrecorder.MicRecorder;
  8. import org.bytearray.micrecorder.encoder.WaveEncoder;
  9. import org.bytearray.micrecorder.events.RecordingEvent;

  10. stage.align = StageAlign.TOP_LEFT;
  11. stage.scaleMode = StageScaleMode.NO_SCALE;

  12. var recorder:MicRecorder = new MicRecorder( new WaveEncoder() );
  13. var player:WavSound;
  14. var _file:FileReference = new FileReference();

  15. recorder.addEventListener(RecordingEvent.RECORDING, onRecording);
  16. recorder.addEventListener(Event.COMPLETE, onRecordComplete);

  17. btn2.visible = false;
  18. btn3.visible = false;
  19. btn4.visible = false;

  20. btn1.addEventListener(MouseEvent.CLICK, startRecord);
  21. btn2.addEventListener(MouseEvent.CLICK, stopRecord);
  22. btn3.addEventListener(MouseEvent.CLICK, playBack);
  23. btn4.addEventListener(MouseEvent.CLICK, saveFile);

  24. function startRecord(event:MouseEvent):void
  25. {
  26. txtMsg.text = "正在录音";
  27. recorder.record();
  28. btn1.visible = false;
  29. btn2.visible = true;
  30. btn3.visible = false;
  31. }
  32. function stopRecord(event:MouseEvent):void
  33. {
  34. txtMsg.text = "录制完成,可以播放";
  35. recorder.stop();
  36. btn1.visible = true;
  37. btn2.visible = false;
  38. btn3.visible = true;
  39. btn4.visible = true;
  40. }
  41. function playBack(event:MouseEvent):void
  42. {
  43. txtMsg.text = "正在播放";
  44. player = new WavSound(recorder.output);
  45. player.play();

  46. btn1.visible = true;
  47. btn2.visible = true;
  48. btn3.visible = true;
  49. }
  50. function saveFile(event:MouseEvent):void
  51. {
  52. _file.save( recorder.output, "recorded.wav" );
  53. }

  54. function onRecording(event:RecordingEvent):void
  55. {
  56. displayMsg.text = "Recording since : " + event.time + " ms.";
  57. }
  58. function onRecordComplete(event:Event):void
  59. {
  60. //
  61. }
复制代码
发布测试,记得运行使用麦克风。
源码下载:
来自群组: FLASH动画与程序设计

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家多发帖,参与讨论,增进彼此了解。
  • 您可能感兴趣
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

查看:5741 | 回复:0

教育技术论坛,教育技术人交流的专业社区,专注于教育技术应用与推广!让更多的人了解教育技术,用好教育技术!
关于我们
社区简介
发展历程
联系我们
社区管理
新手指南
申请版主
申请开店
赞助我们
微信赞助
支付宝赞助

官方微信

手机版

手机APP

关于我们| 站点统计| Archiver| 手机版| 小黑屋| 帮助| 教育技术论坛  
联系电话:13355549901 地址:安徽省淮南市田家庵区朝阳街道 邮箱:sf@etthink.com ICP备案号: ( 皖ICP备10014945号 )
Copyright © 2001-2013 Comsenz Inc. All Rights Reserved.   Powered by Discuz! X3.2
快速回复 返回顶部 返回列表