DeviceSDK概述
更新时间:2025-05-30 14:16:38
SDK介绍
RTCX-设备 SDK 主要提供了嵌入式 IOT 设备快速接入云平台的功能。设备厂商参考接口文档和示例代码,只需极少的工作量就能快速将硬件设备快速接入到 RTCX 云平台,让客户实现对设备的参数配置、状态监控、远程控制、以及直播回放等功能。
RTCX-设备 SDK 主要分为以下几个部分:
SDK | 运行环境 | 说明 | 备注 |
---|---|---|---|
IoTSDK(C) | 主控芯片或 wifi 芯片 | 维护了设备绑定解绑、信令通道、物模型配置管理,消息上报等基础操作 | 必选 |
StreamSDK(C++) | 主控芯片 | 维护了音视频传输、图片传输、对讲、回放等跟流媒体相关的业务,视频设备需要接入此 SDK,依赖 IoTSDK 进行信令传输 | 视频设备必选 |
根据不同应用场景,RTCX-设备 SDK 的使用方式有所不同,主要包含以下场景,用户可以根据自己设备类型自主选择适合的方案。
- 普通IOT设备(无音视频功能),只需要在主控芯片上集成IoTSDK即可,实现信令和物模型参数处理,如下图所示
- 长上电IPC设备(或者wifi/4g芯片仅支 持保活功能的低功耗设备),在主控芯片上集成IoTSDK和StreamSDK,如下图所示
- 低功耗设备(信令/流媒体分离方案),需要集成IoTSDK和StreamSDK,IoTSDK和StreamSDK运行在不同芯片上,需要厂商通过SPI/SDIO等方式交换两个SDK的回调数据,详情请参考低功耗SDK接入章节
名词解释
名词 | 说明 |
---|---|
ProductKey | 产品 key,和产品型号对应,需烧录到设备或固件中 |
DeviceName | 设备唯一标识符,需烧录到设备中 |
DeviceSecret | 设备秘钥,需烧录到设备中 |
RegionType | 区域类型,0:国内 1:海外 |
RegionId | RegionType为1 的时候,表示海外区域的ID |
准备工作
厂商开始对接 SDK 之前需要做以下准备工作:
- 登录控制台网站,创建产品信息,物模型参数信息,以及申请 ProductKey/DeviceName/DeviceSecret 三元组信息(详细流程参考控制台相关文档创建产品)
- 厂商提供 IOT 设备芯片对应的编译工具链,给到平台方,如有特殊编译参数要求,需要一并列出
- 平台方收到编译工具链之后,会编译相应版本的设备 SDK 以及 SDKdemo 程序,最终打包一起发出(打包中的内容下面会有详细描述)
- 如果是低功耗设备,wifi 芯片上的编译工具链也需要提供,并且注明采用的是代理方案还是信令流媒体分离方案,平台方会根据不同的方案编译不同的SDK
系统要求&环境配置
项目 | 限制条件 |
---|---|
资源占用情况 | ROM:大约1.8MB左右的 ROM 存储,压缩后约0.9MB。 RAM:和码流大小有关,具体大小可以通过参数控制,一般不超过7MB |
平台支持 | IoTSDK:嵌入式Linux环境或者LiteOS/RTOS环境,纯C实现 StreamSDK:嵌入式Linux环境,需要支持 C++11 标准(GCC 版本 4.8 及以上) |
运行依赖 | StreamSDK 依赖于 IoTSDK 传递信令,因此您如果需要使用 StreamSDK 的功能,必须先集成 IoTSDK |
SDK(StreamSDK)内部依赖库 | SDK 内部依赖的开源库主要包括: 1. mbedtls-2.28.9 2. libcurl-7.78.0 3. jsoncpp-1.9.3 4. zlib-1.2.11 5.c-ares-1.10.0 |