微信小程序官方組件展示之媒體組件video源碼

以下將展示微信小程序之媒體組件video源碼官方組件能力商佑,組件樣式僅供參考帽驯,開發(fā)者可根據(jù)自身需求定義組件樣式我注,具體屬性參數(shù)詳見小程序開發(fā)文檔移斩。

功能描述:

視頻(v2.4.0 起支持同層渲染)。

屬性說明:


Bug& Tip

1.tip:`video 默認寬度 300px咬腋、高度 225px羹膳,可通過wxss 設置寬高。

2.tip:從 2.4.0 起 video 支持同層渲染根竿,更多請參考原生組件使用限制

3.tip:若當前組件所在的頁面或全局開啟了 enablePassiveEvent 配置項陵像,該內置組件可能會出現(xiàn)非預期表現(xiàn)(詳情參考enablePassiveEvent 文檔)

支持的格式

?

支持的編碼格式


小窗特性說明

video小窗支持以下三種觸發(fā)模式(在組件上設置 picture-in-picture-mode 屬性):

1.push模式,即從當前頁跳轉至下一頁時出現(xiàn)小窗(頁面棧push)

2.pop模式寇壳,即離開當前頁面時觸發(fā)(頁面棧pop)

3.以上兩種路由行為均觸發(fā)小窗

此外醒颖,小窗還支持以下特性:

1.小窗容器尺寸會根據(jù)原組件尺寸自動判斷

2.點擊小窗,用戶會被導航回小窗對應的播放器頁面

3.小窗出現(xiàn)后壳炎,用戶可點擊小窗右上角的關閉按鈕或調用context.exitPictureInPicture() 接口關閉小窗

當播放器進入小窗模式后泞歉,播放器所在頁面處于 hide 狀態(tài)(觸發(fā) onHide 生命周期),該頁面不會被銷毀匿辩。當小窗被關閉時腰耙,播放器所在頁面會被 unload (觸發(fā) onUnload 生命周期)。


DRM加密播放

1.小程序開發(fā)者獲取到 DRM 加密的視頻地址铲球、身份認證 url挺庞、license url

2.使用 video 標簽將以上幾個參數(shù)填入

3.小程序確認該 video 為 DRM 視頻源,進行 DRM 設備身份認證并且獲取播放許可證

4.設備身份認證通過并獲取播放許可證之后稼病,由 DRM底層進行解密播放


示例代碼

JAVASCRIPT
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({

? onShareAppMessage() {

? ? return {

? ? ? title: 'video',

? ? ? path: 'page/component/pages/video/video'

? ? }

? },

? onReady() {

? ? this.videoContext = wx.createVideoContext('myVideo')

? },

? onHide() {

? },

? inputValue: '',

? data: {

? ? src: '',

? ? danmuList:

? ? [{

? ? ? text: '第 1s 出現(xiàn)的彈幕',

? ? ? color: '#ff0000',

? ? ? time: 1

? ? }, {

? ? ? text: '第 3s 出現(xiàn)的彈幕',

? ? ? color: '#ff00ff',

? ? ? time: 3

? ? }],

? },

? bindInputBlur(e) {

? ? this.inputValue = e.detail.value

? },

? bindButtonTap() {

? ? const that = this

? ? wx.chooseVideo({

? ? ? sourceType: ['album', 'camera'],

? ? ? maxDuration: 60,

? ? ? camera: ['front', 'back'],

? ? ? success(res) {

? ? ? ? that.setData({

? ? ? ? ? src: res.tempFilePath

? ? ? ? })

? ? ? }

? ? })

? },

? bindVideoEnterPictureInPicture() {

? ? console.log('進入小窗模式')

? },

? bindVideoLeavePictureInPicture() {

? ? console.log('退出小窗模式')

? },

? bindPlayVideo() {

? ? console.log('1')

? ? this.videoContext.play()

? },

? bindSendDanmu() {

? ? this.videoContext.sendDanmu({

? ? ? text: this.inputValue,

? ? ? color: getRandomColor()

? ? })

? },

? videoErrorCallback(e) {

? ? console.log('視頻錯誤信息:')

? ? console.log(e.detail.errMsg)

? }

})


WXML
<view class="page-body">

? <view class="page-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

? ? ? show-center-play-btn='{{false}}'

? ? ? show-play-btn="{{true}}"

? ? ? controls

? ? ? picture-in-picture-mode="{{['push', 'pop']}}"

? ? ? bindenterpictureinpicture='bindVideoEnterPictureInPicture'

? ? ? bindleavepictureinpicture='bindVideoLeavePictureInPicture'

? ? ></video>

? ? <view style="margin: 30rpx auto" class="weui-label">彈幕內容</view>

? ? <input bindblur="bindInputBlur" class="weui-input" type="text" placeholder="在此處輸入彈幕內容" />

? ? <button style="margin: 30rpx auto"? bindtap="bindSendDanmu" class="page-body-button" type="primary" formType="submit">發(fā)送彈幕</button>

? ? <navigator style="margin: 30rpx auto"? url="picture-in-picture" hover-class="other-navigator-hover">

? ? ? <button type="primary" class="page-body-button" bindtap="bindPlayVideo">小窗模式</button>

? ? </navigator>

? </view>

</view>




版權聲明:本站所有內容均由互聯(lián)網(wǎng)收集整理选侨、上傳掖鱼,如涉及版權問題,請聯(lián)系我們第一時間處理援制。

原文鏈接地址:https://developers.weixin.qq.com/miniprogram/dev/component/live-player.html

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末戏挡,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子晨仑,更是在濱河造成了極大的恐慌褐墅,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件寻歧,死亡現(xiàn)場離奇詭異掌栅,居然都是意外死亡秩仆,警方通過查閱死者的電腦和手機码泛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來澄耍,“玉大人噪珊,你說我怎么就攤上這事∑肓” “怎么了痢站?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長选酗。 經(jīng)常有香客問我阵难,道長,這世上最難降的妖魔是什么芒填? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任呜叫,我火速辦了婚禮,結果婚禮上殿衰,老公的妹妹穿的比我還像新娘朱庆。我一直安慰自己,他們只是感情好闷祥,可當我...
    茶點故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布娱颊。 她就那樣靜靜地躺著,像睡著了一般凯砍。 火紅的嫁衣襯著肌膚如雪箱硕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天悟衩,我揣著相機與錄音剧罩,去河邊找鬼。 笑死局待,一個胖子當著我的面吹牛斑响,可吹牛的內容都是我干的菱属。 我是一名探鬼主播,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼舰罚,長吁一口氣:“原來是場噩夢啊……” “哼纽门!你這毒婦竟也來了?” 一聲冷哼從身側響起营罢,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤赏陵,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后饲漾,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝙搔,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年考传,在試婚紗的時候發(fā)現(xiàn)自己被綠了吃型。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡僚楞,死狀恐怖勤晚,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情泉褐,我是刑警寧澤赐写,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站膜赃,受9級特大地震影響挺邀,放射性物質發(fā)生泄漏。R本人自食惡果不足惜跳座,卻給世界環(huán)境...
    茶點故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一端铛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧躺坟,春花似錦沦补、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至美侦,卻和暖如春产舞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背菠剩。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工易猫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人具壮。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓准颓,卻偏偏與公主長得像哈蝇,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子攘已,可洞房花燭夜當晚...
    茶點故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內容