直播接入指南
直播地址是萤石开放平台为用户提供的最简易视频接入方式,不需要学习复杂的流媒体知识,不需要过硬的开发技术,只需要一个摄像头,一个开发者账号即可实现远程观看直播视频。
直播地址获取
注册成为开发者后登录开放平台官网,进入开发者服务-我的资源-我的设备中添加设备(需将设备连接有线上网后进行添加),添加成功刷新页面可以看到设备信息,如下图:
选择一个设备点击标准流地址,进入标准流地址设置页面,这时候如果是加密的设备会提示你关闭加密,不用担心关闭加密会造成可能的危险,标准流地址的安全可以设置有效期来控制,后面安全防盗方面会进行相应的介绍。关闭加密后就可以看到你的设备已经生成相应的直播地址了,如下图:
简单区分
HLS适用于移动端使用,可用微信直接打开,也可集成H5页面嵌入到微信小程序或者微信公众号中。
RTMP适用于PC网页端使用,可用flash或者ckplayer等播放器嵌入网页的方式播放,较HLS延迟小,更稳定。
注意:使用前先进行HLS播放测试,确认视频可正常播放后再进行使用,无法播放的地址会展示错误提示,根据错误提示进行调整,若调整无法恢复可在工单系统中提问咨询。
H5使用方法——HLS
我们提供了可直接使用的H5页面,可快速生成设备HLS地址的H5直播页面,启用H5播放页进行简单配置即可使用,如下图:
该H5页面仅用于移动端展示,不能用于PC端网页使用,但可以在PC网页F12中看到源码,有需要可以参考源码实现自己的H5页面。
注意:集成H5页面的过程中请在真机(手机)上测试验证,不支持模拟器调试。
Web使用方法——RTMP
因各主流浏览器(Chrome、IE等)将于2020年12月起不再支持 Flash 插件,故 RTMP 实时视频播放器将会停止使用。
Web页面集成需要用户先准备一个服务器,搭建网页后将视频按照下面介绍的方法接入即可播放。
下载UIKit JavaScript上传服务器后解压,然后进行如下页面配置
首先引入ezuikit.js
<script src="/ezuikit.js"></script>
页面创建一个video标签 [若设置autoplay属性则默认自动播放]
<video id="myPlayer" poster="[这里可以填入封面图片URL]" controls playsInline webkit-playsinline [autoplay]>
<source src="[这里填入从开放平台官网获取到的RTMP协议URL]" type="" />
</video>
再进行初始化
<script>
var player = new EZUIPlayer('myPlayer');
</script>
简单的视频接入已经实现了,运行Web服务器即可体验。
完整示例可查看UIKit JavaScript
播放器更多操作可以深入学习ckplayer配置
(http://www.ckplayer.com/manualx/13.html)
若需要集成多个视频创建多个播放器即可实现,但需要注意的是集成多个播放器需要注意单个播放器的长宽比例限制最小为{width: 400px;height: 300px;}(chrome浏览器限制),小于这个大小时自动播放会失效。
本机部署nginx集成Web效果如下:
微信公众号使用方法——HLS
在微信公众号中嵌入H5页面的方式来播放视频,参考H5使用方法生成H5页面后,拷贝地址到微信公众号的跳转页面地址即可,具体操作如下:
可关注萤石开放平台公众号(微信号ez_open)进行体验。
微信小程序使用方法——HLS
小程序中的视频只支持以小程序的原生组件接入,所以H5页面的代码并不适用于小程序,小程序只能使用video组件播放。
<view>
<video>[这里填入从开放平台官网获取到的HLS协议URL]</video>
</view>
- 完整示例可见Video组件介绍
(https://developers.weixin.qq.com/miniprogram/dev/component/video.html)
注意:集成小程序的过程中请在真机(手机)上测试验证,不支持模拟器调试。
安全防盗
直播地址的特点是易于分享,但由于是标准协议,无法用于加密设备。所以我们提供了针对HLS直播地址的防盗方法(RTMP暂不支持)。这个方法需要用户在服务器上生产带有效期的直播地址,定时刷新供前端页面使用,接口详情如下图:
使用该接口可以让用户只获取到指定5分钟、10分钟、1小时等有效的直播地址,过期后该地址将无法打开视频,需要向商家获取新的地址。
接口调用逻辑:开通直播功能(新设备需开通直播)——获取指定有效期的直播地址
(https://open.ys7.com/doc/zh/book/index/address.html)
FAQ:
1. 直播地址是否可以进行录像回放?
答:目前只能用于设备画面的直播,回放技术正在预研中,敬请期待。
2. 播放测试报451不支持的码流类型?
答:有如下两种情况可能报该错误;1)部分海康摄像头没有子码流,所以无法播放流畅的视频,详情可在海康官网查看指定型号的介绍。2)海康NVR的通道关联失败,无法通过NVR取到指定通道的视频数据,一般为IPC与NVR断开连接导致。
3. 播放测试报452、454、501、503、544错误?
答:这类错误码为网络错误,建议刷新重试,检查设备与播放端网络情况。
4. 直播报非H264编码类型或有视频但没有声音?
答:直播的视频编码类型仅支持H264,音频编码类型只支持AAC,可以修改设备配置来实现直播。编码格式可以在萤石工作室-设备管理-局域网搜索到的设备-高级设置-图像-视音频编码类型中修改-保存。注意:主码流/子码流/对应通道下的编码类型都需要修改。