78 lines
3 KiB
C
78 lines
3 KiB
C
|
|
|
|
/*****************************************************************************
|
|
1 其他头文件包含
|
|
*****************************************************************************/
|
|
#include "v_typdef.h"
|
|
|
|
#ifndef _MED_AEC3_MAIN_H_
|
|
#define _MED_AEC3_MAIN_H_
|
|
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#endif
|
|
|
|
/*****************************************************************************
|
|
2 宏定义
|
|
*****************************************************************************/
|
|
|
|
/*****************************************************************************
|
|
3 枚举定义
|
|
*****************************************************************************/
|
|
|
|
/*****************************************************************************
|
|
4 全局变量声明
|
|
*****************************************************************************/
|
|
|
|
/*****************************************************************************
|
|
5 STRUCT定义
|
|
*****************************************************************************/
|
|
typedef VOS_VOID (*NS_HANDLER_T)(VOS_VOID *stNs, VOS_INT16 *shwBuf, VOS_INT32 swFrameLength);
|
|
|
|
/* AEC参数初始化接口 */
|
|
typedef struct
|
|
{
|
|
VOS_BOOL enEAecEnable; /* AEC: 增强免提AEC使能开关 */
|
|
VOS_BOOL enHpfEnable; /* HPF: 高通滤波开关 */
|
|
VOS_BOOL enAfEnable; /* AF : 自适应滤波开关 */
|
|
VOS_BOOL enNsEnable; /* NS : 噪声抑制开关 */
|
|
VOS_INT16 shwDelayLength; /* DELAY: 固定延时 */
|
|
} MED_AEC3_NV_STRU;
|
|
|
|
/*****************************************************************************
|
|
6 UNION定义
|
|
*****************************************************************************/
|
|
|
|
/*****************************************************************************
|
|
7 OTHERS定义
|
|
*****************************************************************************/
|
|
|
|
/*****************************************************************************
|
|
8 函数声明
|
|
*****************************************************************************/
|
|
extern VOS_UINT32 MED_AEC3_Main(
|
|
VOS_VOID *pAecInstance,
|
|
VOS_INT16 *pshwMicIn,
|
|
VOS_INT16 *pshwSpkIn,
|
|
VOS_INT16 *pshwLineOut);
|
|
extern VOS_VOID* MED_AEC3_Create(void);
|
|
extern VOS_UINT32 MED_AEC3_Destroy(VOS_VOID **ppAecObj);
|
|
extern VOS_UINT32 MED_AEC3_SetPara (
|
|
VOS_VOID *pAecInstance,
|
|
MED_AEC3_NV_STRU *pstNv,
|
|
VOS_INT32 enSampleRate);
|
|
extern VOS_UINT32 MED_AEC3_SetExtenalNsHandle(
|
|
VOS_VOID *pAecInstance,
|
|
VOS_VOID *pstNs,
|
|
NS_HANDLER_T swNsHandler);
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif /* end of med_aec_main.h*/
|
|
|