利用FLASHMX中的ACTION命令----SETRANSFORM指令不但可以实现SETVOLUME(音量数值大小)和SETPAN(声道的平衡),,。而且还可以做到左右声道设置比例的混音,,。也就是说。,原来左声道的声音可以在右声道输出。,右声道的声音可以在左声道输出。,, 呵呵,,。不知道大家能不能看明白,。
该动作指令的语法为: mysound.settransform(soundtransfromobject);
各项参数:mysound ---- 要进行声音转换的声音对象名称,。,。
soundtransformobject -----用object对象构造函数构造的对象,,。它具备的属性:
ll:指定左声道输入在左声道中播放的白分数(—100~100),默认值100。
lr:指定右声道输入在左声道中播放的百分数(—100~100),默认值 0。
rr:指定右声道输入在右声道中播放的百分数(—100~100),默认值100。
rl:指定左声道输入在右声道中播放的百分数(—100~100),默认值为0。
先看看实例,为了突出效果,音频文件没有压缩,打开的时候可能慢点,请耐心等待,。
制作步骤:
一、首先按CTRL+R导入一段音乐文件,可以是MP3、或者WAV格式的,。只要FLASH支持就行。
在库里找到这段音乐,点右键选择联接-给标识符命名(图1),
二、新建两个按钮,一个声音转换,一个声音还原。然后把这两个按钮拉入场景
在场景第一桢加AS脚本,。
xinyun=new Sound();//创建声音对象实例名为 "xinyun"
xinyun.attachSound("xy");//将符号库中的符号“XY”复制到实例“xinyun”中
objSndTran=new Object();//构建声音转换对象
objSndUndo = xinyun.getTransform();//读取声音转换数据。(图2)
开始播放按钮上的AS:
on (press) {//单击鼠标时
xinyun.stop();//停止播放 "xinyun"
xinyun.start();//开始播放"xinyun"
} (图3)
停止按钮上的AS:
on (press) {//单击时
xinyun.stop();//停止播放“xinyun”
}(图4)
三、①声道转换按钮的AS(也是最重要的一步):
on (release) {//释放鼠标时.
objSndTran.ll = 100;//设置声音转换对象的"ll"属性为100.
objSndTran.lr = 100;//设置声音转换对象"lr"的属性为100.
objSndTran.rr = 100;//设置声音转换对象"rr"的属性为100.
objSndTran.rl = 100;//设置声音转换对象的"rl"的属性为100.
xinyun.setTransform(objSndTran);//进行声道转换.
} (图5)
②声音还原按钮上的as指令:
on (release) {//释放鼠标时.
xinyun.setTransform(objSndUndo);//将声音转换为原来的设置
}
(图6)
这个实例可将输出的立体声音转换为非立体声--混音输出,也可以恢复原来的立体声,。
好了,。CTRL+ENTER 测试一下吧,仔细听一下,声音的效果还是有差别的。 :)
点击浏览该文件