SAF
|
A sound-field visualiser based on the directional re-assignment of beamformer energy based on local DoA estimates [1,2]. More...
#include "_common.h"
Go to the source code of this file.
Enumerations | |
enum | DIRASS_UPSCALE_ORDERS { UPSCALE_ORDER_FIRST = 1 , UPSCALE_ORDER_SECOND , UPSCALE_ORDER_THIRD , UPSCALE_ORDER_FOURTH , UPSCALE_ORDER_FIFTH , UPSCALE_ORDER_SIXTH , UPSCALE_ORDER_SEVENTH , UPSCALE_ORDER_EIGHTH , UPSCALE_ORDER_NINTH , UPSCALE_ORDER_TENTH , UPSCALE_ORDER_ELEVENTH , UPSCALE_ORDER_TWELFTH , UPSCALE_ORDER_THIRTEENTH , UPSCALE_ORDER_FOURTEENTH , UPSCALE_ORDER_FIFTEENTH , UPSCALE_ORDER_SIXTHTEENTH , UPSCALE_ORDER_SEVENTEENTH , UPSCALE_ORDER_EIGHTEENTH , UPSCALE_ORDER_NINETEENTH , UPSCALE_ORDER_TWENTIETH } |
Available upscaling orders. More... | |
enum | DIRASS_GRID_OPTIONS { T_DESIGN_3 = 1 , T_DESIGN_4 , T_DESIGN_6 , T_DESIGN_9 , T_DESIGN_13 , T_DESIGN_18 , GRID_GEOSPHERE_6 , T_DESIGN_30 , GRID_GEOSPHERE_8 , GRID_GEOSPHERE_9 , GRID_GEOSPHERE_10 , GRID_GEOSPHERE_12 } |
Available scanning grid options. More... | |
enum | DIRASS_REASS_MODES { REASS_MODE_OFF = 1 , REASS_NEAREST , REASS_UPSCALE } |
Available processing modes. More... | |
Functions | |
void | dirass_create (void **const phDir) |
Creates an instance of the dirass. | |
void | dirass_destroy (void **const phDir) |
Destroys an instance of the dirass. | |
void | dirass_init (void *const hDir, float samplerate) |
Initialises an instance of dirass with default settings. | |
void | dirass_initCodec (void *const hDir) |
Intialises the codec variables, based on current global/user parameters. | |
void | dirass_analysis (void *const hDir, const float *const *inputs, int nInputs, int nSamples, int isPlaying) |
Analyses the input spherical harmonic signals to generate an activity-map as in [1,2]. | |
void | dirass_refreshSettings (void *const hDir) |
Sets all intialisation flags to 1; re-initialising all settings/variables as dirass is currently configured, at next available opportunity. | |
void | dirass_setBeamType (void *const hDir, int newType) |
Sets the sector beamforming pattern to employ for the analysis (see STATIC_BEAM_TYPES enum). | |
void | dirass_setInputOrder (void *const hDir, int newValue) |
Sets the input/analysis order (see SH_ORDERS enum) | |
void | dirass_setDisplayGridOption (void *const hDir, int newOption) |
Sets a new display grid option (see DIRASS_GRID_OPTIONS enum) | |
void | dirass_setDispWidth (void *const hDir, int newValue) |
Sets the output display width in pixels. | |
void | dirass_setUpscaleOrder (void *const hDir, int newOrder) |
Sets the upscale order, only if DIRASS_REASS_MODES is set to REASS_UPSCALE, (see DIRASS_UPSCALE_ORDERS enum). | |
void | dirass_setDiRAssMode (void *const hDir, int newMode) |
Sets the analysis directional re-assignment mode (see DIRASS_REASS_MODES enum) | |
void | dirass_setMinFreq (void *const hDir, float newValue) |
Sets the minimum analysis frequency, in Hz. | |
void | dirass_setMaxFreq (void *const hDir, float newValue) |
Sets the maximum analysis frequency, in Hz. | |
void | dirass_setChOrder (void *const hDir, int newOrder) |
Sets the Ambisonic channel ordering convention to decode with, in order to match the convention employed by the input signals (see CH_ORDER enum) | |
void | dirass_setNormType (void *const hDir, int newType) |
Sets the Ambisonic normalisation convention to decode with, in order to match with the convention employed by the input signals (see NORM_TYPES enum) | |
void | dirass_setDispFOV (void *const hDir, int newOption) |
Sets the visualisation display window horizontal field-of-view (FOV) (see HFOV_OPTIONS enum) | |
void | dirass_setAspectRatio (void *const hDir, int newOption) |
Sets the visualisation display window aspect-ratio (see ASPECT_RATIO_OPTIONS enum) | |
void | dirass_setMapAvgCoeff (void *const hDir, float newValue) |
Sets the activity-map averaging coefficient, 0..1. | |
void | dirass_requestPmapUpdate (void *const hDir) |
Informs dirass that it should compute a new activity-map. | |
int | dirass_getFrameSize (void) |
Returns the processing framesize (i.e., number of samples processed with every _process() call ) | |
CODEC_STATUS | dirass_getCodecStatus (void *const hDir) |
Returns current codec status (see CODEC_STATUS enum) | |
float | dirass_getProgressBar0_1 (void *const hDir) |
(Optional) Returns current intialisation/processing progress, between 0..1 | |
void | dirass_getProgressBarText (void *const hDir, char *text) |
(Optional) Returns current intialisation/processing progress text | |
int | dirass_getInputOrder (void *const hDir) |
Returns the current analysis/input order (see SH_ORDERS enum) | |
int | dirass_getBeamType (void *const hDir) |
Returns the sector beamforming pattern to employed for the analysis (see STATIC_BEAM_TYPES enum) | |
int | dirass_getDisplayGridOption (void *const hDir) |
Returns the current display grid option (see DIRASS_GRID_OPTIONS enum) | |
int | dirass_getDispWidth (void *const hDir) |
Returns the current output display width in pixels. | |
int | dirass_getUpscaleOrder (void *const hDir) |
Returns the current upscale order (see DIRASS_UPSCALE_ORDERS enum) | |
int | dirass_getDiRAssMode (void *const hDir) |
Returns the current analysis directional re-assignment mode (see DIRASS_REASS_MODES enum) | |
float | dirass_getMinFreq (void *const hDir) |
Returns the current minimum analysis frequency, in Hz. | |
float | dirass_getMaxFreq (void *const hDir) |
Returns the current maximum analysis frequency, in Hz. | |
int | dirass_getSamplingRate (void *const hDir) |
Returns the current sampling rate, in Hz. | |
int | dirass_getNSHrequired (void *const hDir) |
Returns the number of spherical harmonic signals required by the current analysis order: (current_order + 1)^2. | |
int | dirass_getChOrder (void *const hDir) |
Returns the Ambisonic channel ordering convention currently being used to decode with, which should match the convention employed by the input signals (see CH_ORDER enum) | |
int | dirass_getNormType (void *const hDir) |
Returns the Ambisonic normalisation convention currently being usedto decode with, which should match the convention employed by the input signals (see NORM_TYPES enum) | |
int | dirass_getDispFOV (void *const hDir) |
Returns the current visualisation display window horizontal field-of-view (FOV) (see HFOV_OPTIONS enum) | |
int | dirass_getAspectRatio (void *const hDir) |
Returns the current visualisation display window aspect-ratio (see ASPECT_RATIO_OPTIONS enum) | |
float | dirass_getMapAvgCoeff (void *const hDir) |
Returns the current activity-map averaging coefficient, 0..1. | |
int | dirass_getPmap (void *const hDir, float **grid_dirs, float **pmap, int *nDirs, int *pmapWidth, int *hfov, float *aspectRatio) |
Returns the latest computed activity-map if it is ready; otherwise it returns 0, and you'll just have to wait a bit. | |
int | dirass_getProcessingDelay (void) |
Returns the processing delay in samples (may be used for delay compensation features) | |
A sound-field visualiser based on the directional re-assignment of beamformer energy based on local DoA estimates [1,2].
Definition in file dirass.h.
enum DIRASS_GRID_OPTIONS |
Available scanning grid options.
enum DIRASS_REASS_MODES |
Available processing modes.
More information can be found in [1]
Available upscaling orders.
void dirass_analysis | ( | void *const | hDir, |
const float *const * | inputs, | ||
int | nInputs, | ||
int | nSamples, | ||
int | isPlaying ) |
Analyses the input spherical harmonic signals to generate an activity-map as in [1,2].
[in] | hDir | dirass handle |
[in] | inputs | Input channel buffers; 2-D array: nInputs x nSamples |
[in] | nInputs | Number of input channels |
[in] | nSamples | Number of samples in 'inputs'/'output' matrices |
[in] | isPlaying | Flag to indicate if there is audio in the input buffers, 0: no audio, reduced processing, 1: audio, full processing |
void dirass_create | ( | void **const | phDir | ) |
void dirass_destroy | ( | void **const | phDir | ) |
int dirass_getAspectRatio | ( | void *const | hDir | ) |
Returns the current visualisation display window aspect-ratio (see ASPECT_RATIO_OPTIONS enum)
int dirass_getBeamType | ( | void *const | hDir | ) |
Returns the sector beamforming pattern to employed for the analysis (see STATIC_BEAM_TYPES enum)
int dirass_getChOrder | ( | void *const | hDir | ) |
CODEC_STATUS dirass_getCodecStatus | ( | void *const | hDir | ) |
Returns current codec status (see CODEC_STATUS enum)
int dirass_getDiRAssMode | ( | void *const | hDir | ) |
Returns the current analysis directional re-assignment mode (see DIRASS_REASS_MODES enum)
int dirass_getDispFOV | ( | void *const | hDir | ) |
Returns the current visualisation display window horizontal field-of-view (FOV) (see HFOV_OPTIONS enum)
int dirass_getDisplayGridOption | ( | void *const | hDir | ) |
Returns the current display grid option (see DIRASS_GRID_OPTIONS enum)
int dirass_getDispWidth | ( | void *const | hDir | ) |
int dirass_getFrameSize | ( | void | ) |
int dirass_getInputOrder | ( | void *const | hDir | ) |
float dirass_getMapAvgCoeff | ( | void *const | hDir | ) |
float dirass_getMaxFreq | ( | void *const | hDir | ) |
float dirass_getMinFreq | ( | void *const | hDir | ) |
int dirass_getNormType | ( | void *const | hDir | ) |
Returns the Ambisonic normalisation convention currently being usedto decode with, which should match the convention employed by the input signals (see NORM_TYPES enum)
int dirass_getNSHrequired | ( | void *const | hDir | ) |
int dirass_getPmap | ( | void *const | hDir, |
float ** | grid_dirs, | ||
float ** | pmap, | ||
int * | nDirs, | ||
int * | pmapWidth, | ||
int * | hfov, | ||
float * | aspectRatio ) |
Returns the latest computed activity-map if it is ready; otherwise it returns 0, and you'll just have to wait a bit.
[in] | hDir | (&) dirass handle |
[out] | grid_dirs | (&) scanning grid directions, in DEGREES; nDirs x 1 |
[out] | pmap | (&) activity-map values; nDirs x 1 |
[out] | nDirs | (&) number of directions |
[out] | pmapWidth | (&) activity-map width in pixels |
[out] | hfov | (&) horizontal FOV used to generate activity-map |
[out] | aspectRatio | (&) aspect ratio used to generate activity-map |
int dirass_getProcessingDelay | ( | void | ) |
float dirass_getProgressBar0_1 | ( | void *const | hDir | ) |
void dirass_getProgressBarText | ( | void *const | hDir, |
char * | text ) |
(Optional) Returns current intialisation/processing progress text
[in] | hDir | dirass handle |
[out] | text | Process bar text; PROGRESSBARTEXT_CHAR_LENGTH x 1 |
int dirass_getSamplingRate | ( | void *const | hDir | ) |
int dirass_getUpscaleOrder | ( | void *const | hDir | ) |
Returns the current upscale order (see DIRASS_UPSCALE_ORDERS enum)
void dirass_init | ( | void *const | hDir, |
float | samplerate ) |
void dirass_initCodec | ( | void *const | hDir | ) |
Intialises the codec variables, based on current global/user parameters.
[in] | hDir | dirass handle |
void dirass_refreshSettings | ( | void *const | hDir | ) |
void dirass_requestPmapUpdate | ( | void *const | hDir | ) |
void dirass_setAspectRatio | ( | void *const | hDir, |
int | newOption ) |
Sets the visualisation display window aspect-ratio (see ASPECT_RATIO_OPTIONS enum)
void dirass_setBeamType | ( | void *const | hDir, |
int | newType ) |
Sets the sector beamforming pattern to employ for the analysis (see STATIC_BEAM_TYPES enum).
void dirass_setChOrder | ( | void *const | hDir, |
int | newOrder ) |
void dirass_setDiRAssMode | ( | void *const | hDir, |
int | newMode ) |
Sets the analysis directional re-assignment mode (see DIRASS_REASS_MODES enum)
void dirass_setDispFOV | ( | void *const | hDir, |
int | newOption ) |
Sets the visualisation display window horizontal field-of-view (FOV) (see HFOV_OPTIONS enum)
void dirass_setDisplayGridOption | ( | void *const | hDir, |
int | newOption ) |
Sets a new display grid option (see DIRASS_GRID_OPTIONS enum)
void dirass_setDispWidth | ( | void *const | hDir, |
int | newValue ) |
Sets the output display width in pixels.
void dirass_setInputOrder | ( | void *const | hDir, |
int | newValue ) |
void dirass_setMapAvgCoeff | ( | void *const | hDir, |
float | newValue ) |
void dirass_setMaxFreq | ( | void *const | hDir, |
float | newValue ) |
void dirass_setMinFreq | ( | void *const | hDir, |
float | newValue ) |
void dirass_setNormType | ( | void *const | hDir, |
int | newType ) |
Sets the Ambisonic normalisation convention to decode with, in order to match with the convention employed by the input signals (see NORM_TYPES enum)
void dirass_setUpscaleOrder | ( | void *const | hDir, |
int | newOrder ) |
Sets the upscale order, only if DIRASS_REASS_MODES is set to REASS_UPSCALE, (see DIRASS_UPSCALE_ORDERS enum).