溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

小程序中vidao實現(xiàn)視頻播放和彈幕功能的示例分析

發(fā)布時間:2021-01-28 11:39:36 來源:億速云 閱讀:303 作者:小新 欄目:移動開發(fā)

小編給大家分享一下小程序中vidao實現(xiàn)視頻播放和彈幕功能的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

微信小程序 vidao視頻播放及彈幕的功能的實現(xiàn)。

vidao

我現(xiàn)在看到的官方文檔是不帶danmu(彈幕)屬性的,之前是有的,不過現(xiàn)在這個屬性還可以生效。控制視頻的狀態(tài)可以根據(jù)video標簽的唯一id得到一個對象實例。video組件并不具備action屬性,不能通過action來控制。

.wxml

<view class="section tc">
 <video src="{{src}}"  controls ></video>
 <view class="btn-area">
  <button bindtap="bindButtonTap">獲取視頻</button>
 </view>
</view>

<!-- 
 danmu-list:彈幕列表
 enable-danmu:是否顯示彈幕
 danmu-btn:彈幕按鈕
 controls:是否顯示視頻控件,并沒有什么用
 -->
<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">發(fā)送彈幕</button>
 </view>
</view>

<!-- 現(xiàn)在的video就下面三個屬性 -->
<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 出現(xiàn)的彈幕',
    color: '#ff0000',
    time: 1
   },
   {
    text: '第 3s 出現(xiàn)的彈幕',
    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);
  }
})

效果

小程序中vidao實現(xiàn)視頻播放和彈幕功能的示例分析

以上是“小程序中vidao實現(xiàn)視頻播放和彈幕功能的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI