该论坛提供了插件使用示例和问题反馈的入口,你可以在论坛中找到使用的Demo,以及问题反馈
点播播放器简介
基于腾讯云强大的后台能力与 AI 技术,为客户提供视频点播能力的强大播放载体。播放器 SDK 深度融合腾讯云点播服务,拥有流畅稳定的播放性能,集广告植入、数据监测等功能于一身,覆盖多类应用场景,满足客户多样需求,让客户轻松聚焦于业务发展本身,畅享极速高清播放新体验。
为了获取更好的产品功能及播放性能体验,建议结合腾讯云点播使用
播放器特性
初始化播放器
init({params})
maxCacheItems:
cacheFolderPath:
connectRetry:
{
count: 3 // 整数类型, 可选项, 播放器连接重试次数; 默认值3, 最小值为1,
// 最大值为10
interval: 3 // 整数类型, 可选值, 播放器连接重试间隔, 单位秒; 默认值3, 最小值3,
// 最大值30
}
timeout:
playerType:
类型: 整数类型 描述: (可选项)播放器类型 取值范围: - 0: FFPLAY类型播放器 - 1: AVPLAYER类型播放器
headers:
类型: JSON对象 描述: (可选项)设置自定义http headers
enableAccurateSeek:
类型: 布尔类型 描述: (可选项)设置是否精确seek, 开启精确后seek,seek的时间平均多出200ms 默认值: true
autoRotate:
类型: 布尔类型 描述: (可选项)播放mp4文件时,若设为true则根据文件中的旋转角度自动旋转。旋转角度可在changeRotationEvt事件中获得 默认值: true
smoothSwitchBitrate:
类型: 布尔类型 描述: (可选项)平滑切换多码率HLS. 设为false时,可提高多码率地址打开速度; 设为true,在IDR对齐时可平滑切换码率 默认值: false
progressInterval:
类型: 整数类型 描述: (可选项)设置进度回调间隔; 间隔时间,单位毫秒 默认值: 0.5秒
maxBufferSize:
类型: 整数类型 描述: (可选项)最大预加载大小, 单位 MB; 此设x置会影响playableDuration, 设置越大, 提前缓存的越多
var player = api.require("tencentVodPlayer");
player.init({
maxCacheItem: 3
});
iOS系统,Android系统
可提供1.0.0及更高版本
开始播放
start({params}, function(ret, err))
url:
fileId:
appId:
rect:
{
x: 0,
y: 0,
w: api.winWidth,
h: api.winWidth * 9 / 16
}
rect:
{
x: 0,
y: 0,
w: api.winWidth,
h: api.winWidth * 9 / 16
}
字段详情:
x:
y:
w:
h:
fixedOn:
fixed:
ret:
{
status: true
}
字段详情
status:
err:
{
code: -1
msg: '播放失败'
}
字段详情:
code:
msg:
player.start({
rect: {
x: 0,
y: 500,
w: api.winWidth,
h: api.winWidth * 9 / 16
},
url: 'http://1251049911.vod2.myqcloud.com/8ac00de0vo/xxx.mp4'
});
iOS系统,Android系统
可提供1.0.0及更高版本
暂停播放
pause()
var player = api.require("tencentVodPlayer");
player.pause();
iOS系统,Android系统
可提供1.0.0及更高版本
继续播放
resume()
player.resume();
iOS系统,Android系统
可提供1.0.0及更高版本
显示播放器界面
show()
player.show();
iOS系统,Android系统
可提供1.0.0及更高版本
隐藏播放器界面
hide()
player.hide();
iOS系统,Android系统
可提供1.0.0及更高版本
重置播放器窗口大小
resize({params})
rect:
{
x: 0,
y: 0,
w: api.winWidth,
h: api.winWidth * 9 / 16
}
内部字段:
x:
y:
w:
h:
player.resize({
x: 0,
y: 0,
w: api.winWidth / 2,
h: api.winHeight / 2
});
iOS系统,Android系统
可提供1.0.0及更高版本
停止播放
stopPlayer({}, function(ret, err))
ret:
{
status: true
}
字段详情
true:
err:
{
code: 0
msg: "停止播放失败"
}
字段详情:
code:
msg:
player.stop({}, function(ret, err) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
} else {
api.alert({msg: JSON.stringify(err)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
销毁播放器
destroy()
player.destroy();
iOS, Android系统
可提供的1.0.0及更高版本
添加事件监听
setPlayerEventListener({}, function(ret))
{
eventType: 'onPlayProgressEvt',
playable: 35000,
progress: 300,
duration: 500000
}
字段详情:
eventType:
playable:
progress:
duration:
player.setPlayerEventListener({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
移除事件监听
removePlayerEventListener()
player.removePlayerEventListener();
iOS, Android系统
可提供的1.0.0及更高版本
设置开始播放时间 在start之前设置,修改开始播放的起始位置
setStartTime({params})
pos:
player.setStartTime({
pos: 6
});
iOS系统,Android系统
可提供1.0.0及更高版本
是否正在播放
isPlaying({}, function(ret))
ret:
{
status: true
}
字段详情:
status:
player.isPlaying({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
})
iOS系统,Android系统
可提供1.0.0及更高版本
设置手势
setGesture({params}, function(ret))
isTap:
isLongPress:
isSwipe:
isPan:
ret:
{
eventType: "pan",
direction: "horizontal",
x: 10,
y: 30,
distance: 15
}
字段详情:
eventType:
direction:
down: 向下滑动
x:
y:
distance:
player.addGesture({
isTap: true,
isLongPress: true,
isPan: true
}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
移除所有手势监听
removeGesture()
player.removeGesture();
iOS, Android系统
可提供的1.0.0及更高版本
获取屏幕亮度
getBrightness({}, function(ret))
ret:
{
value: 0.3
}
字段详情:
value:
player.getBrightness({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
设置屏幕亮度
setBrightness({params})
value:
var player = api.require("tencentVodPlayer");
player.setBrightness({
value: 0.6
})
iOS, Android系统
可提供的1.0.0及更高版本
获取当前音量
getVolume({}, function(ret))
ret:
{
value: 0.8
}
字段详情:
value:
player.getVolume({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
})
iOS, Android系统
可提供的1.0.0及更高版本
设置音量
setVolume({params})
value:
player.setVolume({
value: 0.8
});
iOS, Android系统
可提供的1.0.0及更高版本
跳转到某个时间播放
seek({params}, function(ret, err))
value:
ret:
{
status: true
}
字段详情:
status:
err:
{
code: 0
msg: "调整播放进度失败"
}
字段详情:
code:
msg:
player.seek({
value: 5.6
});
iOS, Android系统
可提供的1.0.0及更高版本
获取当前播放时间
getCurrentPlaybackTime({}, function(ret))
ret:
{
time: 10.5 // 浮点类型, 当前播放进度
}
字段详情:
time:
player.getCurrentPlaybackTime({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
获取视频总时长
getDuration({}, function(ret))
ret:
{
time: 335
}
字段详情
time:
player.getDuration({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
getPlayableDuration({}, function(ret))
获取可播放时长
ret:
{
time: 335
}
字段详情
time:
player.getPlayableDuration({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
获取视频宽度
getWidth({}, function(ret))
ret:
{
width: 350
}
字段详情
width:
player.getWidth({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
获取视频高度
getHeight({}, function(ret))
ret:
{
height: 400
}
字段详情
height:
player.getHeight({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
设置画面的裁剪模式, 自适应或铺满
setRenderMode({params})
mode:
player.setRenderMode({
mode: 0
});
iOS, Android系统
可提供的1.0.0及更高版本
设置画面方向
setRenderRotation({params})
rotatoin:
player.setRenderRotation({
rotation: 0
});
iOS, Android系统
可提供的1.0.0及更高版本
设置是否静音
setMute({params})
isMute:
player.setMute({
isMute: true
});
iOS, Android系统
可提供的1.0.0及更高版本
屏幕截图; 此功能只会截取当前视频流的视频画面,如果您需要截取当前的整个 UI 界面,请调用其他的插件来实现
snapShot({params}, function(ret))
path:
ret:
{
status: true
path: xxxxxx
}
字段详情:
status: 类型: 布尔类型 描述: 操作结果; true表示操作成功, false表示操作失败
path: 类型: 字符串类型 描述: 生成的截图图片路径
player.snapshot:({
path: xxxxxxx
});
iOS, Android系统
可提供的1.0.0及更高版本
设置播放速率
setRate({param})
rate:
player.setRate({
rate: 1.0
});
iOS, Android系统
可提供的1.0.0及更高版本
当播放地址为master playlist,返回支持的码率(清晰度)
getSupportedBitrates({}, function(ret))
ret:
{
status: true
bitrateList: []
}
字段详情:
status:
bitrateList:
player.getSupportedBitrates:({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
获取当前正在播放的码率索引
getBitrateIndex({}, function(ret))
ret:
{
status: true
index: 1
}
字段详情:
status:
index:
player.getBitrateIndex({}, function(ret, err) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
设置当前正在播放的码率索引,无缝切换清晰度 清晰度切换可能需要等待一小段时间; 腾讯云支持多码率HLS分片对齐,保证最佳体验
setBitrateIndex({params})
index:
player.setBitrateIndex({
index: 1
});
iOS, Android系统
可提供的1.0.0及更高版本
设置镜像
setMirror({params})
isMirror:
player.setMirror({
isMirror: true
});
iOS, Android系统
可提供的1.0.0及更高版本
是否开启硬件加速, 播放前设置有效
setHwAcc({params}, function(ret))
isHwAcc:
player.setHwAcc({
isHwAcc: true
});
iOS, Android系统
可提供的1.0.0及更高版本
是否开启硬件加速
isHwAcc({}, function(ret))
ret:
{
status: true
}
字段详情
status:
player.isHwAcc({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS系统
可提供的1.0.0及更高版本
设置自动播放
setAutoPlay({params})
isAutoPlay:
player.setAutoPlay({
isAutoPlay: true
});
iOS系统
可提供的1.0.0及更高版本
获取当前是否自动播放
isAutoPlay({}, function(ret))
ret:
{
status: true
}
字段详情:
status:
player.isAutoPlay({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS, Android系统
可提供的1.0.0及更高版本
设置加密HLS的token 设置此值后,播放器自动在URL中的文件名之前增加 voddrm.token.TOKEN
setToken({params})
token:
player.setToken({
token: 'fdafdfldjlfdsa'
});
iOS, Android系统
可提供的1.0.0及更高版本
获取加密HLS的token
getToken({}, function(ret))
token:
ret:
{
status: true
token: 'fkajfldajfd'
}
字段详情:
status:
token:
player.getToken({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
});
iOS系统
可提供的1.0.0及更高版本
设置是否循环播放
setLoop({params})
isLoop:
player.setLoop({
isLoop: true
});
iOS, Android系统
可提供的1.0.0及更高版本
是否循环播放
setLoop({}, function(ret))
ret:
{
status: true
}
字段详情
status:
player.setLoop({
isLoop: true
});
iOS, Android系统
可提供的1.0.0及更高版本
初始化下载
initDownload({})
player.initDownload();
iOS, Android系统
可提供的1.0.0及更高版本
设置下载监听器
setDownloadEventListener({}, function(ret))
ret:
{
eventType: "onDownloadProgress",
mediaInfo:
{
size: 13532432432,
downloadSize: 134312,
progress: 13.5
}
}
字段详情:
eventType:
mediaInfo:
类型: JSON对象
内部字段
size:
downloadSize:
progress:
player.setDownloadEventListener({}, function(ret) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}
})
iOS, Android系统
可提供的1.0.0及更高版本
移除下载监听
removeDownloadEventListener()
player.removeDownloadEventListener();
iOS, Android系统
可提供的1.0.0及更高版本
设置下载文件的根目录
setDownloadPath({params})
path:
player.setDownloadPath({
path: 'fs://widget/download'
});
iOS, Android系统
可提供的1.0.0及更高版本
开始下载,url和fileId模式二选一
startDownload({params}, function(ret, err))
url:
fileId:
appId:
player.startDownload({
url: 'http://1253131631.vod2.myqcloud.com/2131631/f4bdff7990043041/playlist.m3u8'
});
iOS, Android系统
可提供的1.0.0及更高版本
停止下载
stopDownload()
player.stopDownload();
iOS, Android系统
可提供的1.0.0及更高版本
停止下载
deleteDownloadFile({path})
path:
player.stopDownload({
path: 'widget://video/abc.mp4'
});
iOS, Android系统
可提供的1.0.0及更高版本