跳转至

从2.1.2迁移到2.2.7

CI13XX_SDK_LLM_AIOT 从 2.1.2 迁移到 2.2.7,主要修改功能如下:

1. 精简播放器(simple_audio_player)

  • 修复云端超时结束、以及播放结束后误收到 02 0B 数据写入释放后的流缓存复位问题,增加判断条件结束后限制写入;
  • 提前请求两帧播放数据,提高播放开始速度;
  • 新增流缓存申请失败的日志提示;删除开始播放时动态申请的 2K 内存;云端播报删除等待数据延时 25ms,统一在读取流缓存接口等待超时;
  • 修复开启动态 PA 的播报问题,以及开启动态 PA 的组合播报问题;
  • 新增 MP3 每帧大小判断(够一帧才拿去解码),适配 CBR / VBR / ABR 三种比特率模式;
  • 解决 ID3 头过大、以及无 ID3 头无法播报的问题;
  • MP3 目前支持采样率 48kHz、码率 190kbps(高码率需要更多内存);修复高码率 MP3 播放结束后的滋滋声问题。

2. VAD 与半双工

  • 修改半双工下 VAD 期间收到播放数据、VAD 底层逻辑被关闭,导致播放结束后才收到 VAD END 的问题:在云端播放开始时清除 VAD;
  • 新增「VAD 期间识别到本地命令词,是否结束 VAD」的宏 LOCAL_REC_VAD_END_ENABLE;
  • IIS、HPOUT 工程增加 VAD 开关逻辑(WEAK_VAD_ENABLE):可选上电开始检测或唤醒后开始检测 VAD,并输出 VAD START、VAD END 串口指令。

3. 算法

  • DOA:新增输出角度,将计算得到的角度通过串口指令(DOA_ANGLE)发送给 WIFI 端;
  • AEC:修改 faiE bug、进入与 ALC 开关逻辑,新增 ci_ss_aec_alc_state 内部状态(CI_SS_AEC_ALC_STATE);
  • 板级增益:修正所有板级单端差分以及数字增益,确保 REF 回路为单端、数字增益为 6.0;
  • 自学习:增加自学习状态时云端播报退出自学习的逻辑;修复学习词条满后再次学习未进入学习模式却开启 aec_mute 导致不能识别的问题(改为学满后不关闭 AEC);
  • opus:节约 10K 内存;
  • 增加算力不足的打印;自查修复双麦使用 AEC 时 alc_off_codec_adc_gain_mic 无法改变 AEC 处理时 mic 增益的问题。

4. 示例工程与全局宏

  • IIS_sample 新增支持双麦板子,播报在 WIFI 端做播报;
  • IIS 工程新增通过指令开始播报的宏控制 IIS_DOWNLOAD_BY_CMD;HPOUT 工程新增上电后开始录音的宏控制 HPOUT_UPLOAD_IS_WAKEUP;
  • UART、IIS、HPOUT 工程新增 上下行、串口通信、本地播报、云端播报的全局宏开关控制(如 AUDIO_DATA_UPLOAD_BY_*、AUDIO_DATA_PLAY_BY_*、WIFI_CMD_BY_UART、CIAS_AIOT_DEMO_ENABLE 等),可灵活配置;
  • hpout 工程增加 IIS 采音;
  • 三个示例工程**移除了 app/app_ota 目录**,OTA 功能统一由 components/ota 组件承载(user_config.h 中 OTA 开关宏由 OTA_TIMOUT / OTA_RETRY_TIME / OTA_CHIP_TYPE_1306 调整为 CI_OTA_ENABLE);
  • 解决 IIS、hpout 采音开始 write 的前几秒丢帧问题;修复 hpout 复位问题(板级文件 IIS1 output codec 数据由单通道改为双通道);解决上电收到 WIFI 串口、流缓存未初始化导致复位的问题。

5. OTA 与打包工具

  • OTA 更新到 V4.1.12,SDK 包内新增 external\ota参考 目录(含各串口 ota_code bin 与《启英泰伦OTA V4.1.X 使用和协议说明文档(软件版本V4.1.12)》);
  • uart 工程增加 OTA 读取版本号指令,并修复 OTA 获取软件版本号指令 bug;
  • PACK_UPDATE_TOOL 更新到 4.0.7;更新 bootloader 默认禁用所有串口,解决串口频繁发数据频繁进串口中断导致 bootloader 无法起来的问题。