This commit is contained in:
huxi
2025-12-03 11:12:34 +08:00
parent c23ae4f24c
commit bc195654bf
8163 changed files with 3799544 additions and 92 deletions
+56
View File
@@ -0,0 +1,56 @@
#ifndef _CVP_NS_H_
#define _CVP_NS_H_
#include "generic/typedef.h"
/******************************* ANS ***************************/
/*ans参数*/
typedef struct {
char wideband;
char mode;
float AggressFactor;
float MinSuppress;
float NoiseLevel;
} noise_suppress_param;
int noise_suppress_frame_point_query(noise_suppress_param *param);
int noise_suppress_mem_query(noise_suppress_param *param);
int noise_suppress_open(noise_suppress_param *param);
int noise_suppress_close(void);
int noise_suppress_run(short *in, short *out, int npoint);
enum {
NS_CMD_NOISE_FLOOR = 1,
NS_CMD_LOWCUTTHR,
NS_CMD_AGGRESSFACTOR,
NS_CMD_MINSUPPRESS,
};
/*
* (1)NOISEFLOOR : 设定噪声估计的最小阈值,低于阈值的信号不会被估计。
* 主要为了应对手机处理过的信号中无声段的幅度很低,
* 语音段又抬高导致的噪声估计失效问题。
* (2)LOWCUTTHR : 设定经过降噪后的信号清0阈值,低于此阈值的信号会被清0。
* 主要为了应对硬件FFT精度不够,反变换太小的值时会出现噪声。
*/
int noise_suppress_config(u32 cmd, int arg, void *priv);
/******************************* DNS ***************************/
/*dns参数*/
typedef struct {
float DNS_OverDrive; //降噪强度 range[0:6.0]
float DNS_GainFloor; //最小压制 range[0:1.00]
float DNS_NoiseLevel;
float DNS_highGain; //EQ强度 range[1.0:3.5]
float DNS_rbRate; //混响强度 range[0:0.9]
int sample_rate;
} dns_param_t;
int audio_dns_run(void *hdl, short *in, short *out, int len);
void *audio_dns_open(dns_param_t *param);
int audio_dns_close(void *hdl);
/*在线更新参数*/
int audio_dns_updata_param(void *hdl, float DNS_GainFloor, float DNS_OverDrive);
#endif/*_CVP_NS_H_*/