跟着apicloud的普及,越来越多的用户苦于apicloud下没有一款真正靠谱低延迟的rtmp/rtsp直播播放器苦恼。
鉴于此,大牛直播SDK携手apicloud资深版主,推出apicloud对接方案:
apicloud官方链接:https://www.apicloud.com/mod_detail/49069
apicloud对接版本说明:https://docs.apicloud.com/Client-API/Open-SDK/daniuPlayer
相关接口如下:
视沃科技-大牛直播SDK
专注、极致、智慧,国表里为数不久不多不依赖开源框架、跨平台(windows/android/iOS)、公网推送(撑持rtmp)-转发-播放-录像(撑持rtmp/rtsp),比快更快,业界真正靠谱的超低延迟(真1秒,低延迟模式下200~400ms)。
适用于在线教育、无纸化推屏/会议、智慧教室、智能可视门禁对讲、超低延迟娃娃机抓取播放方案、媒体移动直播、应急指挥调理(针对保险、城管、交警、消防、*等本能机能打点部门的单兵应急功令系统)、可视化购物、长途专家诊断、可视化巡检、(如电信/电力线路/铁路沿线/水利设施/油田/消防设施巡检)、移动视频安防监控,,企业内训、金融在线直播室、微信直播、监控对接、勾当现场直播、游戏直播、秀场直播等场景。
daniuPlayer 模块概述
本模块封装了大牛直播SDK,撑持rtsp、rtmp播放(请开发者自行控制播放格局),撑持秒开模式,撑持快速切换视频播放地点等。
License文件打包模块包需注意事项请参考License打包模块包注意事项
模块接口addPlayerListener
播放器监听
addPlayerListener(callback(ret))
callback(ret)ret:
类型:JSON 东西
内部字段:
{ code: 1001, //状态码(含义见下表:) param1 : ‘‘,//返回参数1 param2 : ‘‘,//返回参数2 param3 : ‘‘,//返回参数3 param4 : ‘‘,//返回参数4 }
示例代码var demo = api.require(‘daniuPlayer‘); demo.addPlayerListener(function(ret){ api.toast({ msg : " addPlayerListener " + JSON.stringify(ret) }); });
code状态码状态码描述信息1001开始播放1002连接中1003连接掉败1004已连接1005断开连接1006遏制播放1007视频解码辨别率信息1008收不到RTMP数据1009快速切换url1010快照告成/掉败1011开始buffer1012buffer百分比1013遏制buffer1014download速度
可用性iOS系统,Android系统
可供给的1.0.0及更高版本
openPlayer
打开播放器
openPlayer({params}, callback(ret, err))
paramsrect:
类型:JSON 东西
描述:(必填项)模块的位置及尺寸
备注:iOS,Android 必需传此参数。
内部字段:
{ x: 0, //(必填项)数字类型;模块左上角的 x 坐标(相对付所属的 Window 或 Frame);默认值:0 y: 0, //(必填项)数字类型;模块左上角的 y 坐标(相对付所属的 Window 或 Frame);默认值:0 w: api.frameWidth, //(必填项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度 h: api.frameHeight //(必填项)数字类型;模块的高度;默认值:所属的 Window 或 Frame 的高度 }
fixedOn:
类型:字符串
描述:(可选项)模块所属 Frame 的名字,若不传则模块归属于当前 Window
fixed:
类型:布尔
描述:((可选项)模块是否随所属 Window 或 Frame 滚动
默认值:true(不随之滚动)
playBuffer:
类型:数字型
描述:(可选项)设置播放端缓存数据 buffer,如不需 buffer, 设置为 0 。
默认值:200
isLowLatency:
类型:布尔
描述:(可选项)针对类似于直播娃娃机等等候超低 延迟的使用场景,超低延迟播放模式下,延迟可到达 200~400ms;
默认值:false(不开启)
isFastStartup:
类型:布尔
描述:(可选项)设置 快速启动后,如果 CDN 缓存 GOP,daniulive player 可快速出帧;
默认值:true(秒开)
isMute:
类型:布尔
描述:(可选项)设置播放过程中,实时静音/打消静音;
默认值:false(打消静音)
isHardwareDecoder:
类型:布尔
描述:(可选项)设置是否用硬解码播放,硬解码/软解码;
默认值:false(软解)
url:
类型:字符串
描述:(必填项)撑持 rtmp、rtsp地点类型(类型控制请开发者自行判断,模块不做地点限制判断逻辑);
callback(ret, err)ret:
类型:JSON 东西
内部字段:
{ status: true, //布尔型;true||false }
err:
类型:JSON 东西
内部字段:
{ msg : ‘‘ }
示例代码var demo = api.require(‘daniuPlayer‘); demo.openPlayer({ rect : { x : 5, y : 0, w : api.frameWidth-5, h : 200 }, playBuffer : 200, // 默认200ms isLowLatency : false, //超低延时,默认fasle:不开启 true:开启 isFastStartup : true, // 是否秒开, 默认true:秒开 false:打消秒开 isMute : false, //是否静音 默认false:打消静音 true:静音 isHardwareDecoder : false, //是否硬解 默认false:软解 true:硬解 url : _deviceid , fixedOn : api.frameName, fixed : true }, function(ret, err) { api.toast({ msg : " openPlayer " + JSON.stringify(ret) + " " + JSON.stringify(err) }); });
可用性iOS系统,Android系统
可供给的1.0.0及更高版本
hidePlayer
隐藏播放器
hidePlayer(callback(ret,err))
callback(ret, err)ret:
类型:JSON 东西
内部字段:
{ status: true, //布尔型;true||false }
err:
类型:JSON 东西
内部字段:
{ msg : ‘‘ }
示例代码var demo = api.require(‘daniuPlayer‘); demo.hidePlayer();
可用性iOS系统,Android系统
可供给的1.0.0及更高版本
showPlayer
显示播放器
hidePlayer(callback(ret,err))
callback(ret, err)ret:
类型:JSON 东西
内部字段:
{ status: true, //布尔型;true||false }
err:
类型:JSON 东西
内部字段:
{ msg : ‘‘ }
示例代码var demo = api.require(‘daniuPlayer‘); demo.showPlayer();
可用性iOS系统,Android系统
可供给的1.0.0及更高版本
closePlayer
*播放器
closePlayer(callback(ret,err))
callback(ret, err)ret:
类型:JSON 东西
内部字段:
{ status: true, //布尔型;true||false }
err:
类型:JSON 东西
内部字段:
{ msg : ‘‘ }
示例代码var demo = api.require(‘daniuPlayer‘); demo.closePlayer();
可用性iOS系统,Android系统
可供给的1.0.0及更高版本
switchUrl
切换播放器视频地点 switchUrl({params}, callback(ret, err))
paramsurl:
类型:字符串
描述:(必填项)撑持 rtmp、rtsp地点类型(类型控制请开发者自行判断,模块不做地点限制判断逻辑);
callback(ret, err)ret:
类型:JSON 东西
内部字段:
{ status: true, //布尔型;true||false }
err:
类型:JSON 东西
内部字段:
{ msg : ‘‘ }
示例代码