#32002/4/3 22:28:58
转给你浪子的教程:
我们这个例子里面生成的音量数据文件是这个样子的:
amplitude=(78, 80, 79, 71, 66, 73, 79, 77, 72, 73, 73, 75, 80, 80, 78, 69, 64, 63, 67, 75, 77, 73, 62, 50, 57, 73, 78, 80, 79, 75, 73, 76, 79, 79, 77, 72, 66, 70, 77, 80, 77, 66, 61, 62, 70, 78, 80, 78, 68, 57, 60, 70, 77, 80, 75, 72, 74, 78, 77, 73, 73, 73, 69, 71, 77, 78, 74, 69, 68, 72, 76, 75, 77, 77, 65, 50, 57, 72, 78, 77, 72, 72, 76, 79, 76, 76, 79, 77, 71, 73, 80, 79, 75, 71, 68, 72, 76, 76, 77, 78, 71, 65, 72, 78, 76, 69, 64, 62, 71, 81, 81, 79, 79, 74, 74, 82, 83, 78, 74, 69, 64, 70, 80, 82, 78, 71, 59, 61, 72, 77, 75, 67, 66, 68, 75, 80, 78, 78, 80, 69, 66, 77, 81, 77, 68, 64, 67, 73, 79, 82, 80, 76, 61, 59, 74, 80, 81, 80, 76, 74, 79, 81, 74, 76, 76, 63, 69, 83, 85, 82, 75, 72, 75, 80, 83, 81, 77, 72, 64, 68, 81, 86, 84, 80, 77, 78, 82, 81, 81, 82, 79, 76, 80, 84, 84, 81, 73, 68, 75, 82, 84, 84, 80, 71, 43, 0)&Done=1
好,现在我们已经得到每一秒的音量了,下面可以在FLASH程序里面应用了。首先启动FLASH程序,并且设置帧速率为15帧/秒,我们建立一个空白的 MovieClip,给它一个实体名字叫作“sound”,然后再制作两个用来表示音量变化的 MovieClip,一个长方形的叫作“line”,另一个圆形的叫作“pas”。
在 sound 上面写下如下的程序:
onClipEvent (load) {
snd = new Array(78, 80, 79, 71, 66, 73, 79, 77, 72, 73, 73, 75, 80, 80, 78, 69, 64, 63, 67, 75, 77, 73, 62, 50, 57, 73, 78, 80, 79, 75, 73, 76, 79, 79, 77, 72, 66, 70, 77, 80, 77, 66, 61, 62, 70, 78, 80, 78, 68, 57, 60, 70, 77, 80, 75, 72, 74, 78, 77, 73, 73, 73, 69, 71, 77, 78, 74, 69, 68, 72, 76, 75, 77, 77, 65, 50, 57, 72, 78, 77, 72, 72, 76, 79, 76, 76, 79, 77, 71, 73, 80, 79, 75, 71, 68, 72, 76, 76, 77, 78, 71, 65, 72, 78, 76, 69, 64, 62, 71, 81, 81, 79, 79, 74, 74, 82, 83, 78, 74, 69, 64, 70, 80, 82, 78, 71, 59, 61, 72, 77, 75, 67, 66, 68, 75, 80, 78, 78, 80, 69, 66, 77, 81, 77, 68, 64, 67, 73, 79, 82, 80, 76, 61, 59, 74, 80, 81, 80, 76, 74, 79, 81, 74, 76, 76, 63, 69, 83, 85, 82, 75, 72, 75, 80, 83, 81, 77, 72, 64, 68, 81, 86, 84, 80, 77, 78, 82, 81, 81, 82, 79, 76, 80, 84, 84, 81, 73, 68, 75, 82, 84, 84, 80, 71, 43, 0);
function go () {
_root.line._yscale = sndnow;
_root.pas._xscale = sndnow;
_root. pas._yscale = sndnow;
i++;
}
}
onClipEvent (enterFrame) {
sndnow = 100+snd[i]*5;
go();
}
这样我们就可以模拟实时的音量显示了。