HTML5&amp ;;音频质量下降移相器

时间:2016-10-28 15:39:25

标签: javascript html5-audio phaser-framework

我们在Phaser Game中使用AudioSprite s作为角色的对话框。我们正在加载.mp3.ogg个文件以支持各种浏览器。在我们的状态preload()上加载文件后,我们会在播放前解码它们。

我们在Safari上遇到了一个问题,经过大约20分钟的游戏后,音频开始变慢和停止。由于音频精灵仅设置为播放一段时间,因此截止是有意义的,但我不知道为什么音频会减慢。

Chrome上的问题类似,但音频充满了静电。

音频精灵不是很大,VO是18MB,SFX是209kB,背景音乐是​​2.1MB。

这是调用要播放的音频的代码

/**
* Play an audio file
* @param soundKey {string} the preloaded sound or audio sprite key
* @param [marker] {string} the audio sprite marker key
* @param volume   {int}    the volume value; from 0-1
* @returns {Sound} a reference to the currently playing audio
*/
playAudio(soundKey, marker, volume = 1) {

  if (!this.game.playerData.general.dialogue) { return null }
  if (!this.game.cache.checkSoundKey(soundKey)) { console.warn('cannot find audio: '+soundKey); return null}

  if (marker) {
    let audio = this.game.sound.addSprite(soundKey)
    if (audio.get(marker)) {
      return audio.play(marker, volume)
    }
    else {
      console.warn('No Marker: ', marker, ' for audio ', audio)
      return null
    }
  } else {
    let audio = this.game.sound.add(soundKey)
    return (audio ? audio.play(volume) : null)
  }
}

Phaser实施隐藏了其他所有内容。

0 个答案:

没有答案