A spatially-localised active-intensity (SLAI) based direction-of- arrival estimator (SLDoA)
A spatially-localised active-intensity (SLAI) based direction-of- arrival estimator (SLDoA)
#ifndef __SLDOA_H_INCLUDED__
#define __SLDOA_H_INCLUDED__
#ifdef __cplusplus
extern "C" {
#endif
float samplerate);
const float *const * inputs,
int nInputs,
int nSamples,
int isPlaying);
float** pAzi_deg,
float** pElev_deg,
float** pColourScale,
float** pAlphaScale,
int** pNsectorsPerBand,
int* pMaxNumSectors,
int* pStartBand,
int* pEndBand);
float** pX_vector,
int** pY_values,
int* pNpoints);
#ifdef __cplusplus
}
#endif
#endif
A bunch of things that are common to many of the saf examples.
CODEC_STATUS
Current status of the codec.
int sldoa_getNumberOfBands(void)
Returns the number frequency bands employed by sldoa.
int sldoa_getProcessingDelay(void)
Returns the processing delay in samples (may be used for delay compensation features)
void sldoa_destroy(void **const phSld)
Destroys an instance of the sldoa.
int sldoa_getMasterOrder(void *const hSld)
Returns the current maximum analysis/input order (see SH_ORDERS enum)
int sldoa_getAnaOrder(void *const hSld, int bandIdx)
Returns the input/analysis order for one specific frequency band.
int sldoa_getChOrder(void *const hSld)
Returns the Ambisonic channel ordering convention currently being used to decode with,...
void sldoa_refreshSettings(void *const hSld)
Sets all intialisation flags to 1; re-initialising all settings/variables as sldoa is currently confi...
void sldoa_initCodec(void *const hSld)
Intialises the codec variables, based on current global/user parameters.
int sldoa_getAnaOrderAllBands(void *const hSld)
Returns the input/analysis order for the first frequency band.
void sldoa_setChOrder(void *const hSld, int newOrder)
Sets the Ambisonic channel ordering convention to decode with, in order to match the convention emplo...
void sldoa_setSourcePreset(void *const hSld, int newPresetID)
Sets an input preset, the microphone/hyrophone array used to capture the input signals (see MIC_PRESE...
void sldoa_setMaxFreq(void *const hSld, float newFreq)
Sets the maximum analysis frequency, in Hz.
int sldoa_getFrameSize(void)
Returns the processing framesize (i.e., number of samples processed with every _process() call )
void sldoa_setAnaOrder(void *const hSld, int newValue, int bandIdx)
Sets the input/analysis order for one specific frequency band.
float sldoa_getMaxFreq(void *const hSld)
Returns the maximum analysis frequency, in Hz.
void sldoa_init(void *const hSld, float samplerate)
Initialises an instance of sldoa with default settings.
void sldoa_setNormType(void *const hSld, int newType)
Sets the Ambisonic normalisation convention to decode with, in order to match with the convention emp...
void sldoa_setAnaOrderAllBands(void *const hSld, int newValue)
Sets the input/analysis order for all frequency bands.
int sldoa_getNormType(void *const hSld)
Returns the Ambisonic normalisation convention currently being usedto decode with,...
void sldoa_getAnaOrderHandle(void *const hSld, float **pX_vector, int **pY_values, int *pNpoints)
Returns the input/analysis order for all frequency bands.
void sldoa_analysis(void *const hSld, const float *const *inputs, int nInputs, int nSamples, int isPlaying)
Applies the spatially-localised active-intensity based direction-of-arrival estimator (SLDoA) onto th...
float sldoa_getProgressBar0_1(void *const hSld)
(Optional) Returns current intialisation/processing progress, between 0..1
float sldoa_getAvg(void *const hSld)
Returns the current DoA averaging coefficient value, 0..1.
float sldoa_getMinFreq(void *const hSld)
Returns the minimum analysis frequency, in Hz.
CODEC_STATUS sldoa_getCodecStatus(void *const hSld)
Returns current codec status (see CODEC_STATUS enum)
void sldoa_setAvg(void *const hSld, float newAvg)
Sets the DoA averaging coefficient, 0..1.
int sldoa_getNSHrequired(void *const hSld)
Returns the number of spherical harmonic signals required by the current analysis order: (current_ord...
void sldoa_setMasterOrder(void *const hSld, int newValue)
Sets the maximum input/analysis order (see SH_ORDERS enum)
void sldoa_getProgressBarText(void *const hSld, char *text)
(Optional) Returns current intialisation/processing progress text
void sldoa_create(void **const phSld)
Creates an instance of the sldoa.
int sldoa_getSamplingRate(void *const hSld)
Returns the current sampling rate, in Hz.
void sldoa_getDisplayData(void *const hSld, float **pAzi_deg, float **pElev_deg, float **pColourScale, float **pAlphaScale, int **pNsectorsPerBand, int *pMaxNumSectors, int *pStartBand, int *pEndBand)
Returns the analysis output data.
void sldoa_setMinFreq(void *const hSld, float newFreq)
Sets the minimum analysis frequency, in Hz.