Packagelaya.media
Classpublic class SoundManager
InheritanceSoundManager Inheritance Object

SoundManager 是一个声音管理类。提供了对背景音乐、音效的播放控制方法。 引擎默认有两套声音方案:WebAudio和H5Audio 播放音效,优先使用WebAudio播放声音,如果WebAudio不可用,则用H5Audio播放,H5Audio在部分机器上有兼容问题(比如不能混音,播放有延迟等)。 播放背景音乐,则使用H5Audio播放(使用WebAudio会增加特别大的内存,并且要等加载完毕后才能播放,有延迟) 建议背景音乐用mp3类型,音效用wav或者mp3类型(如果打包为app,音效只能用wav格式)。 详细教程及声音格式请参考:http://ldc.layabox.com/doc/?nav=ch-as-1-7-0



Public Properties
 PropertyDefined By
  autoReleaseSound : Boolean = true
[static] 音效播放后自动删除。
SoundManager
  autoStopMusic : Boolean
[static] 失去焦点后是否自动停止背景音乐。
SoundManager
  musicMuted : Boolean
[static] 背景音乐(不包括音效)是否静音。
SoundManager
  musicVolume : Number = 1
[static] 背景音乐音量。
SoundManager
  muted : Boolean
[static] 背景音乐和所有音效是否静音。
SoundManager
  playbackRate : Number = 1
[static] 声音播放速率。
SoundManager
  soundMuted : Boolean
[static] 所有音效(不包括背景音乐)是否静音。
SoundManager
  soundVolume : Number = 1
[static] 音效音量。
SoundManager
  useAudioMusic : Boolean = true
[static] 背景音乐使用Audio标签播放。
SoundManager
Public Methods
 MethodDefined By
  
addChannel(channel:SoundChannel):void
[static] 添加播放的声音实例。
SoundManager
  
destroySound(url:String):void
[static] 释放声音资源。
SoundManager
  
playMusic(url:String, loops:int = 0, complete:Handler = null, startTime:Number = 0):SoundChannel
[static] 播放背景音乐。背景音乐同时只能播放一个,如果在播放背景音乐时再次调用本方法,会先停止之前的背景音乐,再播发当前的背景音乐。
SoundManager
  
playSound(url:String, loops:int = 1, complete:Handler = null, soundClass:Class = null, startTime:Number = 0):SoundChannel
[static] 播放音效。音效可以同时播放多个。
SoundManager
  
[static] 移除播放的声音实例。
SoundManager
  
setMusicVolume(volume:Number):void
[static] 设置背景音乐音量。音量范围从 0(静音)至 1(最大音量)。
SoundManager
  
setSoundVolume(volume:Number, url:String = null):void
[static] 设置声音音量。根据参数不同,可以分别设置指定声音(背景音乐或音效)音量或者所有音效(不包括背景音乐)音量。
SoundManager
  
stopAll():void
[static] 停止播放所有声音(包括背景音乐和音效)。
SoundManager
  
[static] 停止播放所有音效(不包括背景音乐)。
SoundManager
  
stopMusic():void
[static] 停止播放背景音乐(不包括音效)。
SoundManager
  
stopSound(url:String):void
[static] 停止声音播放。此方法能够停止任意声音的播放(包括背景音乐和音效),只需传入对应的声音播放地址。
SoundManager
Property Detail
autoReleaseSoundproperty
public static var autoReleaseSound:Boolean = true

音效播放后自动删除。

The default value is true.

autoStopMusicproperty 
autoStopMusic:Boolean

失去焦点后是否自动停止背景音乐。


Implementation
    public static function get autoStopMusic():Boolean
    public static function set autoStopMusic(value:Boolean):void
musicMutedproperty 
musicMuted:Boolean

背景音乐(不包括音效)是否静音。


Implementation
    public static function get musicMuted():Boolean
    public static function set musicMuted(value:Boolean):void
