213 lines
8.0 KiB
C
213 lines
8.0 KiB
C
#ifndef _AUDIO_CONFIG_DEF_H_
|
|
#define _AUDIO_CONFIG_DEF_H_
|
|
/*
|
|
*******************************************************************
|
|
* Audio CPU Definitions
|
|
*
|
|
*Note(s):
|
|
* Only macro definitions can be defined here.
|
|
*******************************************************************
|
|
*/
|
|
|
|
// #include "app_config.h"
|
|
|
|
//**************************************
|
|
// ASS通用配置
|
|
//**************************************
|
|
#define MEDIA_24BIT_ENABLE 0//TCFG_AUDIO_BIT_WIDTH
|
|
#define AUD_DAC_TRIM_ENABLE 0
|
|
// ADC性能测试模式说明:
|
|
// 1.使能 AUD_ADC_TEST_DEMO
|
|
// 2.使能 audio_adc_demo.c中的ADC_DEBUG_BUF
|
|
// 3.将sdk_config.h中的TCFG_ADC0_BIAS_SEL配置为0
|
|
// 4.关闭lib_system_config.c中的config_printf_time
|
|
// 5.防止pcm数据打印出错,降低串口波特率为1000000
|
|
// 打开测试模式后会等ADC数据稳定并将ADC中数据通过打印出来用作分析
|
|
#define AUD_ADC_TEST_DEMO 0
|
|
|
|
#define AUD_MEDIA_EFx_SCENE_SWITCH_ENABLE 0 //媒体音效场景切换使能
|
|
#define AUD_MIC_EFx_SCENE_SWITCH_ENABLE 0 //麦克风音效场景切换使能
|
|
|
|
//**************************************
|
|
// 音频模块链接配置
|
|
//**************************************
|
|
/*通话语音处理算法*/
|
|
#define AUDIO_CVP_TEXT_AT_RAM 0 //COMMON TEXT
|
|
#define AUDIO_CVP_AEC_AT_RAM 0 //AEC
|
|
#define AUDIO_CVP_NLP_AT_RAM 0 //NLP
|
|
#define AUDIO_CVP_NS_AT_RAM 0 //ANS/下行降噪
|
|
#define AUDIO_CVP_COMMON_AT_RAM 0 //COMMON
|
|
#define AUDIO_CVP_DNS_AT_RAM 0 //DNS
|
|
#define AUDIO_CVP_AGC_AT_RAM 0 //AGC
|
|
#define AUDIO_CVP_DMS_AT_RAM 0 //双MIC DMS
|
|
#define AUDIO_CVP_SMS_AT_RAM 0 //单MIC SMS_TDE
|
|
#define AUDIO_CVP_PREP_AT_RAM 0 //COMMON 预处理
|
|
#define AUDIO_CVP_WN_AT_RAM 0 //抗风噪
|
|
#define AUDIO_CVP_THIRD_AT_RAM 0 //3MIC
|
|
#define AUDIO_ENCODER_AT_RAM 0 //MSBC/CVSD 解码
|
|
|
|
#define AUD_AAC_DEC_AT_RAM 0 //AAC解码
|
|
|
|
#define AUD_SBC_DEC_AT_RAM 0
|
|
#define AUD_MSBC_CODEC_AT_RAM 0
|
|
|
|
//**************************************
|
|
// 模块使能控制
|
|
//**************************************
|
|
#define AUD_PDM_LINK_ENABLE 0
|
|
|
|
//***************End********************
|
|
#define AUDIO_ADC_IRQ_POINTS 256
|
|
|
|
#if TCFG_BT_VOL_SYNC_ENABLE
|
|
#define TCFG_MAX_VOL_PROMPT 0
|
|
#else
|
|
#define TCFG_MAX_VOL_PROMPT 1
|
|
#endif
|
|
/*
|
|
*br36 支持24bit位宽输出
|
|
* */
|
|
#define TCFG_AUDIO_DAC_24BIT_MODE 0
|
|
#define AUDIO_DAC_MAX_SAMPLE_RATE 48000
|
|
|
|
|
|
/*
|
|
*该配置适用于没有音量按键的产品,防止打开音量同步之后
|
|
*连接支持音量同步的设备,将音量调小过后,连接不支持音
|
|
*量同步的设备,音量没有恢复,导致音量小的问题
|
|
*默认是没有音量同步的,将音量设置到最大值,可以在vol_sync.c
|
|
*该宏里面修改相应的设置。
|
|
*/
|
|
#define TCFG_VOL_RESET_WHEN_NO_SUPPORT_VOL_SYNC 0 //不支持音量同步的设备默认最大音量
|
|
|
|
#define TCFG_1T2_VOL_RESUME_WHEN_NO_SUPPORT_VOL_SYNC 0 //1T2不支持音量同步的设备则恢复上次设置的音量值
|
|
|
|
/*省电容mic模块使能*//*省电容mic模块使能*/
|
|
#if (TCFG_ADC0_ENABLE && (TCFG_ADC0_MODE == 2))
|
|
#define TCFG_SUPPORT_MIC_CAPLESS 1
|
|
#else
|
|
#define TCFG_SUPPORT_MIC_CAPLESS 0
|
|
#endif
|
|
|
|
/*省电容mic校准方式选择*/
|
|
#define MC_BIAS_ADJUST_DISABLE 0 //省电容mic偏置校准关闭
|
|
#define MC_BIAS_ADJUST_ONE 1 //省电容mic偏置只校准一次(跟dac trim一样)
|
|
#define MC_BIAS_ADJUST_POWER_ON 2 //省电容mic偏置每次上电复位都校准(Power_On_Reset)
|
|
#define MC_BIAS_ADJUST_ALWAYS 3 //省电容mic偏置每次开机都校准(包括上电复位和其他复位)
|
|
/*
|
|
*省电容mic偏置电压自动调整(因为校准需要时间,所以有不同的方式)
|
|
*1、烧完程序(完全更新,包括配置区)开机校准一次
|
|
*2、上电复位的时候都校准,即断电重新上电就会校准是否有偏差(默认)
|
|
*3、每次开机都校准,不管有没有断过电,即校准流程每次都跑
|
|
*/
|
|
#if TCFG_SUPPORT_MIC_CAPLESS
|
|
#define TCFG_MC_BIAS_AUTO_ADJUST MC_BIAS_ADJUST_ONE
|
|
#else
|
|
#define TCFG_MC_BIAS_AUTO_ADJUST MC_BIAS_ADJUST_DISABLE
|
|
#endif/*TCFG_SUPPORT_MIC_CAPLESS*/
|
|
#define TCFG_MC_CONVERGE_PRE 0 //省电容mic预收敛
|
|
#define TCFG_MC_CONVERGE_TRACE 0 //省电容mic收敛值跟踪
|
|
/*
|
|
*省电容mic收敛步进限制
|
|
*0:自适应步进调整, >0:收敛步进最大值
|
|
*注:当mic的模拟增益或者数字增益很大的时候,mic_capless模式收敛过程,
|
|
*变化的电压放大后,可能会听到哒哒声,这个时候就可以限制住这个收敛步进
|
|
*让收敛平缓进行(前提是预收敛成功的情况下)
|
|
*/
|
|
#define TCFG_MC_DTB_STEP_LIMIT 3 //最大收敛步进值
|
|
/*
|
|
*省电容mic使用固定收敛值
|
|
*可以用来测试默认偏置是否合理:设置固定收敛值7000左右,让mic的偏置维持在1.5v左右即为合理
|
|
*正常使用应该设置为0,让程序动态收敛
|
|
*/
|
|
#define TCFG_MC_DTB_FIXED 0
|
|
|
|
#define TCFG_ESCO_PLC 1 //通话丢包修复(1T2已修改为节点)
|
|
#define TCFG_AEC_ENABLE 1 //通话回音消除使能
|
|
|
|
#define MAX_ANA_VOL (3) // 系统最大模拟音量,范围: 0 ~ 3
|
|
//#define MAX_COM_VOL (16) // 数值应该大于等于16,具体数值应小于联合音量等级的数组大小 (combined_vol_list)
|
|
//#define MAX_DIG_VOL (16) // 数值应该大于等于16,因为手机是16级,如果小于16会导致某些情况手机改了音量等级但是小机音量没有变化
|
|
|
|
/*#if (SYS_VOL_TYPE == VOL_TYPE_DIGITAL)
|
|
#define SYS_MAX_VOL 16
|
|
#define SYS_DEFAULT_VOL 16
|
|
#define SYS_DEFAULT_TONE_VOL 10
|
|
#define SYS_DEFAULT_SIN_VOL 8
|
|
|
|
#elif (SYS_VOL_TYPE == VOL_TYPE_DIGITAL_HW)
|
|
#define SYS_MAX_VOL MAX_DIG_VOL
|
|
#define SYS_DEFAULT_VOL SYS_MAX_VOL
|
|
#define SYS_DEFAULT_TONE_VOL 10
|
|
#define SYS_DEFAULT_SIN_VOL 8
|
|
|
|
#elif (SYS_VOL_TYPE == VOL_TYPE_ANALOG)
|
|
#define SYS_MAX_VOL MAX_ANA_VOL
|
|
#define SYS_DEFAULT_VOL SYS_MAX_VOL
|
|
#define SYS_DEFAULT_TONE_VOL 10
|
|
#define SYS_DEFAULT_SIN_VOL 8
|
|
|
|
#elif (SYS_VOL_TYPE == VOL_TYPE_AD)
|
|
#define SYS_MAX_VOL MAX_COM_VOL
|
|
#define SYS_DEFAULT_VOL SYS_MAX_VOL
|
|
#define SYS_DEFAULT_TONE_VOL 14
|
|
#define SYS_DEFAULT_SIN_VOL 8
|
|
#else
|
|
#error "SYS_VOL_TYPE define error"
|
|
#endif*/
|
|
|
|
/*数字音量最大值定义*/
|
|
#define DEFAULT_DIGITAL_VOLUME 16384
|
|
#define IDLE_DEFAULT_MAX_VOLUME 16 //音量调节IDLE 状态的最大音量
|
|
|
|
#if TCFG_AUDIO_ANC_ENABLE
|
|
#define ANC_MODE_DIG_VOL_LIMIT (0.0f)
|
|
#endif/*TCFG_AUDIO_ANC_ENABLE*/
|
|
|
|
|
|
#define BT_MUSIC_VOL_LEAVE_MAX 16 /*高级音频音量等级*/
|
|
#define BT_CALL_VOL_LEAVE_MAX 15 /*通话音量等级*/
|
|
// #define BT_CALL_VOL_STEP (-2.0f) [>通话音量等级衰减步进<]
|
|
|
|
/*
|
|
*audio state define
|
|
*/
|
|
#define APP_AUDIO_STATE_IDLE 0
|
|
#define APP_AUDIO_STATE_MUSIC 1
|
|
#define APP_AUDIO_STATE_CALL 2
|
|
#define APP_AUDIO_STATE_WTONE 3
|
|
#define APP_AUDIO_CURRENT_STATE 4
|
|
|
|
#define TONE_BGM_FADEOUT 0 //播叠加提示音时是否将背景音淡出
|
|
|
|
#define VOL_TAB_CUSTOM_EN 1 //使能音量表功能
|
|
|
|
#define TCFG_AUDIO_MIC_DUT_ENABLE 0 //麦克风测试和传递函数测试
|
|
//**************************************
|
|
// EFFECT配置
|
|
//**************************************
|
|
#define AUDIO_EFFECTS_REVERB_AT_RAM 0
|
|
#define AUDIO_EFFECTS_ECHO_AT_RAM 0
|
|
#define AUDIO_EFFECTS_EQ_AT_RAM 0
|
|
#define AUDIO_EFFECTS_DRC_AT_RAM 0
|
|
#define AUDIO_EFFECTS_AFC_AT_RAM 0
|
|
#define AUDIO_EFFECTS_NOISEGATE_AT_RAM 0
|
|
#define AUDIO_EFFECTS_GAIN_AT_RAM 0
|
|
#define AUDIO_EFFECTS_DYNAMIC_EQ_AT_RAM 0
|
|
#define AUDIO_EFFECTS_MIC_EFFECT_AT_RAM 0
|
|
#define AUDIO_EFFECTS_MIC_STREAM_AT_RAM 0
|
|
#define AUDIO_EFFECTS_DEBUG_AT_RAM 0
|
|
#define AUDIO_EFFECTS_VBASS_AT_RAM 0
|
|
#define AUDIO_EFFECTS_SURROUND_AT_RAM 0
|
|
|
|
#define TCFG_CODE_RUN_RAM_FM_MODE 0
|
|
|
|
//**************************************
|
|
// 音效模块使能配置
|
|
//**************************************
|
|
|
|
//limiter运行模式使能控制,支持多种位宽时使用或配置
|
|
#define AUDIO_LIMITER_RUN_MODE (EFx_BW_32t16 | LIMITER_PRECISION_MAX)
|
|
|
|
#endif/*_AUDIO_CONFIG_DEF_H_*/
|