`
hgfghww7
  • 浏览: 44835 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

AS3制作MP3波形图

阅读更多

示地址:
http://www.taoshaw.com/taoshaw/study/wave/wave.html
类文件:
//版权所有:淘沙网:http://www.taoshaw.com
package {
//导入基本显示列表构造块类
import flash.display.Sprite;
//创建矢量形状
import flash.display.Graphics;
//允许您在应用程序中使用声音
import flash.media.Sound;
//控制应用程序中的声音
import flash.media.SoundChannel;
//全局声音控件的静态属性和方法
import flash.media.SoundMixer;
//可捕获单个 HTTP 请求中的所有信息
import flash.net.URLRequest;
//创建 Event 对象的基类
import flash.events.Event;
//类提供用于优化读取、写入以及处理二进制数据的方法和属性
import flash.utils.ByteArray;
//创建wave类
public class wave extends Sprite {
  //初始化所需变量
  private var sound:Sound;
  private var ba:ByteArray;
  private var num:Number;
  private var sound_channel:SoundChannel;
  private var t:Number=0;
  //构造wave函数
  public function wave():void {
   sound=new Sound()  ;
   ba=new ByteArray()  ;
   sound.load(new URLRequest("music.mp3"));
   sound_channel=sound.play();
   //添加事件帧听
   this.addEventListener(Event.ENTER_FRAME,boxingtiaodong);
  }
  //boxingtiaodong函数
  private function boxingtiaodong(event:Event) {
   graphics.clear();
   drawFunction(1,0xccff00);
  }
  //drawFunction函数
  private function drawFunction(chuxi:Number,color:Number) {
   graphics.lineStyle(chuxi,color,100);
   //获取音谱信息
   SoundMixer.computeSpectrum(ba,false,0);
   //绘制声波曲线
   for (var i=30; i  30) {
     var fi=stage.stageHeight / 2 + num;
     graphics.lineTo(i,fi);
    } else {
     graphics.moveTo(30,stage.stageHeight / 2 + num);
    }
   }
  }
}
}然后在FLA文件文档类中,写上类名wave即可。
源文件下载:

 
wave.rar
   
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/4564.html
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics