Files
99_7018_lmx/include_lib/media/cvp/cvp_common.h
2025-10-29 13:10:02 +08:00

61 lines
2.0 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef _CVP_COMMON_H_
#define _CVP_COMMON_H_
/*DMS版本定义*/
#define DMS_GLOBAL_V100 0xB1
#define DMS_GLOBAL_V200 0xB2
/*
* V200新算法回声消除nlp模式
* JLSP_NLP_MODE1: 模式1为单独的NLP回声抑制回声压制会偏过该模式下NLP模块可以单独开启
* JLSP_NLP_MODE2: 模式2下回声信号会先经过AEC线性压制然后进行NLP非线性压制
* 此模式NLP不能单独打开需要同时打开AEC,使用AEC模块压制不够时建议开启该模式
*/
#define JLSP_NLP_MODE1 0x01 //模式一(默认)
#define JLSP_NLP_MODE2 0x02 //模式二
/*
* V200新算法风噪降噪模式
* JLSP_WD_MODE1: 模式1为常规的降风噪模式风噪残余会偏大些
* JLSP_WD_MODE2: 模式2为神经网络降风噪风噪抑制会比较干净但是会需要多消耗31kb的flash
*/
#define JLSP_WD_MODE1 0x01 //常规降噪
#define JLSP_WD_MODE2 0x02 //nn降风噪目前该算法启用会多31kflash
/*DMS输出选择*/
typedef enum {
DMS_OUTPUT_SEL_DEFAULT = 0, /*默认输出dms处理后的数据*/
DMS_OUTPUT_SEL_MASTER, /*主mic原始数据*/
DMS_OUTPUT_SEL_SLAVE, /*副mic原始数据*/
DMS_OUTPUT_SEL_FBMIC, /*FB mic原始数据*/
} CVP_OUTPUT_ENUM;
/*
*********************************************************************
* Audio CVP IOCTL
* Description: CVP功能配置
* Arguments : cmd 操作命令
* value 操作数
* priv 操作内存地址
* Return : 0 成功 其他 失败
* Note(s) : (1)比如动态开关降噪NS模块:
* aec_dms_ioctl(CVP_NS_SWITCH,1,NULL); //降噪关
* aec_dms_ioctl(CVP_NS_SWITCH,0,NULL); //降噪开
*********************************************************************
*/
enum {
CVP_AEC_SWITCH = 1,
CVP_NLP_SWITCH,
CVP_NS_SWITCH,
CVP_AGC_SWITCH,
CVP_ENC_SWITCH,
CVP_AGC_MAX_LVL,
};
int aec_ioctl(int cmd, int value, void *priv);
int aec_dms_ioctl(int cmd, int value, void *priv);
int aec_dms_flexible_ioctl(int cmd, int value, void *priv);
#endif /*_CVP_COMMON_H_*/