Skip to content

Latest commit

 

History

History
executable file
·
41 lines (30 loc) · 1.6 KB

README.md

File metadata and controls

executable file
·
41 lines (30 loc) · 1.6 KB

Channel 类控制应用程序中的声音,对声音执行更精细的控制。每个声音均分配给一个声道,而且应用程序可以具有混合在一起的多个声道。

1、Channel属性

  • loop : boolean 是否循环播放 使声音播放结束时重新开始播放
  • pitch : number 当前播放速度,当前播放速度。1.0 正常速度。0.5 半速(更慢)。2.0 倍速(更快)。-1.0 向后。正常速度。-0.5 向后,半速。
  • volume : number 音量,范围从 0(静音)至 1(最大幅度)

注意以上是Channel的属性,可以直接设置如下:

channel.volume = 1;

但是必须在初始化的时候设置,或者在play之前设置。

2、Channel方法

  • Channel ( sound :egret3d.Sound, options :any ) 创建一个新的 Channel 对象
  • getDuration ( ):number 音频持续时间
  • isPlaying ( ):boolean 是否正在播放
  • pause ( ) 暂时停止在该声道中播放声音
  • play ( ) 开始在该声道中播放声音
  • stop ( ) 停止在该声道中播放声音
  • unpause ( ) 从暂停的位置继续在该声道中播放声音

3、代码示例

接下来我们修改Hello Sound代码 在onLoad最后新增这句代码

this._sound = new egret3d.Sound("resource/ccnn.mp3",this.loadSoundSuccess);

并新建方法loadSoundSuccess

    private _sound:egret3d.Sound;
    // 加载声音文件成功
    private loadSoundSuccess(e): void {
        var channel:egret3d.Channel = new egret3d.Channel(e,{"volume":1,"loop":true});
        channel.play();
    }

使用F5调试即可播放。