1.一般我们在动画中用代码加载声音,下面列举一些控制声音的方法
给文件库里的声音加链接,双击文件右边的链接起个类名,比如bg_sound,然后把它加载进动画中
var bgsound: bg_sound = new bg_sound();
然后声音对象有几个常用属性:
然后播放声音是这个方法:
声音名.play(播放头(默认为0), 播放循环次数(默认为0), 播放分配声道(一般默认为空));
然后要控制声音的停止和音量,必须调用类soundChannel,它有stop()方法,position属性,soundtransform用来控制音量,还有complete事件,下面上代码。
2.具体代码
import flash.media.SoundChannel;
var pos; //声音停止的位置
var bgsound: bg_sound = new bg_sound(); //加载进声音
var channel: SoundChannel = new SoundChannel(); //声道
channel = bgsound.play(); //把声音的控制交给声道
//暂停
btn.addEventListener(MouseEvent.CLICK, fn)
function fn(e)
{
pos = channel.position;//注意保存位置必须要在声道停止之前,否则会错误
channel.stop();//注意声音本身是无法stop的,就是不能bg_sound.stop()
}
//播放
btn2.addEventListener(MouseEvent.CLICK, fn2)
function fn2(e)
{
channel = bgsound.play(pos);
}
//停止
btn3.addEventListener(MouseEvent.CLICK, fn3)
function fn3(e)
{
pos = 0;
channel.stop();
}
3.注意事项
当我们做动画把声音直接拉入影片剪辑时(主时间轴不会)如果有返回前面帧的地方,它也会把声音重播一遍的。
所以建议声音全部用代码加入,不用数据流。