Wave Arts VQE  1.00
Voice Quality Enhancement
Public Attributes
VQEParam Struct Reference

VQE parameter structure. More...

#include <WaVQE.h>

List of all members.

Public Attributes

AecSyncParam syncParam
 sample synchronization parameters
WaAECAlg alg
 AEC algorithm.
union {
   AecParam   aecParam
   AesParam   aesParam
param
 union of AEC parameters
int fifoPrimeThresh
 number of FIFO buffers to accept before primed
int runCountThresh
 number buf times to allow buffer over/underrun
bool cacheLatency
 cache latency, else measure every time if false
bool hasAutoGain
 has auto-gain?
AutoGainParam autoGainParam
 auto-gain parameters
bool hasDeclip
 has declip?
DeclipLpfParam declipParam
 declip parameters
bool matlabDump
 produce MATLAB data dump for analysis
bool dumpFiles
 produce WAV dump files
bool dumpResponse
 dump AEC impulse response
char in0Name [32]
 input file before aec (raw recording)
char in1Name [32]
 input file after aec (error, or echo-cancelled result)
char out0Name [32]
 output file before aec (far signal)
char out1Name [32]
 output file after aec (sent to speaker)
char dumpDir [256]
 directory for dumping files including '/' terminator

Detailed Description

VQE parameter structure.

The VQEParam structure is passed to VQE on creation. At creation time you must specify various DSP parameters, namely the echo cancellation algorithm and its parameters, whether VQE will implement auto-gain and de-clipping functions, and any debugging parameters. Some of the algorithms have limited runtime control; in particular it is possible to enable/disable the echo canceller, the auto-gain, and the declipper.

The static method WaVQE::GetDefaultParam initializes the VQEParam to sensible defaults. Currently this selects the AEC algorithm set up with a tail length of 192 msec at 8 kHz, or 96 msec at 16 kHz, and the speaker compensation mode of AEC_SPKR_DESKTOP for medium desktop speakers. See AecParam for more information on specific Aec parameters.

The default VQEParam also selects no sample rate synchronization. See AecSyncParam and AecCalibrator for more information on sample rate calibration and synchronization. If you want to select a synchronization method by using information from prior calibration, you must set up the AecSyncParam structure.

By default the auto-gain feature is created and enabled, and the de-clipper feature is created and enabled.

The cacheLatency parameter specifies whether the latency measurement (beep) is to be repeated every time the audio stream is open, setting this true causes the measurement to be done only once, however the latency is not stored in a file. The default is false, hence the latency is measured each time the stream is opened.

WadParams that overlap AEC params (e.g., sampling rate, number channels) take precendence over the corresponding AEC params which are ignored. Also, VQE can be set up to run unidirectional streams, and if the stream is unidirectional the AEC and associated AecInFifo are simply not created. Sample synchronization and latency measurement are enabled only if the AEC is created. The AEC is created only if the stream is bidirectional and the sampling rate is 8 kHz or 16 kHz. When running an input unidirectional stream, auto-gain and de-clip are still active if selected.


The documentation for this struct was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines