博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
flash 声音设置
阅读量:4167 次
发布时间:2019-05-26

本文共 4670 字,大约阅读时间需要 15 分钟。

声音

声音对象允许你设置和控制指定MC中的声音。或者你可以通过在产生新的声音对象时,不指定target选项来控制整体MC中的声音。你必须使用构造函数 new Sound() 来产生一个声音对象的实例,才能调用声音对象的成员函数来控制它。
声音对象只能被Flash5的播放器支持。
声音对象的成员函数列表:
----------------------------------------------------------------------
构造函数 说明
----------------------------------------------------------------------
attachSound(); 绑定参数中指定的声音。
getPan (); 返回上次 setPan 函数调用的结果。
getTransform(); 返回上次 setTransform 函数调用的结果。
getVolume(); 返回上次 setVolume 函数调用的结果。
setPan(); 设置声音的左右均衡值。
setTransform(); 设置声音的变换。
setVolume(); 设置声音的音量值。
start(); 开始播放声音,从起始位置开始或者从参数中设置的偏移点开始播放。
stop(); 停止播放指定的声音或者停止当前播放的所有声音。
----------------------------------------------------------------------------------
声音总览
声音部分将使用相当大的一部分硬盘和内存空间。因为立体声将使用单声道声音的两倍空间,一般最好使用22-Khz,16-bit的单声道声音。你可以使用SetTransform函数来将单声道声音以立体声的方式来播放,或者将立体声播放成单声道,而且可以对声音加上一些有趣的效果。
声音对象的构造函数:
语法:
new Sound();
new Sound(target);
参数:
target 用于指定生成的声音对象所在和控制的MC。该参数是可选参数。
说明:
成员函数;作用是产生指定的MC中的新声音对象,该对象将用于控制这个MC中的声音,如果没有指定target参数,则产生的对象将控制所有的时间线上的声音。
播放器:
flash5或以后版本
例子:
GlobalSound = new Sound();
MovieSound = new Sound(mymovie);
Sound.attachSound
语法:
mySound.attachSound("idName" ) ;
参数:
idName 声音对象的新实例名。这个名字和元素的Linkage Properties对话框中输入的标识名是相同的。该参数必须包含在""中。
说明:
成员函数;该函数的作用就在于将idName所指定的声音元素绑定到指定的声音对象中。绑定的声音元素必须位于当前的库中,并且在元素的Linkage Properties对话框中指定输出。大家可以使用Sound.start来开始播放声音。
播放器:
Flash5或以后版本
例子:
Sound.getPan
语法:
mySound.getPan();
参数:
说明:
成员函数;该函数返回上次 setPan 调用后设置的声音均衡值,数值为在-100~100的整数。这个值将控制当前以及以后播放的声音的左/右平衡。
该成员函数与setVolume和setTransform函数相关。
播放器:
Flash5或以后版本
例子:
Sound.getTransform
语法:
mySound.getTransform();
参数:
说明:
成员函数;返回指定声音对象中上一次 setTransform 调用后的声音变换信息。
播放器:
Flash5或以后版本
例子:
Sound.getVolume
语法:
mySound.getVolume();
参数:
说明:
成员函数;返回当前音量值,数值在0~100,其中0为静音,100为音量最大值,缺省设置为100。
播放器:
Flash5或以后版本
例子:
Sound.setPan
语法:
mySound.setPan(pan);
参数:
pan 设置声音左右均衡度的一个整数值,范围在-100~100之间。-100表示只使用左声道,100表示只使用右声道,等于0表示左右声道平均分配。
说明:
成员函数;决定声音是如何在左右声道(音箱)中播放的。对于单声道声音,pan将影响声音到底是通过哪个音箱(左或者右)播放。
该成员函数同setVolume和setTransform函数相关,调用了该函数将删除和重新设置先前的setPan()和setTransform()函数的设置值。
播放器:
Flash5或以后版本
例子:
下面例子将使用setVolume 和 setPan 来控制指定目标"u2"中的声音对象:
onClipEvent(mouseDown){
//产生一个新的声音对象并且
s =new Sound(this);
//绑定一个库中的声音元素
s.attachSound("u2" ) ;
//设置音量值为 50%
s.setVolume(50);
//将右声道的声音关掉
s.setPan(-100);
//从声音的第30秒开始播放,并循环播放5次。
s.start(30,5);
Sound.setTransform
语法:
mySound.setTransform(soundTransformObject);
参数:
soundTransformObject 是一个通过调用特殊对象Object的构造函数生成的对象。
说明:
成员函数;设置声音对象的声音变换信息。该函数和 setVolume 以及 setPan 相关,调用该函数将修改先前 setPan 或 setVolume 所做的设置。该函数是为那些想在声音中添加有趣的效果的专家们所设置。
soundtransformobject 参数是一个对象,你通过调用特殊对象Object的构造函数来生成它,它的参数指定了声音是如何分布在左/右声道(音箱)中的。
soundtransformobject 对象的参数如下:
ll 指定声音左边输入值在左音箱中播放的百分数(-100到100)。
lr 指定声音右边输入值在左音箱中播放的百分数(-100到100)。
rr 指定声音右边输入值在右音箱中播放的百分数(-100到100)。
rl 指定声音左边输入值在右音箱中播放的百分数(-100到100)。
输出将按以下的公式给出:
左边输出=左边输入*ll+右边输入*lr
右边输出=右边输入*rr+左边输入*rl
左边输入值以及右边输入值由播放的声音对象的类型(立体声或者单声道)来决定。
立体声将声音输入平均划分到左右两个音箱中,具有如下缺省变换设置:
ll =100
lr =0
rr =100
rl =0
单声道将所有的声音输入在左音箱中播放,缺省变换设置如下:
ll =100
lr =100
rr =0
rl =0
播放器:
Flash5或以后版本
例子1:
下面的例子将产生一个声音变换对象,将所有左声道和右声道的声音都放到左声道播放。
mySoundTransformObject =new Object
mySoundTransformObject.ll =100
mySoundTransformObject.lr =100
mySoundTransformObject.rr =0
mySoundTransformObject.rl =0
上面的代码产生一个声音变换对象,为了将它应用到一个声音对象中,你需要象下面那样通过setTransform将它放入声音对象中:
mySound.setTransform(mySoundTransformObject);
下面的例子中,可以使用setTransform进行设置,但是不能使用setVolume 或者 setPan来设置,即使是组合起来用。
这个代码将左右声道的声音都在左声道中播放:
mySund.setTransform(soundTransformObjectLeft);
上面的代码中,soundTransformObjectLeft具有如下的参数:
11 =100
1r =100
rr =0
rl =0
例子2:
下面代码将立体声当作单声道声音来播放:
setTransform(soundTransformObjectMono);
在上面的代码中,soundTransformObjectMono具有如下参数:
ll =50
lr =50
rr =50
rl =50
例子3:
这个代码将左声道的声音对半分开,一半在左声道中播放,另一半加到右声道中播放。
setTransform(soundTransformObjectHalf);
上面代码中,soundTransformObjectHalf具有如下参数:
11 =50
lr =0
rr =100
rl =50
Sound.setVolume
语法:
mySound.setVolume(volume);
参数:
volume 声音的音量值,一般为0~100。100是全音量,0表示音量为0。缺省设置为100。
说明:
成员函数;该函数用于设置声音对象的音量值。
该函数和 setPan 和 setTransform 函数相关。
播放器:
Flash5或以后版本
参考:
setPan的例子。
Sound.start
语法:
mySound.start();
mySound.start([secondOffset,loop]);
参数:
secondOffset 一个可选的参数,允许你在一个指定点上开始播放声音。例如,如果你有一个30秒的声音,希望能在声音的中间开始播放。在secondOffset参数中指定15,声音将不是延时15秒,而是在第15秒处立即开始播放。
loop 一个可选的参数,允许你指定声音播放的循环次数。
说明:
成员函数;开始播放最后一次绑定的声音,如果不指定时间偏移的话,将从头开始播放。或者从secondOffset参数中所指定的偏移点上开始播放。
播放器:
Flash5或以后版本
参考:
setPan的例子。
Sound.stop
语法:
mySound.stop();
mySound.stop(["idName"]);
参数:
idName 可选参数,用于指定要停止播放的声音。idName必须包括在双引号""中。
说明:
成员函数;用于控制声音的停止,没有参数idName为停止当前所有声音的播放,如果指定了idName,则只停止播放指定的声音。
播放器:
Flash5或以后版本
例子:
_soundbuftime
语法:
instancename._soundbuftime
setProperty("movieclip",_soundbuftime,"integer" ) ;
参数:
integer 声音开始流式播放前的秒数
movieclip MC的名字
说明:
全局属性;确定声音流预缓冲的秒数。缺省值为5秒。
播放器:
Flash4或以后版本

转载地址:http://magxi.baihongyu.com/

你可能感兴趣的文章
5月英语总结--I will do it well.
查看>>
认识JS
查看>>
Google浏览器--翻译一定要“出去”吗?
查看>>
bash:ifconfig:未找到命令
查看>>
送给毕业的歌
查看>>
嵌入式100题(017):malloc的底层实现
查看>>
嵌入式100题(018):在1G内存的计算机中能否malloc(1.2G)?为什么?
查看>>
嵌入式100题(019):指针与引用的相同和区别;如何相互转换?
查看>>
嵌入式100题(040):什么是三次握手
查看>>
嵌入式100题(037):Http1.1和Http1.0的区别
查看>>
嵌入式100题(038):HTTPS与HTTP的一些区别
查看>>
嵌入式100题(042):为什么服务端易受到SYN攻击?
查看>>
嵌入式100题(043):什么是四次挥手
查看>>
嵌入式100题(044):为什么客户端最后还要等待2MSL?
查看>>
嵌入式100题(045):为什么建立连接是三次握手,关闭连接确是四次挥手呢?...
查看>>
嵌入式100题(028):static的用法(定义和用途)
查看>>
嵌入式100题(027):char和int之间的转换
查看>>
嵌入式100题(029):const常量和#define的区别(编译阶段、安全性、内存占用等)...
查看>>
嵌入式100题(030):volatile作用和用法
查看>>
嵌入式100题(033):TCP、UDP的优缺点
查看>>