musicVolumeproperty 
public static var musicVolume:Number = 1

背景音乐音量。

The default value is 1.

mutedproperty 
muted:Boolean

背景音乐和所有音效是否静音。


Implementation
    public static function get muted():Boolean
    public static function set muted(value:Boolean):void
playbackRateproperty 
public static var playbackRate:Number = 1

声音播放速率。

The default value is 1.

soundMutedproperty 
soundMuted:Boolean

所有音效(不包括背景音乐)是否静音。


Implementation
    public static function get soundMuted():Boolean
    public static function set soundMuted(value:Boolean):void
soundVolumeproperty 
public static var soundVolume:Number = 1

音效音量。

The default value is 1.

useAudioMusicproperty 
public static var useAudioMusic:Boolean = true

背景音乐使用Audio标签播放。

The default value is true.

Method Detail
addChannel()method
public static function addChannel(channel:SoundChannel):void

添加播放的声音实例。

Parameters

channel:SoundChannelSoundChannel 对象。

destroySound()method 
public static function destroySound(url:String):void

释放声音资源。

Parameters

url:String — 声音播放地址。

playMusic()method 
public static function playMusic(url:String, loops:int = 0, complete:Handler = null, startTime:Number = 0):SoundChannel

播放背景音乐。背景音乐同时只能播放一个,如果在播放背景音乐时再次调用本方法,会先停止之前的背景音乐,再播发当前的背景音乐。

Parameters

url:String — 声音文件地址。
 
loops:int (default = 0) — 循环次数,0表示无限循环。
 
complete:Handler (default = null) — 声音播放完成回调。
 
startTime:Number (default = 0) — 声音播放起始时间。

Returns
SoundChannel — SoundChannel对象,通过此对象可以对声音进行控制,以及获取声音信息。
playSound()method 
public static function playSound(url:String, loops:int = 1, complete:Handler = null, soundClass:Class = null, startTime:Number = 0):SoundChannel

播放音效。音效可以同时播放多个。

Parameters

url:String — 声音文件地址。
 
loops:int (default = 1) — 循环次数,0表示无限循环。
 
complete:Handler (default = null) — 声音播放完成回调 Handler对象。
 
soundClass:Class (default = null) — 使用哪个声音类进行播放,null表示自动选择。
 
startTime:Number (default = 0) — 声音播放起始时间。

Returns
SoundChannel — SoundChannel对象,通过此对象可以对声音进行控制,以及获取声音信息。
removeChannel()method 
public static function removeChannel(channel:SoundChannel):void

移除播放的声音实例。

Parameters

channel:SoundChannelSoundChannel 对象。

setMusicVolume()method 
public static function setMusicVolume(volume:Number):void

设置背景音乐音量。音量范围从 0(静音)至 1(最大音量)。

Parameters

volume:Number — 音量。初始值为1。音量范围从 0(静音)至 1(最大音量)。

setSoundVolume()method 
public static function setSoundVolume(volume:Number, url:String = null):void

设置声音音量。根据参数不同,可以分别设置指定声音(背景音乐或音效)音量或者所有音效(不包括背景音乐)音量。

Parameters

volume:Number — 音量。初始值为1。音量范围从 0(静音)至 1(最大音量)。
 
url:String (default = null) — (default = null)声音播放地址。默认为null。为空表示设置所有音效(不包括背景音乐)的音量,不为空表示设置指定声音(背景音乐或音效)的音量。

stopAll()method 
public static function stopAll():void

停止播放所有声音(包括背景音乐和音效)。

stopAllSound()method 
public static function stopAllSound():void

停止播放所有音效(不包括背景音乐)。

stopMusic()method 
public static function stopMusic():void

停止播放背景音乐(不包括音效)。

stopSound()method 
public static function stopSound(url:String):void

停止声音播放。此方法能够停止任意声音的播放(包括背景音乐和音效),只需传入对应的声音播放地址。

Parameters

url:String — 声音文件地址。