- openPlayer
- play
- pause
- stop
- getTotalDuration
- getCurrentTime
- addPlayerStatusListener
- seekTo
- setVolume
- getVolume
- setBrightness 设置屏幕亮度 在 iOS 平台上设置的是系统屏幕亮度 setBrightness({params}) ##params brightness: - 类型:数字 - 描述:(可选项)设置的屏幕的亮度,取值范围:0-100 - 默认值:80 ##示例代码 ##可用性 iOS系统,Android系统 可提供的1.0.0及更高版本
- showPlayer
- setSpeed
- getScreenShot
plPlayer
概述
由于七牛不再维护此播放sdk,本模块已下架。
1.plPlayer 封装了七牛的PLPlayerKit视频播放插件。本模块只提供纯功能性接口。
2.可播放MP4,FLV,M3U8,rtmp类型的视频。
3.支持iOS 8.0 及以上版本。
openPlayer
打开视频播放器页面
openPlayer({params})
rect:
- 类型:JSON 对象
- 描述:(可选项)模块的位置及尺寸
- 内部字段:
videoUrlPath:
- 类型:字符串
- 描述:视频资源地址,支持fs://、widget://、rtmp://、
isAutoPlay:
- 类型:布尔型
- 描述:(可选项)是否自动播放 (自动播放:true ; 不自动播放:false)(仅iOS支持,android可再addPlayerStatusListener接口 监听到ready后调用播放接口)
- 默认值:true
timeoutIntervalForMediaPackets:
- 类型:数字类型
- 描述:(可选项)接收/发送数据包超时时间间隔所对应的键值,单位为 s ,默认配置为 10s,建议设置正数。设置的值小于等于 0 时,表示禁用超时,播放卡住时,将无超时回调,该参数仅对 rtmp/flv 直播生效
- 默认值:10
maxL1BufferDuration:
- 类型:数字类型
- 描述:(可选项)一级缓存大小,单位为 ms,默认为 2000ms,增大该值可以减小播放过程中的卡顿率,但会增大弱网环境的最大累积延迟,该缓存存放的是网络层读取到的数据,为保证实时性,超过该缓存池大小的过期音频数据将被丢弃,视频将加速渲染追上音频,该参数仅对 rtmp/flv 直播生效
- 默认值:2000
maxL2BufferDuration:
- 描述:(可选项)默认二级缓存大小,单位为 ms,默认为 300ms,增大该值可以减小播放过程中的卡顿率,但会增大弱网环境的最大累积延迟,该缓存存放的是解码之后待渲染的数据,如果该缓存池满,则二级缓存将不再接收来自一级缓存的数据,该参数仅对 rtmp/flv 直播生效
- 默认值:300
isVideoToolbox:
- 类型:布尔型
- 描述:(可选项)是否使用 video toolbox 硬解码,使用 video toolbox Player 将尝试硬解码,失败后,将切换回软解码,该参数仅对 rtmp/flv 直播生效
- 默认值:false
dNSManager:
- 类型:字符串
- 描述:(可选项)dns 查询,是否使用内置 DNS 解析,是否开启 DNS 解析,默认使用系统 API 解析,该参数仅对 rtmp/flv 直播生效
videoCacheFolderPath:
- 类型:字符串
- 描述:(可选项)视频缓存目录,默认为空,该属性仅对点播 mp4 有效, 当 videoCacheFolderPath 有值时,默认关闭 DNS 解析,支持fs
videoCacheExtensionName:
- 类型:字符串
- 描述:(可选项)视频缓存扩展名,该属性仅对点播 mp4 有效,需在视频缓存目录 videoCacheFolderPath 基础上设置
headUserAgent:
- 类型:字符串
- 描述:(可选项)该参数用于设置 http 的 header,不可包含 “\n” 或 “\r”,包含”\n” 或 “\r” 则设置无效,设置 http 的 header,需要以类似 @”key:value” 的方式,例如:给 http 的 header 添加 referer,则以 @”Referer:http://xxx.xxx.com“ 格式配置
backgroundPlayEnable:
- 类型:布尔型
- 描述:(可选项)是否支持后台播放,需要注意的是在后台播放时仅有音频,视频会在回到前台时继续播放。(android支持后台播放,但不支持此参数设置)
- 默认值:true
loopPlay:
- 类型:布尔型
- 描述:(可选项)是否循环播放,该属性仅对点播有效。
- 默认值:false
fixedOn:
- 类型:字符串
- 描述:(可选项)模块所属 Frame 的名字,若不传则模块归属于当前 Window
fixed:
- 类型:布尔
- 描述:(可选项)模块是否随所属 Window 或 Frame 滚动
- 默认值:true(不随之滚动)
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.openPlayer({
rect:
{ x: 0,
y : 0,
w : 320,
h: 250
},
videoUrlPath: 'http://resource.apicloud.com/video/apicloud3.mp4',
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
play
开始播放
play(callback(ret))
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status: true //布尔型;true||false;是否成功播放
}
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.play(function(ret) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
pause
暂停播放
pause()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.pause();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
resume
暂停后恢复播放
resume()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.resume();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
stop
stop()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.stop();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
switchPlayUrl
同一个页面,已经调用play接口后,切换视频地址时调用(前提条件,同一界面已经调用过play接口)。
switchPlayUrl({params}, callback(ret, err))
params
url:
- 类型:字符串
- 描述:视频资源地址,支持fs://、widget://、rtmp://、
sameSource:
- 类型:布尔类型
- 描述:(可选项)是否是同种格式播放,同格式切换打开更快(当sameSource 为 true 时,视频格式与切换前视频格式不同时,会导致视频打开失败)(仅iOS支持)
- 默认:true
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status: true //布尔型;true||false;是否成功播放
}
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.switchPlayUrl({
url: '',
}, function(ret, err) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getTotalDuration
获取视频的时长
getTotalDuration(callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
var plPlayer = api.require('plPlayer');
plPlayer.getTotalDuration(function(ret, err) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getCurrentTime
获取已经播放的时长
getCurrentTime(callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
time : 6//已经播放的时长,单位秒
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.getCurrentTime(function(ret, err) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
addPlayerStatusListener
添加播放状态监听
addPlayerStatusListener(callback(ret, err))
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
eventType : 'playing', //字符串类型;事件类型
//'unknow' : 未知状态,只会作为 init 后的初始状态,开始播放之后任何情况下都不会再回到此状态
//'preparing' : 正在准备播放所需组件,在调用 -play 方法时出现。(仅iOS支持)
//'ready' : 播放组件准备完成,准备开始播放,在调用 -play 方法时出现。
//'open' : 播放组件准备完成,准备开始连接,请勿在此状态时,调用 switchPlayUrl 切换 URL 操作(仅iOS支持)
//'playing' : 正在播放状态(仅iOS支持)
//'paused' : 暂停状态(仅iOS支持)
//'stopped' : 停止状态(仅iOS支持)
//'error' : 错误状态
//'autoReconnecting' : 自动重连的状态(仅iOS支持)
//'completed' : 播放完成(该状态只针对点播有效)
//'connected': 连接成功 (仅android支持)
//'videoBitrate': 视频码率统计成功(仅android支持)
//'videoFPS':视频帧率统计成功(仅android支持)
//'bufferingStart':开始缓冲(仅android支持)
//'bufferingEnd':停止缓冲(仅android支持)
error:{ //json对象,错误信息,eventType == error如果有错误信息就会返回该字段,否则不会返回
code: , //数字类型;错误码
msg: '' //字符串类型;错误信息(仅iOS支持)
}
}
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.addPlayerStatusListener(function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
seekTo
快速定位到指定播放时间点,该方法仅在回放时起作用
seekTo({params})
params
time:
- 类型:数字型
- 描述:时间点,单位秒
- 默认值:0
示例代码
var plPlayer = api.require('plPlayer');
time : 402334
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setVolume
设置音量 (注意:在iOS中,此接口设置的是播放器的音量,而不是系统音量)
setVolume({params})
params
volume:
- 类型:数字型
- 描述:(可选项)0-3.0
- 默认值:0
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.setVolume({
volume : 1.0
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getVolume
获取播放器音量 注意:对于iOS来说:此接口只能获取播放器的音量,而不是系统的音量(仅iOS支持)
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
volume: 1 //数字类型;播放器音量大小
}
示例代码
可用性
iOS系统
可提供的1.0.0及更高版本
setBrightness 设置屏幕亮度 在 iOS 平台上设置的是系统屏幕亮度 setBrightness({params}) ##params brightness: - 类型:数字 - 描述:(可选项)设置的屏幕的亮度,取值范围:0-100 - 默认值:80 ##示例代码 js var plPlayer = api.require('plPlayer'); plPlayer.setBrightness({ brightness: 50 });
##可用性 iOS系统,Android系统 可提供的1.0.0及更高版本
getBrightness
获取当前屏幕亮度值 在 iOS 平台上获取的是系统屏幕亮度
getBrightness(callback(ret))
ret:
- 类型:JSON 对象
- 内部字段:
{
brightness: //数字类型;当前屏幕亮度值
}
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.getBrightness(function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
hidePlayer
隐藏播放器
hidePlayer()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.hidePlayer();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
showPlayer
显示播放器
showPlayer()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.showPlayer();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
closePlayer
关闭播放器
closePlayer()
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.closePlayer();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setSpeed
倍速播放
setSpeed({params})
params
speed:
- 类型:数字型
- 描述:(可选项)设置视频播放倍速(取值范围 0.2-32)
- 默认值:1.0
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.setSpeed({
speed : 1.9
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getScreenShot
截屏
getScreenShot({params},callback(ret))
params
isSavedPhotosAlbum:
- 类型:布尔类型
- 描述:(可选项)是否存入相册(仅iOS支持)
- 默认值:true
delayTime:
- 类型:数字类型
- 描述:(可选项)延时毫秒数,延时此毫秒数后截屏
- 默认值:0
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true|false //布尔型;截屏成功/失败
path:'', //字符串类型;截屏图片存储路径
}
示例代码
var plPlayer = api.require('plPlayer');
plPlayer.getScreenShot({
isSavedPhotosAlbum:true
},function(ret) {
alert(JSON.stringify(ret));
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setRotationMode
设置画面旋转模式(该属性仅对 rtmp/flv 直播与 ffmpeg 点播有效)
setRotationMode({params})
params
rotationMode:
- 类型:数字类型
- 默认值:0
可用性
iOS系统,Android系统