天天看点

AS3的Sound类

Title:Class Sound

标题:Sound类

前半部分是我翻译AS内容起步,翻译的不好望各位海涵啊

今天把官方的语法帮助翻译一下,帮助自己学习

Class Sound

Sound类

封装包   flash.media

类     全局Sound类(不知道咋翻译了)

继承     Sound -> EventDispatcher ->Object

子类     SoundAsset

Sound类能使你在程序中使用声音,Sound类能让你创建一个新的声音对象,在这个对象中载入和播放外部的mp3文件(还是只有mp3啊),关闭声音流,并访问声音信息,如声音流的大小以及ID3信息.有关控制声音的更多细节请参考Soundchannel对象与Microphone对象,这些对象能通过SoundTransform对象的属性来控制输出到计算机扬声器的音频信号.

要控制swf文件中的声音,使用SoundMixer类中的属性.

提醒:AS3.0的API与2.0不同,在ActionScript3.0中,您无法通过将Sound对象置于层中来控制它们的属性.

当您使用这个类时,请注意Flash Player安全沙箱:

如果swf文件处在网络沙箱内,而欲加载的声音文件是本地的,那么加载与播放将不允许

默认条件下,本地的swf文件不允许加载或播放网络中的声音.用户必须通过授权来准许访问

上述对声音的操作将受到限制.当前域中swf文件将无权读取其他域中的声音数据,但您可以制定一个跨域规则在受限区域中无效的与sound相关的API有Sound.id3,SoundMixer.computeSpectrum(), SoundMixer.bufferTime和SoundTransform对象

公用属性:

bytesLoaded:uint(16位无符号整数)

[只读]返回当前声音对象的可用字节数

bytesTotal:int

[只读]返回声音对象的总字节数

id3:id3信息

[只读]为读取mp3文件中的metadata提供访问方法

isBuffering:布尔

[只读]返回外部mp3文件的缓冲状态

length:number(数值)

[只读]以微秒表示的当前声音长度

url:String(字符串)

[只读]读取的声音来源

公用方法:

Sound(stream:URLRequest = null, context:SoundLoaderContext = null)

创建一个新的Sound对象.

close():void

关闭音频流,会导致所有的下载数据的丢弃.

load(stream:URLRequest, context:SoundLoaderContext = null):void

初始化外部mp3文件的加载.

play(startTime:Number = 0, loops:int = 0, sndTransform:SoundTransform = null):SoundChannel

生成一个新的SoundChannel对象来进行回放.

Events事件:

  complete   当数据成功加载时被发送.

  id3         当MP3声音的ID3数据可用时被发送.

  ioError     当输入输出错误导致加载失败时被发送.

  open       当加载操作开始时被发送.

  progress   当加载操作正在进行且受到数据时被发送.

属性细节:

bytesLoaded 属性

bytesLoaded:uint [只读]

返回当前声音对象的可用字节数.常常只用于外部加载.

Implementation (实现)

  public function get bytesLoaded():uint

bytesTotal 属性

bytesTotal:int [只读]

返回当前声音对象的总字节数.

Implementation (实现)

  public function get bytesTotal():int

id3 属性  

id3:ID3Info [只读]

提供访问mp3文件元数据的方法.

Mp3声音文件可包含ID3标签,ID3标签提供文件的元数据.如果一个你使用Sound.load()方法加载的mp3文件包含了ID3标签,你可以查询这些属性.只有使用UTF-8编码的ID3标签能够被支持.

Flash Player 9以及后续版本支持ID3 2.0标签,特别是2.3和2.4.下面的表格列出了标准的ID3 2.0标签与表示标签内容的格式.Sound.id3属性提供了读取这些标签的格式,如my_sound.id3.COMM,my_sound.id3.TIME等等.第一个表中描述的标签能够通过ID3 2.0的属性名和动作脚本的属性名来访问.第二张表中描述的ID3标签虽然被支持但在动作脚本中没有预先定义

ID3 2.0标签                 对应的ActionScript属性

COMM                       Sound.id3.comment

TALB                       Sound.id3.album

TCON                       Sound.id3.genre

TIT2                       Sound.id3.songName

TPE1                       Sound.id3.artist

TRCK                       Sound.id3.track

本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1786.html

继续阅读