从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 无法起来的问题。