Flash声音处理
- 格式:ppt
- 大小:1.31 MB
- 文档页数:29
FLASH CS4 控制音频播放在之前的章节中,已介绍了如何在Flash中加载声音。
Flash CS4除了加载声音外,还可以对声音播放进度进行一系列的控制,如播放、暂停、停止。
除此之外,还可以控制音量的大小。
1.停止声音在之前的章节中已经介绍了如何在Flash中播放音频。
在制作音频播放器时,除了需要播放音频外,还需要控制音频的停止。
这需要使用到flash.media包中的SoundMixer类。
SoundMixer是一种控制全局的类,其可以控制由Flash影片播放的所有声音流,并且拥有多种全局控制的属性和方法。
也是说,SoundMixer并不控制动态创建的Sound对象。
SoundMixer常用的属性主要有两种:●bufferTime 该属性的作用是设置声音流在开始传输前预加载的时间,单位为秒。
●soundTransform 该属性的作用是为SoundMixer对象引入控制全局的SoundTransform对象。
SoundMixer的这两种属性都属于静态方法,仅可以操作嵌入到Flash影片中的声音,无法对在ActionScript中动态创建的声音进行操作。
除了以上的属性外,SoundMixer还包含3种常用的方法。
●areSoundsInaccessible() 确定是否因安全限制而无法访问声音●computeSpectrum() 获取当前声音的波形快照,并将其放在指定的ByteArray对象中。
●stopAll() 停止当前播放的所有声音。
例如,在一个播放器中,停止播放的按钮实例名称为stopBtn,则为其添加的停止播放代码如下。
stopBtn.addEventListener(MouseEvent.CLICK,stopMusic);function stopMusic(event:MouseEvent):void{SoundMixer.stopAll();}需要注意的是,在使用stopAll()方法时,所引用的SoundMixer类本身,而不是该类的实例。
flash声音特效实例精选--音量调节该实例实现的是使用Flash控制音量的效果,可以向文本框中输入音量的值来调节音量,最终效果及界面如图1所示,要实现这一效果,具体操作步骤如下图1 “音量控制”界面在制作过程中使用的动态文本框,以及ActionScript脚本,如attachSound()、getVolume()等函数,具体操作步骤如下:1.新建一影片,设置其尺寸为300xpX250px(单位为像素),设置其背景色为#009900, 当然用户可以根据需要自行设置。
按“Ctrl+R”,快捷键打开导入对话框,导入一声音文件。
2.新建一图形元件“Symbol”,在第1帧处插入一关键帧,从工具箱中选取矩形工作,通过属性面板设置其轮廓线宽为3.75个单位,颜色为黑色,并设置填充色为这#FFFF33,绘制如图2所示的矩形:图2 图形元件“Symbol”的制作3.返回主场景,将默认图层更名为“input”,在第1帧处插入一关键帧,选取文本工具,在工作区中输入文本,如图3所示:图3 输入文本选取文本文本,在通过属性面板设置为“输入文本”,分别在文本“音量大小”和“你现在的音量”右边拖出文本框,分别设置其变量为“volume”和“volume_old”。
如图4所示:图4 添加输入文本框4.新建一图层,在第1帧处插入一关键帧,打开库面板将图形元件“Symbol”拖放到工作区中,通常复制粘贴创建2实例,从工具箱中选取文本工具,通常属性面板设置其颜色为黑色,在2实例上输入文本如图5所示:图5 制作按钮5.选中图层“button”的第1关键帧,添加如下脚本:s1 = new Sound();// new Sound()函数用法如下new Sound([target])参数target Sound 对象操作的影片剪辑实例。
此参数是可选的构造函数;为指定的影片剪辑创建新的Sound 对象。
如果没有指定目标实例,则Sound 对象控制影片中的所有声音。
flash中关于声音导入的一些问题和解决方法
一、声音导入不进去,出现提示“有一个或多个文件未导入”
答:多为声音文件太大,质量太高,或格式有问题。
可更改音频文件格式为wav格式;
二、导入声音后音频太长
答:分两种情况:
1 整个flash只有一个场景,这时可选中音频图层,在“属性”中的“效果”里选择“自定义”。
在编辑封套里设置音频大小,声音大小;
2 flash中有多个场景。
解决方法有两种
1)将做好的flash导出,然后再新建另一个flash 文本,将刚才做好的flash导入到新建flash文本中,再新建一个图层,插入音频文件,这时下面方法按一个场景的方法制作
2)在主场景中新建文件夹,再新建“影片剪辑”元件,在元件里导入音频,设置音频长短,大小。
回到主场景,在新建的文件夹里,将做好的影片剪辑拖入场景。
第八节在Flash中应用声音Flash提供了许多使用声音的方式。
可以使声音独立于时间轴连续播放,或使动画与一个声音同步播放。
还可以向按钮添加声音,使按钮具有更强的感染力。
另外,通过设置淡入淡出效果还可以使声音更加优美。
由此可见,Flash对声音的支持已经由先前的实用,转到了现在的既实用又求美的阶段。
1. 将声音导入Flash只有将外部的声音文件导入到Flash中以后,才能在Flash作品中加入声音效果。
能直接导入Flash的声音文件,主要有WAV和MP3两种格式。
另外,如果系统上安装了QuickTime 4或更高的版本,就可以导入AIFF格式和只有声音而无画面的QuickTime影片格式。
下面我们以给“闪闪红星”动画添加声音为例,介绍如何将声音导入Flash动画中。
(1)打开第6节制作的“闪闪红星”Flash影片文档。
(2)执行【文件】|【导入】|【导入到库】命令,弹出【导入到库】对话框,在该对话框中,选择要导入的声音文件,单击【打开】按钮,将声音导入,如图8-1所示。
图8-1 【导入到库】对话框(3)等声音导入后,就可以在【库】面板中看到刚导入的声音文件,今后可以像使用元件一样使用声音对象了,如图8-2所示。
图8-2 【库】面板中的声音文件2. 引用声音将声音从外部导入Flash中以后,时间轴并没有发生任何变化。
必须引用声音文件,声音对象才能出现在时间轴上,才能进一步应用声音。
接着继续操作:(1)添加一新图层,将其重命名为“声音”,选择第1帧,然后将【库】面板中的声音对象拖放到场景中,如图8-3所示。
图8-3 将声音引用到时间轴上(2)这时会发现“声音”图层第1帧出现一条短线,这其实就是声音对象的波形起始,任意选择后面的某一帧,比如第30帧,按下F5键,就可以看到声音对象的波形,如图8-4所示。
这说明已经将声音引用到“声音”图层了。
这时按一下键盘上的回车键,可以听到声音了,如果想听到效果更为完整的声音,可以按下快捷键Ctrl+Enter。
Flash中音频的设置方法一、Flash中插入音频时声音效果的设置:【无】:不对声音文件应用效果,选择此选项将删除以前应用过的效果。
【左声道】/【右声道】:只在左或右声道中播放声音。
【从左到右淡出】/【从右到左淡出】:会将声音从一个声道切换到另一个声道。
【淡入】:会在声音的持续时间内逐渐增加其幅度。
【淡出】:会在声音的持续时间内逐渐减小其幅度。
【自定义】:可以使用“编辑封套”创建声音的淡入和淡出点。
二、Flash中插入音频时“同步”选项的设置:(1)事件:使用事件类型时,您必须等到声音的信息完全下载后才会开始播放。
所以这种播放类型对于体积大的声音文件来说非常的不利,因为在下载的过程中往往会造成停格的现象,所以在选用事件这一类型时,尽可能使用较短的声音文件。
另外,当帧长度跟声音长度不同时,会有某一方先播完,而另一方还在播放中的现象。
在制作MTV不使用此类型。
(2)开始:将声音同步类型设成“开始”与设成“事件”的效果几乎是一样的,但是,开始类型并不需要桢数的支持,这就是为什么当我们把一整首歌放到一桢时也可以播放完的原因,选择事件声音会不断重复的。
也有人认为这是开始类型多了一项检测重复声讯的功能。
此类型也不会在MTV中采用。
(3)停止:终止声音播放,强行停止声音的播放。
(4)数据流:这种类型会将声讯平均分配在所需要的帧中,也就是说,它占据了多少帧,就播放多少帧。
而且它是采用一边下载一边播放的方式,将下载后的少量信息立即播放,不太会发生停格的现象,音频与动画桢播放完全同步,桢结束,音乐结束,所以FlashMTV(或需要使用很长一段时间音乐的情况下)的背景音乐通常会使用此同步类型。
但是它有一个缺点,它有时会用跳帧来保持同步。
三、在Flash中编辑声音:在Flash内部可以对声音做一些简单的编辑,实现一些常见的功能,比如控制声音的播放音量、改变声音开始播放和停止播放的位置等,具体操作如下:打开“属性”面板,单击右边的“编辑”按钮,弹出“编辑封套”对话框。
声音处理声音处理基础知识处理声音简介就像计算机可以采用数字格式对图像进行编码、将它们存储在计算机上以及检索它们以便在屏幕上显示它们一样,计算机可以捕获并编码数字音频(声音信息的计算机表示形式)以及对其进行存储和检索,以通过连接到计算机上的扬声器进行回放。
一种回放声音的方法是使用 Adobe Flash Player 和 ActionScript。
将声音数据转换为数字形式后,它具有各种不同的特性,如声音的音量以及它是立体声还是单声道声音。
在 ActionScript 中回放声音时,您也可以调整这些特性;例如,使声音变得更大,或者使其像是来自某个方向。
在 ActionScript 中控制声音之前,您需要先将声音信息加载到 Flash Player 中。
可以使用四种方法将音频数据加载到 Flash Player 中,以便通过 ActionScript 对其进行使用。
您可以将外部声音文件(如 mp3 文件)加载到 SWF 中;在创建 SWF 文件时将声音信息直接嵌入到其中;使用连接到用户计算机上的麦克风来获取音频输入,以及访问从服务器流式传输的声音数据。
从外部声音文件加载声音数据时,您可以在仍加载其余声音数据的同时开始回放声音文件的开头部分。
虽然可以使用各种不同的声音文件格式对数字音频进行编码,但是 ActionScript 3.0 和Flash Player 支持以 mp3 格式存储的声音文件。
它们不能直接加载或播放其它格式的声音文件,如 WAV 或 AIFF。
在 ActionScript 中处理声音时,您可能会使用 flash.media 包中的某些类。
通过使用Sound 类,您可以加载声音文件并开始回放以获取对音频信息的访问。
开始播放声音后,Flash Player 可为您提供对 SoundChannel 对象的访问。
由于已加载的音频文件只能是您在用户计算机上播放的几种声音之一,因此,所播放的每种单独的声音使用其自己的SoundChannel 对象;混合在一起的所有 SoundChannel 对象的组合输出是实际通过计算机扬声器播放的声音。
对FLASH进行优化分为两方面,一方面是代码上的优化,主要是通过优化提高FLASH 性能,降低CPU占用和内存使用。
另一方面是资源的优化,这方面的优化是为了减小编译后的文件大小,因为大多数FLASH都要放到网上,文件大小直接影响浏览者的体验。
这里先讲资源的优化:1、图片资源的优化,主要是位图,包括PNG和JPG格式,在FLASH中,PNG格式的默认导出为无损的,这就导致PNG图片有多大,导出过程中即使经过压缩也不会减少太多,所以要进行手动设置文件导出的格式,在图片属性里就可以进行设置,在压缩选项中选择JPEG,设置品质,如下图:JPEG格式的也是如此,不过应该先在PS中处理成WEB格式,然后再进行导入和相应的品质设置。
还有一种情况就是用图片序列实现的效果,虽然每一张导出后不都不是很大,但是如果有几十张的图片肯定会让FLASH文件很大,对这种情况除了进行上面说的设置外,还可以根据情况进行删帧,效果仍然不会有很大影响。
2、声音的优化,一般不会在FLASH中用到声音,但是一些FLASH整站中会有背景音乐,优化的方法一般是用音频处理软件进行音质的降低,只要不会让音质太差就可以。
还有就是一些按钮音效,可以先分析具体用多长的音乐,对音乐进行截取。
当然,声音文件越小音质越差,这个就要自己进行把握了。
3、矢量图的优化,尽量少用渐变,这样会让FLASH占的系统资源减少。
让FLASH更加流畅。
如果做补间动画,尽量用图形元件,不要一味的使用影片剪辑。
矢量图的尺寸大小是不影响文件大小的,但是越复杂的矢量图肯定文件越大。
对于资源的优化还是要看自己是不是需要优化,到底优化到什么程度,多方面考虑,还有一点就是,千万不要因为图片很小就不进行优化,如果进行优化就要彻底,积少成多,养成习惯。
如果文件还是很大,那就要针对个别的资源进行优化,首先要进入发布设置,打开FLASH设置面板,如下图:可以看到在选项中有一个生成大小报告的选项,勾选后点击确定,这样在测试FLASH 或者发布时就会生成一个文本文件,里面是所有资源导出后的大小详细情况,就可以针对个别资源进行优化了。
FLASH声音被广泛应用在网页、MTV、片头等FLASH动画当中。
一段美好的音乐会给你的动画添加更多的精彩。
声音的控制便成了必不可少的部分。
本教程为大家从基础知识、简单示例到最后的实例制作,一步一步为大家讲解声音控制的方法。
各位在做实例的时候,一定要注意影片剪辑和主场景中的切换,不要弄混了。
教程中用红色字为大家注明了一些重点和需要注意的事项。
而在后面的程序设计中,我用桔黄色字为大家标出了在制作过程中来回切换场景和一些注意事项。
看到这些颜色的字时,大家要仔细一些。
基础知识:在开始讲解声音控制之前,先让大家熟悉一下声音的各种调节参数,这在一会儿的效果解释的时候,可以让你更容易地去理解。
下面为大家列出FLASH中常用的音量控制方法、函数以及属性。
注意:在这其中,mySound是一个声音对象,我们在用as来控制声音之前,一定要先使用构造函数newSound创建声音对象。
只有先创建声音对象以后,FLASH才可以调用声音对象的方法。
还有,FLASH 的action是区分大小写的,所以在写action的时候,一定要注意。
mySound=newSound();//新建一个声音对象,对象的名称是mySound。
声音对象的方法:播放与停止:mySound.start();开始播放声音。
如想在声音的某一秒中播放,可输入Sound.start(2),即:从声音的第二秒开始播放。
(这里的单位只能是秒)mySound.stop();停止声音的播放。
音量控制:(范围从0-100)mySound.getVolume();获取当前的音量大小。
mySound.setVolume();设置当前音乐的音量。
左/右均衡:(范围从-100到100)mySound.getPan();获取左右均衡的值。
mySound.setPan();设置左右均衡的值。
声道音量:mySound.getTransform();获取左右声音的音量。
mySound.setTransform();设置左右声道的音量。