flash声音特效实例精选(2)
声道的控制
左右声道的调节,我们在日常生活中经常遇到,但如果用Flash来实现,岂不更好,其实这也非常简单,在Flash中可以轻松实现,在制作过程中主要使用了ActionScript脚本进行控制,最终播放效果如图1所示,要实现这一效果,具体操作步骤如下:
图1 声道控制效果
1.新建一影片,设置其尺寸为200xpX200px(单位为像素),设置其背景色为#CCCCCC, 当然用户可以根据需要自行设置。按“Ctrl+R”,快捷键打开导入对话框,导入一声音文件。
2.新建一影片剪辑“drum”,选中第1帧,插入一关键帧,在工作区中绘制一小喇叭图案,如图2所示:
图2 设计影片剪辑“drum”
3.返回主场景,在第一帧处插入一关键帖,选中该帧,将导入的音乐拖放到工作区中,选中第4帧插入一关键帧,将影片剪辑“drum”拖放到工作区,创建两个实例,分别命名为“lbox”和“rbox”,使用文本工具在两实例之间输入文本“Stereo Control”,当然这是多余的。可以根据需要自行设计。效果如图3所示:
图3 设计主场景
4.选中第4帧,为其添加如下ActionScrip脚本:
direction = _xmouse/2-100;
//将鼠标的横坐标除2后减去100个单位,并将值赋给变量direction
s = new Sound( );
//获取声音对象的实例
s.setPan (direction);
//指定声音的左右均衡。有效值的范围为 -100 到 100,其中 -100 表示仅使用左声道,100 表示仅使用右声道,而 0 表示在两个声道间平均地均衡声音,由于direction是随鼠标位置的改变而改变的。所以移动鼠标可以控制声道。
if (direction < 0 ) {
with (_root.lbox) {
_yscale = Math.abs (direction)+100;
//将实例“lbox”的尺寸沿纵坐标方向放大到direction的绝对值加100个单位
_xscale = Math.abs (direction)+100;
//将实例“lbox”的尺寸沿横坐标方向放大到direction的绝对值加100个单位
}
} else
{
with (_root.rbox) {
_yscale = Math.abs (direction)+100;
//将实例“rbox”的尺寸沿纵坐标方向放大到direction的绝对值加100个单位
_xscale = Math.abs (direction)+100;
////将实例“rbox”的尺寸沿横坐标方向放大到direction的绝对值加100个单位
}
}
5.在第6帧插入一关键帧,删除工作区中的实例和文本,并为该帖添加如下ActionScript脚本:
gotoAndPlay(4);
//返回第4帧,以实现影片的循环播放。
5. 保存作品,按“Ctrl+Enter”预览最终效果。