ZZJ
2021-12-16 dff9fb32c1bac52d378a6d196f670b92610c01d3
src/components/wasmPlayer/wasm/player.js
@@ -16,6 +16,12 @@
  this.webglPlayer = null
  this.trackTimer = null
  this.loop = false
  this.preload = true
  this.preloadFlag = 0
  this.statusCallback = (stat) => {
    console.log(stat)
  }
}
Player.prototype.play = function(
@@ -69,6 +75,8 @@
          )
        }
        This.startTrackTimer()
        This.statusCallback(0)
        break
      }
      case 'create_audio': {
@@ -79,9 +87,17 @@
          sampleRate: This.AudioParam.sample_rate,
          flushingTime: 5000,
        })
        This.statusCallback(1)
        break
      }
      case 'deliver_video': {
        if (!This.isStream && This.preload && This.preloadFlag == 0) {
          This.preloadFlag = 1
          This.pause()
          This.statusCallback(0)
        }
        //sample:{time_stamp:xxx,data:xxx}
        This.CurPos = evt.data.sample.time_stamp
        This.webglPlayer.renderFrame(
@@ -96,6 +112,18 @@
        This.pcmPlayer.play(evt.data.sample.buf)
        break
      }
      case 'play_failed': {
        This.statusCallback(-1)
        This.stop()
        break
      }
      case 'play_end': {
        if (This.loop) {
          This.seek(0)
        }
        break
      }
      default:
        return
    }
@@ -145,6 +173,11 @@
  if (this.webglPlayer) this.webglPlayer.fullscreen()
}
Player.prototype.exitfullscreen = function() {
  if (this.webglPlayer) this.webglPlayer.exitfullscreen()
}
Player.prototype.startTrackTimer = function() {
  var This = this
  this.trackTimer = setInterval(function() {