1 2 3 /***************************************************************************** 4 1 ����ͷ�ļ����� 5 *****************************************************************************/ 6 #include "v_typdef.h" 7 8 #ifndef _MED_AEC3_MAIN_H_ 9 #define _MED_AEC3_MAIN_H_ 10 11 12 #ifdef __cplusplus 13 #if __cplusplus 14 extern "C" { 15 #endif 16 #endif 17 18 /***************************************************************************** 19 2 �궨�� 20 *****************************************************************************/ 21 22 /***************************************************************************** 23 3 ö�ٶ��� 24 *****************************************************************************/ 25 26 /***************************************************************************** 27 4 ȫ�ֱ������� 28 *****************************************************************************/ 29 30 /***************************************************************************** 31 5 STRUCT���� 32 *****************************************************************************/ 33 typedef VOS_VOID (*NS_HANDLER_T)(VOS_VOID *stNs, VOS_INT16 *shwBuf, VOS_INT32 swFrameLength); 34 35 /* AEC������ʼ���ӿ� */ 36 typedef struct 37 { 38 VOS_BOOL enEAecEnable; /* AEC: ��ǿ����AECʹ�ܿ��� */ 39 VOS_BOOL enHpfEnable; /* HPF: ��ͨ�˲����� */ 40 VOS_BOOL enAfEnable; /* AF : ����Ӧ�˲����� */ 41 VOS_BOOL enNsEnable; /* NS : �������ƿ��� */ 42 VOS_INT16 shwDelayLength; /* DELAY: �̶���ʱ */ 43 } MED_AEC3_NV_STRU; 44 45 /***************************************************************************** 46 6 UNION���� 47 *****************************************************************************/ 48 49 /***************************************************************************** 50 7 OTHERS���� 51 *****************************************************************************/ 52 53 /***************************************************************************** 54 8 �������� 55 *****************************************************************************/ 56 extern VOS_UINT32 MED_AEC3_Main( 57 VOS_VOID *pAecInstance, 58 VOS_INT16 *pshwMicIn, 59 VOS_INT16 *pshwSpkIn, 60 VOS_INT16 *pshwLineOut); 61 extern VOS_VOID* MED_AEC3_Create(void); 62 extern VOS_UINT32 MED_AEC3_Destroy(VOS_VOID **ppAecObj); 63 extern VOS_UINT32 MED_AEC3_SetPara ( 64 VOS_VOID *pAecInstance, 65 MED_AEC3_NV_STRU *pstNv, 66 VOS_INT32 enSampleRate); 67 extern VOS_UINT32 MED_AEC3_SetExtenalNsHandle( 68 VOS_VOID *pAecInstance, 69 VOS_VOID *pstNs, 70 NS_HANDLER_T swNsHandler); 71 #ifdef __cplusplus 72 #if __cplusplus 73 } 74 #endif 75 #endif 76 77 #endif /* end of med_aec_main.h*/ 78 79