Mudu.Player 播放器组件

初始化播放器

var player = new Mudu.Player(
  {
    // 必须,播放器容器ID,播放器会被添加到该DOM元素中
    containerId: 'J_prismPlayer',

    // 必须,播放器视频播放地址
    src: Mudu.Room.GetPlayAddr(),

    // 已废弃该参数,请勿使用
    type: 'live',

    // 非必须,播放器是否自动播放,默认false
    autoplay: false,

    // 非必须,播放器是否显示控制条,默认true
    controls: true,

    // 非必须,播放器是否循环播放, 默认false
    repeat: false,

    // 非必须,播放器宽度,单位为像素,默认为480
    width: 640,

    // 非必须,播放器高度,单位为像素,默认为270
    height: 360,

    // 以下x5Layer和x5Inline两个参数用于解决安卓微信、QQ、QQ浏览器的只能全屏播放的问题。参数仅对安装过tbs(腾讯浏览服务,一般安装过QQ浏览器后手机上会存在)手机生效(由于tbs的api限制,部分低版本的微信、QQ、QQ浏览器可能不会生效),未安装tbs的安卓手机不会有只能全屏播放的问题。
    // x5Layer和x5Inline只能有一个被设置为true

    // 非必须,播放器在安卓微信、QQ、QQ浏览器中是否同层播放, 默认false  (注:同层播放时,页面document无法滚动(内部的dom元素可以),如果播放器宽度小于浏览器宽度,两边将出现黑边)
    x5Layer: false,

    // 非必须,播放器在安卓微信、QQ、QQ浏览器中是否inline播放,默认false  (注:inline播放时,播放器始终处于z-index的最上层,因此无法在播放器上叠加元素)
    x5Inline: false
  }
);

注意:以下对播放器的操作(开始、暂停、设置、获取状态等操作)需要在Player.Ready事件发生之后进行

开始播放

player.play()

暂停播放

player.pause()

停止播放

player.stop()

设置控制条是否显示

player.setControls(
    // true设置显示, false设置不显示
    true
)

设置播放器尺寸

player.setPlayerSize(
  // 宽度,单位为像素
  640,

  // 高度,单位为像素
  360
)

获取播放器状态

var state = player.getState()

返回string类型:idle表示播放器空闲(未开始播放), buffering表示播放器正在缓冲, playing表示播放器正在播放, paused表示播放器处于暂停播放状态。


加载新的播放地址

player.load([
    {
        file: '新的播放地址',
        image: '新的播放封面地址'
    }
])

Player.Ready事件

Player.Ready事件会在播放器初始化完成被触发

Mudu.MsgBus.On(
  // 事件名,值为Player.Ready
  'Player.Ready',

  // 事件处理函数,参数为当前player组件对象
  function (player) {
    console.log('Mudu Player 播放器初始化完成')
  }
)

Player.Play事件

Player.Play事件会在播放器开始播放时被触发

Mudu.MsgBus.On(
  // 事件名,值为Player.Play
  'Player.Play', 

  // 事件处理函数,参数为当前player组件对象
  function (player) {
    console.log('Mudu Player 播放开始')
  }
)

Player.Stoped事件

Player.Stoped事件会在播放器停止播放时被触发

Mudu.MsgBus.On(
  // 事件名,值为Player.Play
  "Player.Stoped",

  // 事件处理函数,参数为当前player组件对象
  function (player) {
    console.log('Mudu Player 停止播放')
  }
)

Player.Waiting事件

Player.Waiting事件会在播放器缓冲时被触发

Mudu.MsgBus.On(
  // 事件名,值为Player.Waiting
  "Player.Waiting",

  // 事件处理函数,参数为当前player组件对象
  function (player) {
    console.log('Mudu Player 缓冲中')
  }
)

results matching ""

    No results matching ""