acoustic ec software library · main page related pages modules data structures files profiling...

Post on 20-Mar-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

MainPage RelatedPages Modules DataStructures

Files Profiling

AcousticECSoftwareLibrary

ProfilinghasbeendoneinordertoevaluatetheresourceconsumptionintermsofMIPS.RAMandFLASHfiguresmaychangedependingonspecificusecaseoptimizations.ThefollowingfigureshowstheprofilingresultsforacousticechocancellationusingaSTM32F446MCUbasedonanARMM4corewithfloatingpointunitrunningat168MHz(210DMIPSavailable)andtheIARembeddedworkbenchtoolchain,version7.70.OptimizationhasbeensetonHigh,speed.

Memoryfootprintdependsonthelengthofthefiltertail.Datahasbeencollectedusingafiltertaillengthequalto128and512.

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files Profiling

AcousticECSoftwareLibrary

Modules

Hereisalistofallmodules:[detaillevel 1 2 3 4 ]

▼MIDDLEWARES ▼ACOUSTIC_EC ▼AcousticECExportedConstants Acoustic_EC_errors Echocancellationerrors Acoustic_EC_preprocessor Echocancellation

preprocessor AcousticECExportedTypes AcousticBFExportedFunctions

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingModules

AcousticECSoftwareLibrary

MIDDLEWARES

Modules ACOUSTIC_EC

DetailedDescription

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingModules

AcousticECSoftwareLibrary

ACOUSTIC_ECMIDDLEWARES

Modules AcousticECExportedConstants AcousticECExportedTypes AcousticBFExportedFunctions

DetailedDescription

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingModules

AcousticECSoftwareLibrary

AcousticECExportedConstantsMIDDLEWARES»ACOUSTIC_EC

Modules Acoustic_EC_errors Echocancellationerrors. Acoustic_EC_preprocessor Echocancellationpreprocessor.

DetailedDescription

/

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingMacros

AcousticECSoftwareLibrary

Acoustic_EC_errorsMIDDLEWARES»ACOUSTIC_EC»AcousticECExportedConstants

Echocancellationerrors.More...

Macros#define ACOUSTIC_EC_TAIL_LENGTH_ERROR((uint32_t)0x00000001)#define ACOUSTIC_EC_AEC_LEVEL_ERROR((uint32_t)0x00000002)#define ACOUSTIC_EC_PTR_CHANNELS_ERROR((uint32_t)0x00000004)#define ACOUSTIC_EC_PREPROCESS_ERROR((uint32_t)0x00000010)#define ACOUSTIC_LOCK_ERROR((uint32_t)0x10000000)

DetailedDescription

Echocancellationerrors.

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingMacros

AcousticECSoftwareLibrary

Acoustic_EC_preprocessorMIDDLEWARES»ACOUSTIC_EC»AcousticECExportedConstants

Echocancellationpreprocessor.More...

Macros#define ACOUSTIC_EC_PREPROCESS_ENABLE((uint32_t)0x00000001)#define ACOUSTIC_EC_PREPROCESS_DISABLE((uint32_t)0x00000000)

DetailedDescription

Echocancellationpreprocessor.

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures

AcousticECSoftwareLibrary

AcousticECExportedTypesMIDDLEWARES»ACOUSTIC_EC

DataStructuresstruct AcousticEC_Handler_t Libraryhandler.Itkeepstrackofthestaticparametersandit

handlestheinternalstateofthealgorithm.More...struct AcousticEC_Config_t Librarydynamicconfigurationhandler.Itcontainsdynamic

parameters.More...

DetailedDescription

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

DataFields

AcousticECSoftwareLibrary

AcousticEC_Handler_tStructReferenceMIDDLEWARES»ACOUSTIC_EC»AcousticECExportedTypes

Libraryhandler.Itkeepstrackofthestaticparametersandithandlestheinternalstateofthealgorithm.More...

#include<acoustic_ec.h>

DataFieldsuint16_t tail_length

uint32_t preprocess_init

uint16_t ptr_primary_channels

uint16_t ptr_reference_channels

uint16_t ptr_output_channels

uint32_t internal_memory_size

uint32_t* pInternalMemory

DetailedDescription

Libraryhandler.Itkeepstrackofthestaticparametersandithandlestheinternalstateofthealgorithm.

FieldDocumentation

uint32_tinternal_memory_size

