BES 平台 SDK之ANC 参数调整

前言:

        最近项目开发进入到DV 阶段,客户临时提了一个需求,希望在ota升级的时候,保留ANC 参数下的total_gain 值,ota只更新滤波器相关参数。total_gain 继续使用产线校准好的值。  

一:ANC 参数

      1.首先需要找到代码对应ANC 加载的函数:             

       best1502x_ibrt_anc_20231122_66204a622\multimedia\inc\audio\process\anc\cfg\anc.cfg.c

       找到对应的函数接口:anc_load_cfg

      

      从函数名也可以看出,我们设定的ANC 参数就是从这个函数里面来负责加载的,继续看下一个接口函数:anccfg_loadfrom_audsec

### 关于 Bes 提示音配置方法或解决方案 在嵌入式开发领域,尤其是针对科技(Bestunech, BES)芯片平台的音频设备开发过程中,提示音功能通常涉及硬件驱动、固件设置以及上层应用逻辑等多个层面。以下是关于 Bes 提示音的相关配置方法和可能的解决方案: #### 1. **提示音文件路径与加载** 在基于 LiteOS 的 BES 芯片平台上,提示音文件一般存储在特定目录下,并通过 BSP 层级的代码进行加载。根据已知信息,在第三阶段内核启动时,需适配的文件路径位于 `//device/soc/bestechnic/bes2600/liteos_m/sdk/bsp/rtos/liteos/liteos_m/board.c` [^1]。因此,可以推测提示音资源可能会被放置在此路径下的子目录中。 开发者可以通过修改该路径中的初始化函数来指定提示音文件的位置及其播放方式。例如: ```c void board_init(void) { // 初始化提示音相关参数 audio_config_t config; config.file_path = "/audio/tone.wav"; // 设置提示音文件路径 init_audio_player(&config); // 加载并初始化音频播放器 } ``` #### 2. **ANC 参数调整对提示音的影响** 对于支持主动降噪 (Active Noise Cancellation, ANC) 功能的产品而言,提示音的质量会受到 ANC 参数调节的影响。具体来说,如果 ANC 的幅度设定不合理,则可能导致低频部分过度衰减,从而影响提示音的整体效果 [^2]。 因此,在实际操作中需要注意以下几点: - 确保降噪频段范围(通常是 50Hz 至 3kHz)保持平滑过渡; - 避免因 ANC 处理而导致的关键频率成分丢失。 #### 3. **软件框架内的实现细节** 基于 LiteOS 操作系统的架构设计原则,提示音的功能模块往往会被封装成独立的服务单元供其他组件调用。这种服务化的设计模式有助于提升代码可维护性和重用率。下面是一个简单的伪代码示例展示如何触发提示音事件: ```c int play_tone(const char *tone_id) { struct tone_info info; if (!get_tone_by_id(tone_id, &info)) { // 获取对应 ID 的提示音元数据 return -ENOENT; // 如果未找到则返回错误码 } open_audio_device(info.device_name); // 打开目标音频设备 load_sound_buffer(info.buffer_addr); // 将声音缓冲区映射到内存空间 start_playback(); // 启动回放过程 return 0; } ``` #### 4. **常见问题排查建议** 当遇到无法正常播放提示音的情况时,可以从以下几个方面入手分析原因: - 文件系统是否正确挂载?确认 `/audio/` 目录存在且权限适当。 - 设备树节点定义是否有误?检查 DTS/DTSI 中有关 I2S/SPI 接口的部分。 - 编译选项开关状态?确保启用了必要的 Kconfig 符号用于启用相应特性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

零一2035

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值