Skip to content

C SDK 更新记录

2.3.0

升级注意

  • TIRTCCALLBACKS 新增 on_update_bitrate 回调字段。升级时,头文件和库必须配套更新。应用不使用视频发送码率建议功能时,on_update_bitrate 必须为 NULL
  • TIRTC_OPT_NETWORK_TYPE 设为 TIRTC_NETCONN_4G 后,TIRTC_OPT_ICCID 为必填项。未在 TiRtcStart() 前提供 ICCID 时,TiRtcStart() 返回 TIRTC_E_INVALID_PARAMETER。参见配置 4G 设备的网络信息
  • stream_id 仍只允许取值 0..15。2.3.0 增加了范围校验;旧应用如果使用其他值,音视频和流消息发送、关键帧请求及音视频订阅接口会返回 TIRTC_E_INVALID_PARAMETER
  • 2.3.0 新增 TIRTC_E_HTTP_* 错误码。旧应用如果会根据具体错误码执行重试或告警,需要补充相应处理;只判断返回值是否为 0 的应用不受影响。

新增

  • 新增 TGTRP 实时音视频传输协议。该协议由 TiRTC 自研,针对弱网络环境进行了深度优化。传输方式由 SDK 在建立连接时自动协商,应用不需要修改现有的音视频发送逻辑。
  • SDK 可以根据网络可用带宽向设备应用提供视频发送码率建议。设备应用调用 TiRtcConnSetVideoBitrateParams() 设置码率参数,并在收到 on_update_bitrate 回调后调整视频编码器。参见根据网络带宽调整视频发送码率
  • 新增 TIRTC_OPT_TGTRP_POLL_TIMEOUT,用于设置网络轮询超时时间。增大取值可以降低系统负载,但会增加网络响应延迟。
  • 新增 Taixin TXW82XGoke GK7205V10 平台支持。

优化

  • on_conn_accepted 会在命令、音频和视频通道全部就绪后触发。设备应用收到回调后,可以立即使用 hconn 发送数据。
  • TiRtcGetBuildInfo() 现在会返回 C SDK、底层传输组件和 mbedTLS 的版本与构建时间。如果发布包写入了提交标识,返回结果中也会包含该标识。
  • 视频发送缓冲区满或恢复时,日志会记录 stream_id、当前占用和容量上限,便于定位 TIRTC_E_BUSY

修复

  • 修复启用 HTTPS 后,TIRTC_OPT_SERVICE_ENDPOINT 仍不接受 https:// 地址的问题。
  • 修复部分 HTTP 连接关闭或响应格式异常时返回错误码不准确的问题。

2.2.1

变更

  • 优化 ESP32-S3 和 ESP32-P4 的 FreeRTOS 线程资源管理:ESP32-S3 改用 ESP-IDF 扩展任务接口管理 PSRAM 线程栈,ESP32-P4 的线程栈改为使用 PSRAM,降低其对内部 RAM 的占用。

修复

  • 修复 ESP32-P4 在 ESP-IDF 5.5.x 下 SoC 寄存器头文件路径不匹配导致的编译问题。

2.2.0

破坏性变更

  • 设备端启动前必须通过 TiRtcSetOption(TIRTC_OPT_CLIENT_ID, ...) 设置 client_id。未设置 client_id 会导致启动失败。升级到 2.2.0 前,请为每台设备准备 1 到 64 个可打印 ASCII 字符的稳定硬件或生产标识,具体规则见建立与设备端的连接

新增

  • 提供 TiRtcGetVersion()TiRtcGetBuildInfo(),便于运行时确认 SDK 版本和构建信息。
  • 新增 AMR 音频格式定义。

修复

  • 修复 Windows 平台 SSL 握手失败的问题。
  • 修复连接关闭时被叫方响应不及时的问题。

TiRTC 开发文档