38#ifndef __SAF_HADES_ANALYSIS_H_INCLUDED__
39#define __SAF_HADES_ANALYSIS_H_INCLUDED__
45#ifdef SAF_ENABLE_HADES_MODULE
48#define HADES_MAX_NMICS ( 64 )
116 float* grid_dirs_deg,
void hades_analysis_reset(hades_analysis_handle const hAna)
Flushes run-time buffers with zeros.
const float * hades_analysis_getFrequencyVectorPtr(hades_analysis_handle const hAna, int *nBands)
Returns a pointer to the frequency vector (read-only)
int hades_analysis_getProcDelay(hades_analysis_handle const hAna)
Returns the analyser processing delay, in samples.
void hades_param_container_destroy(hades_param_container_handle *const phPCon)
Destroys an instance of a hades parameter container.
void hades_analysis_destroy(hades_analysis_handle *const phAna)
Destroys an instance of a hades analysis object.
void hades_signal_container_create(hades_signal_container_handle *const phSCon, hades_analysis_handle const hAna)
Creates an instance of a container used for storing the TF-domain audio returned by an analyser for o...
void hades_analysis_create(hades_analysis_handle *const phAna, float fs, HADES_FILTERBANKS fbOption, int hopsize, int blocksize, int hybridmode, float *h_array, float *grid_dirs_deg, int nGrid, int nMics, int h_len, HADES_DIFFUSENESS_ESTIMATORS diffOption, HADES_DOA_ESTIMATORS doaOption)
Creates and returns a handle to an instance of a hades analysis object.
struct _hades_analysis_data * hades_analysis_handle
Handle for the hades analysis data.
void hades_param_container_create(hades_param_container_handle *const phPCon, hades_analysis_handle const hAna)
Creates an instance of a container used for storing the parameters estimated by an analyser for one '...
int hades_analysis_getNbands(hades_analysis_handle const hAna)
Returns number of frequency bands (0 if hAna is not initialised)
struct _hades_param_container_data * hades_param_container_handle
Handle for the hades parameter container data.
struct _hades_signal_container_data * hades_signal_container_handle
Handle for the hades signal container data.
HADES_FILTERBANKS
Filterbank options.
@ HADES_USE_AFSTFT
Alias-free STFT filterbank.
@ HADES_USE_AFSTFT_LD
Alias-free STFT filterbank (low delay)
HADES_DOA_ESTIMATORS
Options for DoA estimation for hades_analysis.
@ HADES_USE_MUSIC
Use MUSIC.
float * hades_analysis_getCovarianceAvagingCoeffPtr(hades_analysis_handle const hAna)
Returns a pointer to the covariance matrix averaging scalar [0..1], which can be changed at run-time.
void hades_analysis_apply(hades_analysis_handle const hAna, float **input, int nChannels, int blocksize, void *const hPCon, void *const hSCon)
Performs hades encoding: forward time-frequency transform, diffuseness and DoA estimation per band.
void hades_signal_container_destroy(hades_signal_container_handle *const phSCon)
Destroys an instance of a hades signal container.
HADES_DIFFUSENESS_ESTIMATORS
Options for diffuseness estimation for hades_analysis.
@ HADES_USE_COMEDIE
As in [1], after spatially whitening the array SCM.