Keepstrackoftheamountofmemoryrequiredforthecurrentsetup.It'sfilledbythelibSpeexAEC_getMemorySize()functionandmustbeusedtoallocatetherightamountofRAM

uint32_t*pInternalMemory

Pointertothememoryallocatedbytheuser

uint32_tpreprocess_init

Specifiestheoptionforthepreprocessoruinitialization.ThisparametercanbeavalueofAcoustic_EC_preprocessor.

uint16_tptr_output_channels

SpecifiesthenumberofchannelintheOutputStream.DefaultValueis1.

uint16_tptr_primary_channels

SpecifiesthenumberofchannelinthePrimaryStream.DefaultValueis1.

uint16_tptr_reference_channels

SpecifiesthenumberofchannelintheReferenceStream.DefaultValueis1.

uint16_ttail_length

Specifiesthelengthofthefiltertail.DefaultValueis512.

Thedocumentationforthisstructwasgeneratedfromthefollowingfile:

D:/Documents/Repositories/DMIC/Private/Fw/OSX_Libraries/EchoCancellation/trunk/export/

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

DataFields

AcousticECSoftwareLibrary

AcousticEC_Config_tStructReferenceMIDDLEWARES»ACOUSTIC_EC»AcousticECExportedTypes

Librarydynamicconfigurationhandler.Itcontainsdynamicparameters.More...

#include<acoustic_ec.h>

DataFieldsuint32_t preprocess_stateuint32_t AGC_valueuint32_t residual_echo_removeint32_t noise_suppress_default

int32_t echo_suppress_default

int32_t echo_suppress_active

DetailedDescription

Librarydynamicconfigurationhandler.Itcontainsdynamicparameters.

FieldDocumentation

uint32_tAGC_value

SpecifiesthethresholdfortheAGC,ifactivated

int32_techo_suppress_active

Specifiestheechosuppressactiveparameterofthepreprocessor

int32_techo_suppress_default

Specifiestheechosuppressdefaultparameterofthepreprocessor

int32_tnoise_suppress_default

Specifiesthenoisesuppressdefaultparameterofthepreprocessor

uint32_tpreprocess_state

Enableordisablepre-processfunction

uint32_tresidual_echo_remove

Activateresidualechoremoval

Thedocumentationforthisstructwasgeneratedfromthefollowingfile:

D:/Documents/Repositories/DMIC/Private/Fw/OSX_Libraries/EchoCancellation/trunk/export/

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFunctions

AcousticECSoftwareLibrary

AcousticBFExportedFunctionsMIDDLEWARES»ACOUSTIC_EC

Functions

uint32_t AcousticEC_getMemorySize(AcousticEC_Handler_t*pHandler)

Fillsthe"internal_memory_size"ofthepHandlerparameterpassedasargumentwithavaluerepresentingtherightamountofmemoryneededbythelibrary,dependingonthespecificstaticparametersadopted.More...

uint32_t AcousticEC_Init(AcousticEC_Handler_t*pHandler) Libraryinitialization.More...

uint32_tAcousticEC_Data_Input(void*ptrPrimary,void*ptrReference,void*ptrBufferOut,AcousticEC_Handler_t*pHandler)

Librarydatainputandoutputfunction.More...uint32_t AcousticEC_Process(AcousticEC_Handler_t*pHandler) Libraryrunfunction,performsaudioanalysiswhenall

requireddatahasbeencollected.More...

uint32_t AcousticEC_setConfig(AcousticEC_Handler_t*pHandler,AcousticEC_Config_t*pConfig)

Librarysetupfunction,itsetsthevaluesfordynamicparameters.Itcanbecalledatruntimetochangedynamicparameters.More...

uint32_t AcousticEC_getConfig(AcousticEC_Handler_t*pHandler,AcousticEC_Config_t*pConfig) FillsthepConfigstructurewiththeactualdynamic

parametersastheyareusedinsidethelibrary.More...uint32_t AcousticEC_GetLibVersion(char*version) Tobeusedtoretrieveversioninformation.More...

DetailedDescription

FunctionDocumentation

uint32_tAcousticEC_Data_Input ( void* ptrPrimary,

void* ptrReference,void* ptrBufferOut,AcousticEC_Handler_t* pHandler)

Librarydatainputandoutputfunction.

ParametersptrPrimary pointertoanarraythatcontainsPCMsamples

(16bitsignedint)oftheprimarysignal(1ms=16samplesat16KHZ).

