您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > Flash ActionScript 3.0 语言和组件参考Sound
FlashActionScript3.0语言和组件参考(Sound)第1页共26页包flash.media类publicclassSound继承SoundEventDispatcherObject语言版本:ActionScript3.0运行时版本:AIR1.0,FlashPlayer9Sound类允许您在应用程序中使用声音。使用Sound类可以创建Sound对象、将外部MP3文件加载到该对象并播放该文件、关闭声音流,以及访问有关声音的数据,如有关流中字节数和ID3元数据的信息。可通过以下项对声音执行更精细的控制:声音源(声音的SoundChannel或Microphone对象)和SoundTransform类中用于控制向计算机扬声器输出声音的属性。在FlashPlayer10和更高版本中,也可以使用此类来处理动态生成的声音。在这种情况下,FlashPlayer将使用您分配给sampleData事件处理程序的函数来轮询声音数据。从用声音数据填充的ByteArray对象检索声音的同时播放声音。可以使用Sound.extract()从Sound对象中提取声音数据,然后在将声音数据写回到流以进行播放之前可以对其进行操作。若要控制嵌入到SWF文件的声音,请使用SoundMixer类中的属性。注意:ActionScript3.0的SoundAPI与ActionScript2.0不同。在ActionScript3.0中,将无法采用声音对象并在层次结构中对其进行排列以控制其属性。使用此类时,请考虑FlashPlayer安全模型(这些考虑不适用于动态生成的声音):如果执行调用的SWF文件在网络沙箱中,并且要加载的声音文件是本地文件,则不允许加载和播放声音。默认情况下,若执行调用的SWF文件是本地文件并且试图加载和播放远程声音,则不允许加载和播放声音。用户必须授予明确许可才能允许此类访问。某些处理声音的操作受到限制。除非您实现一个URL策略文件,否则位于其他域中的SWF文件无法访问已加载声音中的数据。受此限制约束的与声音相关的API为Sound.id3、SoundMixer.computeSpectrum()、SoundMixer.bufferTime和SoundTransform类。有关安全性的详细信息,请参阅以下部分:《ActionScript3.0编程》一书中的“安全性”一章和LiveDocs上的最新评论FlashPlayer开发人员中心主题:安全性查看示例另请参见flash.net.NetStreamMicrophoneFlashActionScript3.0语言和组件参考(Sound)第2页共26页SoundChannelSoundMixerSoundTransform公共属性隐藏继承的公共属性显示继承的公共属性属性定义方bytesLoaded:uint[只读(read-only)]返回此声音对象中当前可用的字节数。SoundbytesTotal:int[只读(read-only)]返回此声音对象中总的字节数。Soundconstructor:Object对类对象或给定对象实例的构造函数的引用。Objectid3:ID3Info[只读(read-only)]提供对作为MP3文件一部分的元数据的访问。SoundisBuffering:Boolean[只读(read-only)]返回外部MP3文件的缓冲状态。Soundlength:Number[只读(read-only)]当前声音的长度(以毫秒为单位)。Soundprototype:Object[静态]对类或函数对象的原型对象的引用。Objecturl:String[只读(read-only)]从中加载此声音的URL。Sound公共方法隐藏继承的公共方法显示继承的公共方法方法定义方Sound(stream:URLRequest=null,context:SoundLoaderContext=null)创建一个新的Sound对象。SoundaddEventListener(type:String,listener:Function,useCapture:Boolean=false,priority:int=0,useWeakReference:Boolean=false):void使用EventDispatcher对象注册事件侦听器对象,以使侦听器能够接收事件通知。EventDispatcherFlashActionScript3.0语言和组件参考(Sound)第3页共26页close():void关闭该流,从而停止所有数据的下载。SounddispatchEvent(event:Event):Boolean将事件调度到事件流中。EventDispatcherextract(target:ByteArray,length:Number,startPosition:Number=-1):Number从Sound对象提取原始声音数据。SoundhasEventListener(type:String):Boolean检查EventDispatcher对象是否为特定事件类型注册了任何侦听器。EventDispatcherhasOwnProperty(name:String):Boolean指示对象是否已经定义了指定的属性。ObjectisPrototypeOf(theClass:Object):Boolean指示Object类的实例是否在指定为参数的对象的原型链中。Objectload(stream:URLRequest,context:SoundLoaderContext=null):void启动从指定URL加载外部MP3文件的过程。Soundplay(startTime:Number=0,loops:int=0,sndTransform:SoundTransform=null):SoundChannel生成一个新的SoundChannel对象来回放该声音。SoundpropertyIsEnumerable(name:String):Boolean指示指定的属性是否存在、是否可枚举。ObjectremoveEventListener(type:String,listener:Function,useCapture:Boolean=false):void从EventDispatcher对象中删除侦听器。EventDispatchersetPropertyIsEnumerable(name:String,isEnum:Boolean=true):void设置循环操作动态属性的可用性。ObjecttoString():String返回指定对象的字符串表示形式。ObjectvalueOf():Object返回指定对象的原始值。ObjectwillTrigger(type:String):Boolean检查是否用此EventDispatcher对象或其任何始祖为指定事件类型注册了事件侦听器。EventDispatcher事件隐藏继承的事件显示继承的事件FlashActionScript3.0语言和组件参考(Sound)第4页共26页事件摘要定义方activate[广播事件]FlashPlayer获得操作系统焦点并变为活动状态时调度。EventDispatchercomplete成功加载数据后调度。Sounddeactivate[广播事件]当FlashPlayer失去操作系统焦点并变为非活动状态时调度。EventDispatcherid3在存在可用于MP3声音的ID3数据时由Sound对象调度。SoundioError在出现输入/输出错误并由此导致加载操作失败时调度。Soundopen在加载操作开始时调度。Soundprogress在加载操作进行过程中接收到数据时调度。SoundsampleData当播放器请求新的音频数据时调度。Sound属性详细信息bytesLoaded属性bytesLoaded:uint[只读(read-only)]语言版本:ActionScript3.0运行时版本:AIR1.0,FlashPlayer9返回此声音对象中当前可用的字节数。此属性通常只对从外部加载的文件有用。实现publicfunctiongetbytesLoaded():uintbytesTotal属性bytesTotal:int[只读(read-only)]语言版本:ActionScript3.0运行时版本:AIR1.0,FlashPlayer9返回此声音对象中总的字节数。实现publicfunctiongetbytesTotal():intid3属性id3:ID3Info[只读(read-only)]语言版本:ActionScript3.0运行时版本:AIR1.0,FlashPlayer9提供对作为MP3文件一部分的元数据的访问。FlashActionScript3.0语言和组件参考(Sound)第5页共26页MP3声音文件可以包含ID3标签,ID3标签提供有关该文件的元数据。如果使用Sound.load()方法加载的MP3声音包含ID3标签,则可以查询这些属性。只支持使用UTF-8字符集的ID3标签。FlashPlayer9及更高版本支持ID32.0标签,特别是2.3和2.4。以下各表列出了标准ID32.0标签以及这些标签所表示内容的类型。Sound.id3属性通过my_sound.id3.COMM和my_sound.id3.TIME等格式提供对这些标记的访问。第一个表描述了可通过ID32.0属性名称或ActionScript属性名称进行访问的标签。第二个表描述了在ActionScript中受支持但不具有预定义属性的ID3标签。ID32.0标签对应的ActionScript属性COMMSound.id3.commentTALBSound.id3.albumTCONSound.id3.genreTIT2Sound.id3.songNameTPE1Sound.id3.artistTRCKSound.id3.trackTYERSound.id3.year下表描述了在ActionScript中受支持但不具有预定义属性的ID3标签。通过调用mySound.id3.TFLT和mySound.id3.TIME等来访问它们。属性说明TFLT文件类型TIME时间TIT1内容组说明TIT2标题/歌曲名称/内容说明TIT3副标题/说明精选TKEY初始密钥TLAN语言TLEN长度TMED媒体类型TOAL原始唱片/影片/演出标题TOFN原始文件名TOLY原词作者/乐谱作者TOPE原始艺术家/表演者TORY原始发行年份TOWN文件所有者/获得授权者TPE1主要表演者/独奏(独唱)TPE2乐队/管弦乐队/伴奏FlashActionScript3.0语言和组件参考(Sound)第6页共26页TPE3指挥/主要演奏者TPE4翻译、混录员或以其它方式进行修改的人员TPOS歌曲集部分TPUB发行者TRCK歌曲集中的曲目编号/位置TRDA录制日期TRSNInternet无线电台名称TRSOInternet无线电台所有者TSIZ大小TSRCISRC(国际标准音像制品编码)TSSE用于编码的软件/硬件和设置TYER年份WXXXURL链接帧使用此属性时,请考虑FlashPlayer安全模型:对于与声音文件位于同一安全沙箱的SWF文件,始终允许Sound对象的id3属性。对于其它沙箱中的文件,则需经过安全检查。使用Sound类的load()方法加载声音时,可指定context参数,该参数为一个SoundLoaderContext对象。如果将SoundLoaderContext对象的checkPolicyFile属性设为true,则FlashPlayer将在从其中加载声音的服务器上查找URL策略文件。如果存在一个策略文件并且允许从执行加载的SWF文件的域进行访问,则允许该文件访问Sound对象的id3属性;否则将不允许。有关安全性
本文标题:Flash ActionScript 3.0 语言和组件参考Sound
链接地址:https://www.777doc.com/doc-4520550 .html