79 lines
3 KiB
C
79 lines
3 KiB
C
|
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
#include "v_typdef.h"
|
|||
|
|
|||
|
#ifndef _MED_AEC3_MAIN_H_
|
|||
|
#define _MED_AEC3_MAIN_H_
|
|||
|
|
|||
|
|
|||
|
#ifdef __cplusplus
|
|||
|
#if __cplusplus
|
|||
|
extern "C" {
|
|||
|
#endif
|
|||
|
#endif
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
2 <EFBFBD>궨<EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
3 ö<EFBFBD>ٶ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
4 ȫ<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
5 STRUCT<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
typedef VOS_VOID (*NS_HANDLER_T)(VOS_VOID *stNs, VOS_INT16 *shwBuf, VOS_INT32 swFrameLength);
|
|||
|
|
|||
|
/* AEC<45><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>ӿ<EFBFBD> */
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
VOS_BOOL enEAecEnable; /* AEC: <20><>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD>AECʹ<43>ܿ<EFBFBD><DCBF><EFBFBD> */
|
|||
|
VOS_BOOL enHpfEnable; /* HPF: <20><>ͨ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
VOS_BOOL enAfEnable; /* AF : <20><><EFBFBD><EFBFBD>Ӧ<EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD> */
|
|||
|
VOS_BOOL enNsEnable; /* NS : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD><C6BF><EFBFBD> */
|
|||
|
VOS_INT16 shwDelayLength; /* DELAY: <20>̶<EFBFBD><CCB6><EFBFBD>ʱ */
|
|||
|
} MED_AEC3_NV_STRU;
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
6 UNION<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
7 OTHERS<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
|
|||
|
/*****************************************************************************
|
|||
|
8 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*****************************************************************************/
|
|||
|
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*/
|
|||
|
|