ptrReference pointertoanarraythatcontainsPCMsamples(16bitsignedint)ofthereference(echo)signal(1ms=16samplesat16KHZ).

ptrBufferOut pointertoanarraythatwillcontainoutputPCMsamples(1msforprocessedchannel=16samplesat16KHZ).

pHandler pointertothehandlerofthecurrentSpeexAECinstancerunning.

Returnvalues1 ifdatacollectionisfinishedandlibSpeexAEC_Processmustbecalled,0otherwise.

NoteInput/outputfunctionreadsandwritesamplesskippingthe

requirednumberofvaluesdependingontheptr_Mx_channelsconfiguration

uint32_tAcousticEC_getConfig ( AcousticEC_Handler_t* pHandler,

AcousticEC_Config_t* pConfig)

FillsthepConfigstructurewiththeactualdynamicparametersastheyareusedinsidethelibrary.

ParameterspHandler AcousticEC_Handler_tfilledwithdesired

parameters.pConfig pointertothedynamicparametershandlerthatwill

befilledwiththecurrentlibraryconfiguration.

Returnvalues0 ifeverythingisok,1otherwise.

uint32_tAcousticEC_GetLibVersion ( char* version )

Tobeusedtoretrieveversioninformation.

Parametersnone

ReturnvaluesVersion Number.

uint32_tAcousticEC_getMemorySize ( AcousticEC_Handler_t* pHandler )

Fillsthe"internal_memory_size"ofthepHandlerparameterpassedasargumentwithavaluerepresentingtherightamountofmemory

neededbythelibrary,dependingonthespecificstaticparametersadopted.

ParameterspHandler AcousticEC_Handler_tfilledwithdesired

parameters.

Returnvalues0 ifeverythingisfine.

uint32_tAcousticEC_Init ( AcousticEC_Handler_t* pHandler )

Libraryinitialization.

ParameterspHandler AcousticEC_Handler_tfilledwithdesired

parameters.

Returnvalues0 ifeverythingisfine.differentfrom0iferroneousparametershavebeenpassedtotheInitfunctionandthedefaultvaluehasbeenused.Thespecificerrorcanberecognizedbycheckingtherelativebitinthereturnedword.

uint32_tAcousticEC_Process ( AcousticEC_Handler_t* pHandler )

Libraryrunfunction,performsaudioanalysiswhenallrequireddatahasbeencollected.

ParameterspHandler pointertothehandlerofthecurrentSpeexAEC

instancerunning

Returnvalues0 ifeverythingisok,1otherwise.

uint32_tAcousticEC_setConfig ( AcousticEC_Handler_t* pHandler,

AcousticEC_Config_t* pConfig)

Librarysetupfunction,itsetsthevaluesfordynamicparameters.Itcanbecalledatruntimetochangedynamicparameters.

ParameterspHandler AcousticEC_Handler_tfilledwithdesired

parameters.pConfig pointertothedynamicparametershandlerthatwill

befilledwiththecurrentlibraryconfiguration.

Returnvalues0 ifeverythingisok,1otherwise.

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

AcousticECSoftwareLibrary

DataStructures

Herearethedatastructureswithbriefdescriptions:

C AcousticEC_Config_t Librarydynamicconfigurationhandler.Itcontainsdynamicparameters

C AcousticEC_Handler_t Libraryhandler.Itkeepstrackofthestaticparametersandithandlestheinternalstateofthealgorithm

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

AcousticECSoftwareLibrary

DataStructureIndex

A

A AcousticEC_Handler_t

AcousticEC_Config_t

A

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

All Variables

AcousticECSoftwareLibrary

Hereisalistofalldocumentedstructandunionfieldswithlinkstothestruct/uniondocumentationforeachfield:

AGC_value:AcousticEC_Config_techo_suppress_active:AcousticEC_Config_techo_suppress_default:AcousticEC_Config_tinternal_memory_size:AcousticEC_Handler_tnoise_suppress_default:AcousticEC_Config_tpInternalMemory:AcousticEC_Handler_tpreprocess_init:AcousticEC_Handler_tpreprocess_state:AcousticEC_Config_tptr_output_channels:AcousticEC_Handler_tptr_primary_channels:AcousticEC_Handler_tptr_reference_channels:AcousticEC_Handler_tresidual_echo_remove:AcousticEC_Config_ttail_length:AcousticEC_Handler_t

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingDataStructures DataStructureIndex DataFields

