Acoustic EC Software Library: D:/Documents/Repositories/DMIC/Private/Fw/OSX_Libraries/EchoCancellation/trunk/export/acoustic_ec.h Source File

STM32 Acoustic EC

acoustic_ec.h
1 
55 /* Define to prevent recursive inclusion -------------------------------------*/
56 #ifndef __ACOUSTIC_EC_H
57 #define __ACOUSTIC_EC_H
58 
59 /* Includes ------------------------------------------------------------------*/
60 #include "stdint.h"
61 /* Exported constants --------------------------------------------------------*/
62 /* Exported macro ------------------------------------------------------------*/
63 /* Exported define -----------------------------------------------------------*/
64 /* Exported functions ------------------------------------------------------- */
65 /* Exported types ------------------------------------------------------------*/
66 
83 #define ACOUSTIC_EC_TAIL_LENGTH_ERROR ((uint32_t)0x00000001)
84 #define ACOUSTIC_EC_AEC_LEVEL_ERROR ((uint32_t)0x00000002)
85 #define ACOUSTIC_EC_PTR_CHANNELS_ERROR ((uint32_t)0x00000004)
86 #define ACOUSTIC_EC_PREPROCESS_ERROR ((uint32_t)0x00000010)
87 
88 #ifndef ACOUSTIC_LOCK_ERROR
89 #define ACOUSTIC_LOCK_ERROR ((uint32_t)0x10000000)
90 #endif
91 
99 #define ACOUSTIC_EC_PREPROCESS_ENABLE ((uint32_t)0x00000001)
100 #define ACOUSTIC_EC_PREPROCESS_DISABLE ((uint32_t)0x00000000)
101 
117 typedef struct
118 {
119  uint16_t tail_length;
120  uint32_t preprocess_init;
127  uint32_t * pInternalMemory;
129 }
131 
135 typedef struct
136 {
137  uint32_t preprocess_state;
138  uint32_t AGC_value;
143 }
145 
161 
169 uint32_t AcousticEC_Init(AcousticEC_Handler_t * pHandler);
170 
184 uint32_t AcousticEC_Data_Input(void *ptrPrimary, void *ptrReference, void *ptrBufferOut, AcousticEC_Handler_t * pHandler);
185 
191 uint32_t AcousticEC_Process(AcousticEC_Handler_t * pHandler);
192 
200 uint32_t AcousticEC_setConfig(AcousticEC_Handler_t * pHandler, AcousticEC_Config_t * pConfig);
201 
208 uint32_t AcousticEC_getConfig(AcousticEC_Handler_t * pHandler, AcousticEC_Config_t * pConfig);
209 
215 uint32_t AcousticEC_GetLibVersion(char *version);
216 
217 
218 
230 #endif /*__ACOUSTIC_EC_H*/
231 
232 /******************* (C) COPYRIGHT 2015 STMicroelectronics *****END OF FILE****/
Library dynamic configuration handler. It contains dynamic parameters.
Definition: acoustic_ec.h:135
uint32_t AcousticEC_Init(AcousticEC_Handler_t *pHandler)
Library initialization.
uint32_t residual_echo_remove
Definition: acoustic_ec.h:139
uint16_t ptr_primary_channels
Definition: acoustic_ec.h:121
uint16_t ptr_reference_channels
Definition: acoustic_ec.h:122
uint32_t AcousticEC_setConfig(AcousticEC_Handler_t *pHandler, AcousticEC_Config_t *pConfig)
Library setup function, it sets the values for dynamic parameters. It can be called at runtime to cha...
uint32_t AcousticEC_Process(AcousticEC_Handler_t *pHandler)
Library run function, performs audio analysis when all required data has been collected.
int32_t noise_suppress_default
Definition: acoustic_ec.h:140
int32_t echo_suppress_default
Definition: acoustic_ec.h:141
uint32_t AcousticEC_getConfig(AcousticEC_Handler_t *pHandler, AcousticEC_Config_t *pConfig)
Fills the pConfig structure with the actual dynamic parameters as they are used inside the library...
uint32_t AGC_value
Definition: acoustic_ec.h:138
uint32_t internal_memory_size
Definition: acoustic_ec.h:124
uint32_t AcousticEC_GetLibVersion(char *version)
To be used to retrieve version information.
uint32_t * pInternalMemory
Definition: acoustic_ec.h:127
uint16_t tail_length
Definition: acoustic_ec.h:119
uint32_t AcousticEC_Data_Input(void *ptrPrimary, void *ptrReference, void *ptrBufferOut, AcousticEC_Handler_t *pHandler)
Library data input and output function.
Library handler. It keeps track of the static parameters and it handles the internal state of the alg...
Definition: acoustic_ec.h:117
uint32_t AcousticEC_getMemorySize(AcousticEC_Handler_t *pHandler)
Fills the "internal_memory_size" of the pHandler parameter passed as argument with a value representi...
int32_t echo_suppress_active
Definition: acoustic_ec.h:142
uint16_t ptr_output_channels
Definition: acoustic_ec.h:123
uint32_t preprocess_init
Definition: acoustic_ec.h:120
uint32_t preprocess_state
Definition: acoustic_ec.h:137
Generated by   doxygen 1.8.11