小程序----video视频播放

作者: honey缘木鱼 | 来源:发表于2018-06-11 22:35 被阅读75次

Video小程序播放视频的组件。

Video组件

wx.createVideoContext(videoId, this)创建并返回 video 上下文 videoContext 对象。在自定义组件下,第二个参数传入组件实例this,以操作组件内 <video/> 组件

API

注:

  1. video 组件是由客户端创建的原生组件,它的层级是最高的,不能通过 z-index 控制层级。
    2.不能scroll-view、swiper、picker-view、movable-view 中使用 video 组件。
    3.css 动画对 video 组件无效。

.wxml

<view class="section tc">
  <video src="{{src}}"   controls ></video>
  <view class="btn-area">
    <button bindtap="bindButtonTap">获取视频</button>
  </view>
</view>
<view class="section tc">
  <video id="myVideo" src="http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400" binderror="videoErrorCallback" danmu-list="{{danmuList}}" enable-danmu danmu-btn controls></video>
  <view class="btn-area">
    <button bindtap="bindButtonTap">获取视频</button>
    <input bindblur="bindInputBlur"/>
    <button bindtap="bindSendDanmu">发送弹幕</button>
  </view>
</view>
<video src="" binderror="" hidden></video>

.js代码

function getRandomColor () {
  let 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: function (res) {
    this.videoContext = wx.createVideoContext('myVideo')
  },
  inputValue: '',
    data: {
        src: '',
    danmuList: [
      {
        text: '第 1s 出现的弹幕',
        color: '#ff0000',
        time: 1
      },
      {
        text: '第 3s 出现的弹幕',
        color: '#ff00ff',
        time: 3
      }
    ]
    },
  bindInputBlur: function(e) {
    this.inputValue = e.detail.value
  },
    bindButtonTap: function() {  //视频下载
        var that = this
        wx.chooseVideo({
            sourceType: ['album', 'camera'],
            maxDuration: 60,
            camera: ['front','back'],
            success: function(res) {
                that.setData({
                    src: res.tempFilePath
                })
            }
        })
    },
  bindSendDanmu: function () {
    this.videoContext.sendDanmu({
      text: this.inputValue,
      color: getRandomColor()
    })
  },
    videoErrorCallback: function(e) {
      console.log('视频错误信息:');
      console.log(e.detail.errMsg);
    }
})

结果为:


效果图

以上如有问题,请指出!谢谢!

相关文章

  • 小程序----video视频播放

    Video小程序播放视频的组件。 wx.createVideoContext(videoId, this)创建并返...

  • 小程序video播放OSS防盗链视频报错

    小程序video标签播放带有阿里防盗链的视频地址 报错 MEDIA_ELEMENT_ERROR:Format er...

  • 小程序-视频播放

    小程序中视频播放,采用两个video进行切换的方案。如果设置了loop,那么在判定结束的时候(video组件触发e...

  • 小程序跳转H5步骤

    因为项目当中用到了video,微信小程序播放视频需要网络传播许可之类的证书 ,没有这类证书 小程序审核不通过。所以...

  • 02HTML基础--基础标签

    video标签 作用: 播放视频 格式1: video标签的属性 src: 告诉video标签需要播放的视频地址 ...

  • 06HTML基础--多媒体标签

    video标签 作用: 播放视频 格式1: video标签的属性 src: 告诉video标签需要播放的视频地址 ...

  • 多媒体标签

    video标签 作用: 播放视频 格式1: video标签的属性: src: 告诉video标签需要播放的视频地址...

  • 视频修改为默认小屏播放

    由于 视频默认全屏播放修改为默认小屏播放 video增加 属性

  • 多媒体标签

    video标签 作用:播放视频 格式: video标签的属性src: 告诉video标签需要播放的视频地址auto...

  • 06HTML基础--多媒体标签

    video标签 作用: 播放视频 格式1: video标签的属性src: 告诉video标签需要播放的视频地址au...

网友评论

    本文标题:小程序----video视频播放

    本文链接:https://www.haomeiwen.com/subject/endkeftx.html