All Variables

AcousticECSoftwareLibrary

AGC_value:AcousticEC_Config_techo_suppress_active:AcousticEC_Config_techo_suppress_default:AcousticEC_Config_tinternal_memory_size:AcousticEC_Handler_tnoise_suppress_default:AcousticEC_Config_tpInternalMemory:AcousticEC_Handler_tpreprocess_init:AcousticEC_Handler_tpreprocess_state:AcousticEC_Config_tptr_output_channels:AcousticEC_Handler_tptr_primary_channels:AcousticEC_Handler_tptr_reference_channels:AcousticEC_Handler_tresidual_echo_remove:AcousticEC_Config_ttail_length:AcousticEC_Handler_t

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFileList

AcousticECSoftwareLibrary

FileList

Hereisalistofalldocumentedfileswithbriefdescriptions:[detaillevel 1 2 3 4 ]

▼ EchoCancellation ▼ trunk ▼ export acoustic_ec.h

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFileList

EchoCancellation

AcousticECSoftwareLibrary

EchoCancellationDirectoryReference

Directories

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFileList

EchoCancellation trunk

AcousticECSoftwareLibrary

trunkDirectoryReference

Directories

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFileList

EchoCancellation trunk export

AcousticECSoftwareLibrary

exportDirectoryReference

Files

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files ProfilingFileList

EchoCancellation trunk export

AcousticECSoftwareLibrary

acoustic_ec.h

1

55 /*Definetopreventrecursiveinclusion---

----------------------------------*/

56 #ifndef__ACOUSTIC_EC_H

57 #define__ACOUSTIC_EC_H

58

59 /*Includes--------------------------------

----------------------------------*/

60 #include"stdint.h"

61 /*Exportedconstants----------------------

----------------------------------*/

62 /*Exportedmacro--------------------------

----------------------------------*/

63 /*Exporteddefine-------------------------

----------------------------------*/

64 /*Exportedfunctions----------------------

---------------------------------*/

65 /*Exportedtypes--------------------------

----------------------------------*/

66

83 #defineACOUSTIC_EC_TAIL_LENGTH_ERROR

((uint32_t)0x00000001)

84 #defineACOUSTIC_EC_AEC_LEVEL_ERROR

((uint32_t)0x00000002)

85 #defineACOUSTIC_EC_PTR_CHANNELS_ERROR

((uint32_t)0x00000004)

86 #defineACOUSTIC_EC_PREPROCESS_ERROR

((uint32_t)0x00000010)

87

88 #ifndefACOUSTIC_LOCK_ERROR

89 #defineACOUSTIC_LOCK_ERROR

((uint32_t)0x10000000)

90 #endif

91

99 #defineACOUSTIC_EC_PREPROCESS_ENABLE

((uint32_t)0x00000001)

100 #defineACOUSTIC_EC_PREPROCESS_DISABLE

((uint32_t)0x00000000)

101

117 typedefstruct

118 {

119 uint16_ttail_length;

120 uint32_tpreprocess_init;

121 uint16_tptr_primary_channels;

122 uint16_tptr_reference_channels;

123 uint16_tptr_output_channels;

124 uint32_tinternal_memory_size;

127 uint32_t*pInternalMemory;

129 }

130 AcousticEC_Handler_t;

131

135 typedefstruct

136 {

137 uint32_tpreprocess_state;

138 uint32_tAGC_value;

139 uint32_tresidual_echo_remove;

140 int32_tnoise_suppress_default;

141 int32_techo_suppress_default;

142 int32_techo_suppress_active;

143 }

144 AcousticEC_Config_t;

145

160 uint32_t

AcousticEC_getMemorySize(AcousticEC_Handler_t

*pHandler);

161

169 uint32_t

AcousticEC_Init(AcousticEC_Handler_t*

pHandler);

170

184 uint32_tAcousticEC_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_tAcousticEC_GetLibVersion(char

*version);

216

217

218

230 #endif/*__ACOUSTIC_EC_H*/

231

232 /*******************(C)COPYRIGHT2015

STMicroelectronics*****ENDOFFILE****/

Generatedby 1.8.11

MainPage RelatedPages Modules DataStructures

Files Profiling

AcousticECSoftwareLibrary

RelatedPages

Hereisalistofallrelateddocumentationpages:

profiling

Generatedby 1.8.11

top related