VideoContext ☁️¶
- wx.createVideoContext(id, this)¶
 创建 video 上下文
VideoContext()对象。- 参数
 - 返回
 
- class VideoContext()¶
 VideoContext 实例,可通过
wx.createVideoContext()获取。
方法¶
- VideoContext.play()¶
 播放视频
- VideoContext.pause()¶
 暂停视频
- VideoContext.stop()¶
 停止视频
- VideoContext.seek(position)¶
 跳转到指定位置
- 参数
 position (
number()) – 跳转到的位置,单位 s
- VideoContext.sendDanmu({text[,color]})¶
 发送弹幕
- 参数
 text (
string()) – 弹幕文字color (
string()) – 弹幕颜色
- VideoContext.playbackRate(rate)¶
 设置倍速播放
- 参数
 rate (
number()) – 倍率,支持 0.5/0.8/1.0/1.25/1.5,2.6.3 起支持 2.0 倍速
1.4.0 新版功能: 低版本需做 兼容处理 。
示例代码¶
在开发者工具中预览效果
<view class="section tc">
  <video
    id="myVideo"
    src="http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400"
    enable-danmu
    danmu-btn
    controls
  ></video>
  <view class="btn-area">
    <input bindblur="bindInputBlur" />
    <button bindtap="bindSendDanmu">发送弹幕</button>
  </view>
</view>
function getRandomColor() {
  const rgb = []
  for (let i = 0; i < 3; ++i) {
    let color = Math.floor(Math.random() * 256).toString(16)
    color = color.length == 1 ? '0' + color : color
    rgb.push(color)
  }
  return '#' + rgb.join('')
}
Page({
  onReady(res) {
    this.videoContext = wx.createVideoContext('myVideo')
  },
  inputValue: '',
  bindInputBlur(e) {
    this.inputValue = e.detail.value
  },
  bindSendDanmu() {
    this.videoContext.sendDanmu({
      text: this.inputValue,
      color: getRandomColor()
    })
  }
})