1. 频谱分析算法

AD16N从V1.4.0版本开始 支持频谱分析算法

该频谱分析算法使用link接口,可在解码、扩音等应用中串联该功能。该功能算法仅对输出的音频样点进行运算获取指定频点幅度,不会修改原本输出的音频样点,不会改变音频输出效果。


1.1. 涉及文件

源文件:
apps\app\bsp\common\sound_effect_list\spectral_anal.c
头文件:
apps\include_lib\audio_eq\hw_eq.h
apps\include_lib\sound_effect_list\follow.h
apps\include_lib\sound_effect_list\spectral_anal.h
库文件:
apps\include_lib\liba\uc03\mbox_flash\audio_eq_lib.a

1.2. 使用流程

该频谱分析算法使用link接口,可在解码、扩音等应用中串联该功能。该功能算法仅对输出的音频样点进行运算获取指定频点幅度,不会修改原本输出的音频样点,不会改变音频输出效果。

1.2.1. 在解码链路中使用频谱分析算法

频谱分析link函数在硬件SRC的link后调用,示例如下:

"将频谱分析算法链接到解码链路"

将频谱分析算法链接到解码链路

1.2.2. 在扩音链路中使用频谱分析算法

频谱分析link函数在硬件SRC的link后调用,示例如下:

"将频谱分析算法链接到扩音链路"

将频谱分析算法链接到扩音链路

1.2.3. 硬件EQ复用说明

频谱分析算法用到了硬件EQ模块,与EQ音效同时使用时,需要开启多路EQ;

"硬件EQ配置"

硬件EQ配置

1.2.4. 获取频点幅度

频谱分析算法每次run完后,会将数据存放在运算buff中,SDK可通过函数getFollowdB_api()定期去获取运算出来的结果

"获取频点幅度接口说明"

获取频点幅度接口说明


1.3. 相关函数

1.3.2. void getFollowdB_api(void)

该函数为获取频点幅度接口。

频谱分析算法每次run完后,会将数据存放在运算buff中,SDK可通过函数getFollowdB_api()定期去获取运算出来的结果

"获取频点幅度接口说明"

获取频点幅度接口说明