物联网智能视频服务(消费版) 应用端接入手册

通过腾讯云 IoT Video 小程序 P2P 服务,引入 IoT Video X-P2P 插件和 P2P-Player 插件,可实现摄像头和小程序直接打洞传输视频流;配合云端的 Server SDK,可实现小程序和小程序,小程序和 App 之间的数据共享。

相关产品
物联网智能视频服务(消费版) 产品页,含版本规格、价格与购买入口。

一、准备工作

·申请腾讯云 IoT Video P2P 服务,获取访问密钥(联调阶段可直接使用 demo 里的密钥,正式发布时请使用我们邮件提供给你的正式密钥)。

·向腾讯云 IoT Video 团队申请使用 IoT Video X-P2P 插件 和 IoT Video P2P-Player 插件。

·有使用 live-player 的权限,详见 产品文档。

·如果使用 1v多 模式,需要将 flv 流的域名加到小程序的 request 合法域名 和 tcp 合法域名 配置中,详见 服务器域名配置产品文档。

二、微信版本限制

微信 8.0.10 以上,基础库 2.19.3 以上。

三、开发文档

·IoT Video X-P2P 插件开发文档

·IoT Video P2P-Player 插件开发文档

·Demo 源码

注意:说明:

四、原理介绍

·0:初始化阶段:
小程序在启动时就可以调用 IoT Video P2P 插件的 init 接口,初始化 p2p 模块,入参填写腾讯云 IoT Video 分配的 appKey 和 appKeySecret 等信息。

·1:小程序用户选择某个摄像头。
1-1:小程序引用 IoT Video P2P-Player,返回livePlayerContext, 可以直接对live-player的 context 进行操作。
1-2:如果是1v1,小程序调用 IoT Video P2P 插件的 startP2PService 接口,开始建立 p2p 连接。

·2:小程序利用livePlayerContext触发播放。

·3:插件启动播放。
3-1:P2P-Player 插件抛出拉流事件 playerStartPull 给小程序应用。
3-2:小程序应用调用 XP2P 插件的 startStream 接口,传入需要播放的摄像头 ID 和播放 URL,并设置消息接收回调和数据接收回调。

·4:数据流会通过第3步设置的数据接收回调,传递给 P2P-Player 插件播放。

·5:小程序用户停止播放。

·6:插件终止播放。
6-1:小程序调用 P2P 插件的 stopStream、stopServiceById 终止传输数据。
6-2:小程序 Demo 或自有小程序操作 live-player 的 context,停止播放。

·7:消耗。
小程序退出时,调用 IoT Video P2P 插件的 destroy 接口,销毁 p2p 模块。

五、Demo 地址

·源码

注意:说明:

六、Demo 使用

注意:Demo UI 交互可能更新,但主要流程不变。

1. 进入主页面。


·"X-P2P Demo IPC" 演示1V1 P2P 直连摄像头场景。

·"X-P2P Demo 1vN-xntp" 和 "X-P2P Demo 1vN-tcp" 演示 1V 多 P2P 场景。

·“多播放器” 演示多播放器的调用。

2. 1V1 P2P 直连摄像头场景:
 

·如果 x-p2p 插件还未初始化,先单击 initModule 初始化。

·填写 "productId"、"deviceName"、"xp2pInfo",xp2pInfo 即设备属性中的 "sys_p2p_info" 字段,可通过 获取设备属性数据的 API 获取。

·“flvFile”字段可设置播放清晰度,取值参考 信令交互文档。

·单击 prepare 和 startPlay 即可开始播放。

·单击不加密对讲和加密对讲可演示小程序语音对讲,单击挂断停止对讲。

·修改信令 command 的 "cmd=xxx" 可演示自定义信令。

赞 (0)
上一篇 4天前
下一篇 4天前