1、7 声音的导入声音的类型o 在Flash中,声音分事件声音和音频流两类,它们的不同之处体现在动画的播放中。o 1.事件声音事件声音n加入事件声音的Flash动画放置在网页中,必须等这个文件全部下载完毕后,才可以听到声音。无论在什么情况下,声音都会从头到尾播放,不会中断。o 2.音频流音频流n音频流可以作为Flash的背景音乐。它必须与动画播放同步,只需要下载影片开始的几帧就可以播放 声音的格式o 1MP3格式格式nMP3是经过压缩后的音频文件格式,用MP3格式存储的音乐文件大小,一般只有MAV文件的1/10,而且它的取样与编码优异,MP3虽然经过了压缩,但其音质仍然接近CD的水平。 o 2WA
2、V格式格式nWAV是直接保持对声音波形的采样数据,没有对数据进行压缩,因此音质很好,但文件体积较大,所以在Flash动画中应用WAV格式的声音素材,其声音素材都比较短,并且在发布作品时还会通过相应的设置对其进行压缩,以降低动画的最终容量。音乐的前期处理o如果音乐文件来源于CD或者自己找到的不是WAV和MP3格式的素材,这就需要借助一些第三方软件转换成Flash MX 2004支持的WAV和MP3声音格式。但是有些音乐文件即使是MP3格式的,在导入的时候会出现提示框:“读取文件出现问题,一个或多个文件没有导入” 。o这是因为虽然选择的音乐文件是MP3格式的,但并不是标准的MP3音频格式,或者说不
3、是Flash MX 2004支持的MP3音频格式,这也需要借助第三方软件转换成可以导入到Flash的MP3格式。例如Gold Wave、Cool Edit、Sound Forge等。在借助第三方软件转换时,注意采样速率的选择,采样率就是将自然界中的模拟声音转换到计算机上时的频率。例如:44.1kHz采样率指的是声音每秒钟被采样44100次。Flash支持的采样速率为44.1kHz、22.05kHz、11.025kHz。 采样率选择越高,音乐的音质效果就越好,但是得到的声音文件也越大。通常在转换时选择采样率为“Layer-3,22.05kH ,16位,立体声”的音频格式,这样就能得到比较理想的效
4、果,而且文件的体积也不会很大。导入声音方法一:使用菜单栏中的“文件导入导入到库”命令,可以将声音导入到库中。方法二:使用菜单栏中的“文件导入导入到舞台”命令,同样也可以导入声音。n 但是由于声音是不会在舞台上显示的,因此也只能是被导入到库中,效果与方法一相同。向文档中添加声音1、将声音导入库2、插入-时间轴-图层,为声音创建一个层3、选中需要添加声音的关键帧4、将声音从库面板中拉到舞台5、点击添加了声音的关键帧,对属性进行编辑设置“声音”属性o 效果:n无:不使用效果n左声道:只在左声道播放n右声道:只在右声道播放n从左到右淡出:将声音从左声道逐渐转移到右声道n从右到左淡出:声音从右声道逐渐转
5、移到左声道n淡入:在声音的持续时间内逐渐增加音量n淡出:在声音的持续时间内逐渐减小音量n自定义:可以使用“编辑封套”创建声音的淡入淡出点编辑封套o 1. 要改变声音的起始和终止位置,可拖动【编辑封套】中的“声音起点控制轴”和“声音终点控制轴”,如图所示为调整声音的起始位置。o 在对话框中,白色的小方框成为节点,用鼠标上下拖动它们,改变音量指示线垂直位置,这样,可以调整音量的大小,音量指示线位置越高,声音越大,用鼠标单击编辑区,在单击处会增加节点,用鼠标拖动节点到编辑区的外边,o 要在秒和帧之间切换时间单位,可单击右下角【秒】和【帧】按钮同步方式o 1事件n使用“事件”方式,会将声音和一个事件的
6、发生过程同步起来。事件声音在显示其起始关键帧时开始播放,并独立于时间轴完整播放。n即使SWF文件已经停止,声音播放也会继续。o 2开始n“开始”方式与“事件”方式的功能相近,但是如果声音已经在播放,则新声音实例不会播放。如果使用“事件”方式后,出现了同一个声音多次重叠出现的不良现象,那么可以将同步方式改为“开始”来解决这个问题。 同步方式o 3停止n“停止”方式的作用,是使指定的声音静音。n使用“事件”或者“开始”方式启动了声音之后,如果声音播放结束之前想强制静音,就可以使用“停止”方式。 o 4数据流n“数据流”方式的声音将会严格与时间轴同步如果影片在播放,就播放声音;如果影片暂停,声音就会
7、停止。n音频流的一个示例就是MV的制作。n如果不使用“数据流”方式,那么音乐很容易在播放过程中与动画、台词脱节。练习3:为影片添加声音练习4:为按钮添加声音设置声音属性o )双击【库】面板中的声音图标,打开【声音属性】对话框,在“压缩”下拉菜单中有【默认】、【ADPCM】、【MP3】、【原始】和【语音】压缩模式进行MP3压缩设置o如果要导出一个以 MP3 格式导入的文件,可以使用与导入时相同的设置来导出文件,在【声音属性】对话框中,从【压缩】菜单中选择【MP3】,选择【使用导入的MP3品质】复选框。取消对【使用导入的MP3 品质】复选框的选择,就可以重新设置MP3 压缩设置了o设置比特率。【比
8、特率】这个选项,确定导出的声音文件中每秒播放的位数。Flash支持8 Kbps到160 Kbps(恒定比特率)的比特率,o设置【预处理】选项。选择【将立体声转换为单声道】复选框,表示将混合立体声转换为单声(非立体声)。这里需要注意的是,【预处理】选项只有在选择的比特率为20 Kbps 或更高时才可用。o)设置【品质】选项。选择一个【品质】选项,以确定压缩速度和声音品质:o进行压缩测试。在【声音属性】对话框里,单击【测试】按钮,播放声音一次。除了采样比特率和压缩外,还可以使用下面几种方法在文档中有效地使用声音并减小文件的大小:o 1. 设置切入和切出点,避免静音区域保存在Flash文件中,从而减
9、小声音文件的大小。o 2. 通过在不同的关键帧上应用不同的声音效果(例如音量封套,循环播放和切入/切出点),从同一声音中获得更多的变化。只使用一个声音文件就可以得到许多声音效果。o 3. 循环播放短声音,作为背景音乐。使用ActionScript控制声音o用as控制声音之前一定要使用构造函数new Sound创建声音对象。只有先创建声音对象以后,FLASH此可以调用声音对象的方法,从而控制声音。注意,FLASH的action是区分大小写的。o mysound=new Sound();/ mysound 是一个变量名, new Sound 是一个构造函数,表示 mysound 是一个 Sound
10、 对象o用as来控制声音,就需要用as来读取声音,方法有两种:attachSound和loadSoundnattachSound:从FLASH库中绑定一个声音,这个声音需要我们先倒入一个声音文件。导入声音文件到库以后,打开库面板,对着声音文件点右键,选择“链接”;在对话框中选中“为ActionScript(动作脚本)导出”,在标识符上为这个声音起一个名字如“music”;然后用 attachSound(“music”);来读取声音。nloadSound:从外部读取声音文件,参数中写文件的名字。注意:o从外部读取文件时只允许载入MP3文件,其它格式不能读取;o可以将声音文件和FLASH文件是同一
11、文件夹o第二个参数决定是以“事件”方式载入还是以“数据流”方式载入。如果为 true,则使用数据流方式载入,只要载入的音乐数据足够启动解码器,声音就会自动播放;如果参数为 false,则是事件方式,只有在音乐文件全部载入后才能够使用 start()进行播放 n文件名和标识符要加上引号,否则FLASH会将它作为一个变量处理o mysound.setVolume(50); 这个是控制声音播放时的声音大小,取值在 0 到 100 o mysound.start(0.01); 这个语句是表示开始播放声音,()里的参数表示声音开始的位置,单位为秒,再来就是循环几次 比如 mysound.start(30
12、 , 2);/ 声音从 30 秒处开始循环 2 次。o mySound.stop(name);关闭指定音乐 实例:使用as在场景中播放声音o 使用“文件”“导入”“导入到库”命令将声音文件导入到库中o 打开库面板,对着声音文件点右键,选择“链接”命令,在对话框中选中“为ActionScript(动作脚本)导出”,在标识符上为这个声音起一个名字 “music”;o 新建图层并命名为“声音”,选中第一帧,在动作面板中添加代码:mysound=new Sound();mysound.attachSound(“music);mysound.start();o 测试影片实例:使用按钮控制声音的播放o同上例导入声音并在“链接”对话框中设置标识符为“music”。o在主场景中新建图层并命名为“声音”,选中第一帧,在动作面板中添加代码:mysound=new Sound();mysound.attachSound(“music);mysound.stop();o在第一层放置play按钮,选中按钮并在动作面板中添加代码:on(release) s.start(); 选中stop按钮,并在动作面板中添加代码:on(release) s.stop();