基本介绍

最近更新时间:2023-05-12 18:00:03

我的收藏

适用范围

本 SDK 用于远端设备接入, 适用于 Linux 和 Windows 64 位系统,提供 so、dll 动态链接库形式接入。

主要功能

本 SDK 面向远程实时操控场景提供低时延音视频通话和控制/状态数据传输,主要功能如下:

视频渲染

在指定句柄的窗口进行视频渲染,并能够自动响应窗口的缩放事件。

视频解码

支持 H264、H265 和 AV1 等视频格式解码。

视频传输

支持 H264、H265 和 AV1 等编码视频流的传输,具备抗弱网和低延迟传输能力。

二进制数据传输

支持二进制数据的透传,可向通话方传输二进制数据。

推流管理

SDK 可以根据观看需求来动态管理对端推流状态。

视频延时和链路状态报告

SDK 可以监测视频延时和视频状态,并通过回调接口报告对应的状态数据。

基本概念

设备 ID

分为现场设备 ID 和远端设备 ID,用于标识设备身份,设备 ID 具有唯一性。如果网络中有相同设备 ID 的设备连网,会出现 MQTT 信令反复被踢下线又重连的情况,影响正常使用。

视频流 ID

用于标识现场设备的视频流编号,编号从0开始递增,与 json 配置中的 stream_config 数组元素编号一致。远端设备拉取视频流时,会通过现场设备 ID+ 视频流 ID 来指定要拉取的视频流。

接收句柄(conn_fd)

用于标识远端设备接收视频流的视频流接收器,编号从0开始递增;视频流接收器,用于桥接现场设备视频流和本地视频渲染窗口,拉取视频流时,需要指定对应的视频流接收器来收流;如下是收取视频流的过程。
现场设备视频流 >> 远端设备视频流接收器 >> 视频渲染窗口

视频窗口句柄

用于标识视频窗口,属于指向视频窗口的指针,例如 win32 的 HWND。通过视频窗口句柄,SDK 可以通过在指定视频窗口上进行画面渲染。

配置文件

config.json 文件,内含 SDK 的初始化配置。