668
小米淨水器
Web播放器__視頻播放_使用手冊_媒體轉碼-阿裏雲
Prismplayer是一套在線視頻播放技術方案,同時支持Flash和Html5兩種播放技術,可對播放器進行功能配置和皮膚定製。
支持格式
Flash 模式:
- 視頻格式: mp4、flv、m3u8、rtmp、mp3
- 視頻編碼: H.264
- 音頻編碼: AAC、MP3
HTML5 模式:
- 視頻格式: mp4、m3u8
- 視頻編碼: H.264
音頻編碼: AAC
m3u8格式播放依賴調用端瀏覽器支持情況:iOS全係列支持,Android 4.0及以上版本支持。
在線定製
媒體轉碼控製台提供了播放器的定製功能,提供Flash、Html5以及自適應三種基於prismplayer的播放器。
播放器詳細說明
資源文件
Prismplayer不依賴於任何的前端js庫,隻需要在頁麵中引用如下js文件,就可以進行播放器的初始化:
https://g.alicdn.com/de/prismplayer/1.5.4/prism-min.js
這個文件同時包含了Flash和Html5跨終端自適應的邏輯。如果您隻是想使用其中一種播放技術,也可以隻引用對應技術的js文件,從而獲得更小的文件體積:
Flash版本:
https://g.alicdn.com/de/prismplayer/1.5.4/prism-flash-min.js
Html5版本:
https://g.alicdn.com/de/prismplayer/1.5.4/prism-h5-min.js
如果您的使用場景需要用到html5播放器,請額外引用css文件:
https://g.alicdn.com/de/prismplayer/1.5.4/skins/default/index-min.css
一個簡單的使用實例
提供一個最簡單的使用實例,初始化播放器,監聽某個dom元素的點擊事件來觸發調用播放器的接口方法,同時對播放器暴露的事件進行監聽。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>測試頁麵</title>
<link rel="stylesheet" href="//g.alicdn.com/de/prismplayer/1.5.4/skins/default/index.css" />
<script type="text/javascript" src="//g.alicdn.com/de/prismplayer/1.5.4/prism-min.js"></script>
</head>
<body>
<div id="J_prismPlayer" class="prism-player"></div>
<!— prism-player為h5播放器皮膚的鉤子類名,請務必加上 —>
<button id="J_clickToPlay" type="button">播放</button>
<script>
// 初始化播放器
var player = new prismplayer({
id: "J_prismPlayer", // 容器id
source: "https://cloud.video.taobao.com/play/u/2554695624/p/1/e/6/t/1/fv/102/28552077.mp4",// 視頻地址
autoplay: false, //自動播放:否
width: "100%", // 播放器寬度
height: "400px" // 播放器高度
});
var clickDom = document.getElementById("J_clickToPlay");
clickDom.addEventListener("click", function(e) {
// 調用播放器的play方法
player.play();
});
// 監聽播放器的pause事件
player.on("pause", function() {
alert("播放器暫停啦!");
});
</script>
</body>
播放器配置屬性
id,{String},播放器外層容器的dom元素id
source, {String}, 視頻播放地址url(1)單獨url;(2)支持多碼流切換:
source:'{"UD":"url_UD","HD":"url_HD","SD":"url_SD","LD":"url_LD"}'
,暫時支持hls與flv(mp4暫未開放);width,{String},播放器寬度,可形如’100%’或者’100px’
height,{String},播放器高度,可形如’100%’或者’100px’
preload,{Boolean},播放器自動加載,目前僅h5可用
cover, {String}, 播放器默認封麵圖片,請填寫正確的圖片url地址
isLive,{Boolean},播放內容是否為直播,直播時會禁止用戶拖動進度條
autoplay,{Boolean},播放器是否自動播放,html5受瀏覽器限製,大多數情況下該配置會失效
from,{String},來源標識,可自定義,主要用於日誌記錄數據收集(
建議用戶填入自己業務名稱,便於後續播放量統計
)。trackLog, {Boolean},是否需要進行用戶行為日誌打點,默認為
true
skinRes,{Url},皮膚圖片,不建議隨意修改該字段,如要修改,請參照Web播放器皮膚定製
skinLayout,{Array | Boolean},功能組件布局配置,不傳該字段使用默認布局,傳false隱藏所有功能組件,功能與皮膚定製方法請看下一節
notShowTips,{Boolean},不顯示控製Tips(按鈕提示)
showBarTime,{String},控製欄自動隱藏時間(ms)
waterMark,{url|pos|size|alpha},添加水印,目前僅支持flash,
url
:水印圖片(jpg/png);pos
:位置(TL/TR/BL/BR);size
: logo寬度占播放器比例(0-1,默認0.2);alpha
:透明度(0-1,默認1)。示例:waterMark:"logo.jpg|TL|0.15|0.5"
extraInfo,{“a_key”:”a_value”,”b_key”:”b_value”},類型為json串,定製性接口參數,目前支持
"fullTitle":"測試頁麵", //全屏時顯示視頻標題(目前僅flash支持);
"m3u8BufferLength":"30", //播放m3u8時加載緩存ts文件長度(目前僅flash支持);
"liveStartTime":"2016/08/17 12:00:00", //直播開始時間,用於提示直播未開始(目前僅flash支持);
"liveStopTime":"2016/08/17 14:00:00", //直播結束時間,用於提示直播結束(目前僅flash支持);
"liveRetry":1, //直播流中斷是否重試;
播放器定製
prismplayer使用skinRes
和skinLayout
兩個配置項實現播放器功能與皮膚的定製。
skinRes提供了播放器使用的皮膚圖片地址,我們在實現層麵上對皮膚圖片進行預處理,從而提取出各個功能組件的ui皮膚和尺寸。
skinLayout的配置方式一般如下:
skinLayout: [
{
"name":"bigPlayButton",
"align":"blabs",
"x":30,
"y":80
},
{
"name":"controlBar",
"align":"blabs",
"x":0,
"y":0,
"children":[
{
"name":"progress",
"align":"tlabs",
"x":0,
"y":0
}
]
}
]
skinLayout
中的每一個元素表示一個功能組件的配置,播放器隻會初始化進行了配置的功能組件。每個功能組件有以下配置項:
name,{String},功能組件的名稱,目前可用的組件列表請見下文
align,{String},組件相對於父級組件的對齊方式,可選項有:
'cc'
,相對於父組件絕對居中'tl'
,相對於父組件左上對齊,受同級組件的占位影響,以組件的相對位置左上角作為偏移原點,可類比於css中的float: left'tr'
,相對於父組件右上對齊,受同級組件的占位影響,以組件的相對位置右上角作為偏移原點,可類比於css中的float: right'tlabs'
,相對於父組件左上絕對對齊,不受同級組件的占位影響,以父組件左上角作為偏移原點'trabs'
,相對於父組件右上絕對對齊,不受同級組件的占位影響,以父組件右上角作為偏移原點'blabs'
,相對於父組件左下絕對對齊,不受同級組件的占位影響,以父組件左下角作為偏移原點'brabs'
,相對於父組件右下絕對對齊,不受同級組件的占位影響,以父組件右下角作為偏移原點
x,{Number},水平方向偏移量,偏移原點參考
align
的說明,cc
時無效y,{Number},垂直方向偏移量,偏移原點參考
align
的說明,cc
時無效children,{Array},組件的子組件列表
播放器功能組件
bigPlayButton,大播放按鈕
controlBar,控製麵板
progress,播放進度條
playButton,播放按鈕,默認從屬於
controlBar
timeDisplay,播放時間,默認從屬於
controlBar
fullScreenButton,全屏按鈕,默認從屬於
controlBar
setButton,設置按鈕,默認從屬於
controlBar
,隻有flash生效volume,音量控製,默認從屬於
controlBar
fullControlBar,全屏頂部麵板,隻有flash生效
fullTitle,視頻標題,默認從屬於
fullControlBar
,隻有flash生效fullNormalScreenButton,取消全屏按鈕,默認從屬於
fullControlBar
,隻有flash生效fullTimeDisplay,全屏下當前時間,默認從屬於
fullControlBar
,隻有flash生效fullZoom,屏幕縮放,默認從屬於
fullControlBar
,隻有flash生效
skinLayout支持樹形的嵌套定義,從實現上支持各個組件的嵌套關係和順序調整。但我們約定controlBar
和fullControlBar
才允許二級嵌套。同時,在完全開放定製功能之前,我們也不建議您過度修改skinLayout
,當前版本我們僅對外提供功能組件的顯示隱藏定製。
播放器API
play(),播放視頻
pause(),暫停視頻
seek(time),跳轉到某個時刻進行播放,
time
的單位為秒getCurrentTime(),獲取當前的播放時刻,返回的單位為秒
getDuration(),獲取視頻總時長,返回的單位為秒
getVolume(),獲取當前的音量,返回值為0-1的實數,ios和部分android會失效
setVolume(vol),設置音量,
vol
為0-1的實數,ios和部分android會失效loadByUrl(url,time),直接播放視頻
url
,time
為可選值(單位秒)目前隻支持同種格式(mp4/flv/m3u8)之間切換,暫不支持直播rtmp流切換setPlayerSize(w,h),設置播放器大小,
w
,h
可分別為400px
像素或60%
百分比,chrome瀏覽器下flash播放器分別不能小於397x297
播放器對外事件
ready,播放器初始化完畢可以播放視頻時觸發
uiReady,播放器初始化按鈕渲染完畢(播放器UI初始設置需要此事件後觸發,避免UI被初始化所覆蓋)
play,視頻由暫停恢複為播放時觸發
pause,視頻暫停時觸發
ended,當前視頻播放完畢時觸發
liveStreamStop,直播流中斷時觸發,m3u8/flv/rtmp在重試5次未成功後觸發,提示上層流中斷或需要重新加載視頻(PS:m3u8一直自動重試,不需要上層添加重試)
m3u8Retry,m3u8直播流中斷後重試事件,每次斷流隻觸發一次
hideBar,控製欄自動隱藏事件
如果問題還未能解決,請聯係售後技術支持。
最後更新:2016-12-14 16:19:03
上一篇:
控製台使用幫助__使用手冊_媒體轉碼-阿裏雲
下一篇:
Web播放器皮膚定製__視頻播放_使用手冊_媒體轉碼-阿裏雲
8.4 使用阿裏雲數據傳輸實時同步RDS的數據__第八章 在生產中使用分析型數據庫_使用手冊_分析型數據庫-阿裏雲
權限查看__用戶及授權管理_安全指南_大數據計算服務-阿裏雲
步驟2:填寫資料__快速入門_證書服務-阿裏雲
概覽頁介紹__用戶指南_企業級分布式應用服務 EDAS-阿裏雲
獲取隊列列表__隊列使用幫助_控製台使用幫助_消息服務-阿裏雲
AttachPolicyToUser__授權策略管理接口_RAM API文檔_訪問控製-阿裏雲
為什麼返券無法使用?___儲值卡_代金券及推薦碼_財務-阿裏雲
客戶端工具__周邊工具_表格存儲-阿裏雲
快速回滾方式__用戶手冊_持續交付平台-阿裏雲
版本說明__JavaSDK手冊_SDK參考手冊_開放搜索-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