alivcLivePlayer
来自于:官方立即使用
initPlayer prepareToPlay prepareAndPlay play stop pause seekTo destroy reset resize setTimeOut setCirclePlay getCurrentPosition getDuration setPlaySpeed snapShot setRenderRotate setRenderMirrorMode setVolume setMuteMode setScreenBrightness setVideoScalingMode addEventListener setOnErrorListener
概述
概述
该模块封装了阿里云播放器基础版,提供播放视频的基础能力,仅支持URL的方式播放,建议使用阿里云CDN+OSS存储或使用其他第三方服务的用户使用。
系统要求
ios:
- SDK支持iOS 8.0及以上版本系统
Android:
- SDK支持Android 4.3及以上版本
注意
1.使用该模块时需要使用升级后的编译环境,请在云编译的时候勾选“使用升级环境编译”,并且在控制台 “高级设置” 中将固件版本设置为 4.0.3或以上
2.当前SDK仅支持HLS、RTMP、HTTP FLV、mp4、mp3等流格式,支持的视频编码格式为H264,音频编码格式为AAC。建议使用MTS或点播平台转码后使用。
3.适配iPhone5S以上机型,低端机型在使用变速功能时可能存在性能问题。
initPlayer
初始化播放器
initPlayer({params},callback(ret))
params
rect:
- 类型:JSON 类型
- 描述:(可选项)预览窗口的位置及大小
- 内部字段:
{
x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w:300, //(可选项)数字类型;模块宽度(相对于所属的 Window 或 Frame;默认300
h:600 //(可选项)数字类型;模块高度(相对于所属的 Window 或 Frame;默认300
}
fixedOn:
- 类型:字符串类型
- 描述:(可选项)模块添加到指定 frame 的名字(只指 frame,传 window 无效)
- 默认:模块依附于当前 window
fixed:
- 类型:布尔
- 描述:(可选项)模块是否随所属 window 或 frame 滚动
- 默认值:true(不随之滚动)
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
status : true //初始化是否成功,iOS上没有此回调
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.initPlayer(function(ret){
alert(JSON.stringify(ret));
})
prepareToPlay
准备播放
prepareToPlay({params},callback(ret))
params
url:
- 类型:字符串
- 描述:播放url
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
status : true // 预览界面是否打开成功
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.prepareToPlay(function(ret){
alert(JSON.stringify(ret));
})
prepareAndPlay
(安卓需要调用此方法才能正常播放,该接口仅支持安卓,1.0.4版本后不再支持该接口)
准备播放
prepareAndPlay({params},callback(ret))
params
url:
- 类型:字符串
- 描述:播放url
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
status : true // 预览界面是否打开成功
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.prepareAndPlay();
play
播放
play()
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.play()
stop
停止播放
stop()
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.stop();
pause
暂停播放
pause()
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.pause();
seekTo
跳转到指定时间点播放
seekTo({params})
params
position:
- 类型:数字类型
- 描述:播放的指定位置
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.seekTo({
position:10000
});
destroy
销毁播放器
destroy()
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.destroy();
reset
重置播放器
reset()
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.reset();
resize
重设播放器的大小
resize({params})
params
rect:
- 类型:JSON 类型
- 描述:(可选项)预览窗口的位置及大小
- 内部字段:
{
x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w:300, //(可选项)数字类型;模块宽度(相对于所属的 Window 或 Frame;默认300
h:600 //(可选项)数字类型;模块高度(相对于所属的 Window 或 Frame;默认300
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.resize({
rect:{
x:0,
y:0,
w:300,
h:300
}
});
setTimeOut
设置网络超时时间(仅支持ios)
setTimeOut({params})
params
time:
- 类型:数字类型
- 描述:网络超时时间
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setTimeOut({
time:10000
});
setCirclePlay
循环播放设置
setCirclePlay({params})
params
isCirclePlay:
- 类型:布尔类型
- 描述:是否循环播放
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setCirclePlay({
isCirclePlay:true
});
getCurrentPosition
获取当前播放位置
getCurrentPosition(callback(ret))
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
position : 10000 // 当前播放位置
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.getCurrentPosition(function(ret){
alert(JSON.stringify(ret));
});
getDuration
获取视频长度
getDuration(callback(ret))
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
duration : 10000 //视频长度
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.getDuration(function(ret){
alert(JSON.stringify(ret));
});
setPlaySpeed
倍数播放支持0.5~2倍的设置,支持音频变速不变调
setPlaySpeed({params})
params
speed:
- 类型:数字类型(浮点类型)
- 描述:倍速
- 取值范围:0.5~2
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setPlaySpeed({
speed:1.0
});
snapShot
截图
snapShot({params},callback(ret))
params
path:
- 类型:字符串
- 描述:截图保存路径(如果路径无效会保存失败)只支持fs://等本地路径
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
status : true //是否保存成功
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.snapShot({
path:'fs://test/tt.jpg'
},function(ret){
alert(JSON.stringify(ret));
})
setRenderRotate
设置视频画面旋转角度,支持0°,90°,180°,270°设置,默认0°,角度按顺时针方向计算
setRenderRotate({params})
params
rotate:
- 类型:数字类型
- 描述:画面旋转角度
- 取值范围:
- 0
- 90
- 180
- 270
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setRenderRotate({
rotate:90
});
setRenderMirrorMode
setRenderMirrorMode({params})
支持设置画面镜像,包括水平镜像和垂直镜像。默认为无镜像
params
mode:
- 类型:字符串
- 描述:画面镜像模式
- 取值范围:
- vertical
- horizontal
- none
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setRenderMirrorMode({
mode:'vertical'
});
setVolume
setVolume({params})
音量设置
params
volume:
- 类型:数字类型
- 描述:音量
- 取值范围:0~100
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setVolume({
volume:50
});
setMuteMode
setMuteMode({params})
静音设置
params
: isMute
- 类型:布尔类型
- 描述:是否静音
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setMuteMode({
isMute:true
});
setScreenBrightness
setMuteMode({params})
设置屏幕亮度 (1.0.4 版本之后不再支持该接口)
params
brightness:
- 类型:数字类型
- 描述:屏幕亮度
- 取值范围: 0~100
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setScreenBrightness({
brightness:30
});
setVideoScalingMode
setVideoScalingMode({params})
设置显示模式
params
scalingMode:
- 类型:字符串类型
- 描述:显示模式
- 取值范围:
- fit
- corp
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setVideoScalingMode({
scalingMode:'fit'
});
addEventListener
addEventListener()
添加播放器监听事件
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
eventType : 'prepared' // 准备完成
// 首帧显示 frameInfoListener
// 播放完成 complete
// seek完成 seekCompleted
// stop触发 stop
// 循环播放 circleStart
// 开始缓冲 startCache (仅支持iOS)
// 结束缓冲 endCache (仅支持iOS)
// 音频焦点失去 audioFocusLost (仅支持Android)
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.addEventListener(function(ret){
alert(JSON.stringify(ret));
});
setOnErrorListener
setOnErrorListener()
异常监听 (错误码及错误信息请参考阿里云 官方文档)
callback
ret:
- 类型:JSON对象
- 描述:返回值
{
code: 0,
msg: ''
}
示例代码
var alivcLivePlayer = api.require('alivcLivePlayer');
alivcLivePlayer.setOnErrorListener(function(ret){
alert(JSON.stringify(ret));
});