|
SAF
|
Generates beamformers/virtual microphones in arbitrary directions with several different beam patterns to choose from. More...
#include "_common.h"Go to the source code of this file.
Functions | |
| void | beamformer_create (void **const phBeam) |
| Creates an instance of beamformer. | |
| void | beamformer_destroy (void **const phBeam) |
| Destroys an instance of beamformer. | |
| void | beamformer_init (void *const hBeam, int samplerate) |
| Initialises an instance of beamformer with default settings. | |
| void | beamformer_process (void *const hBeam, const float *const *inputs, float *const *outputs, int nInputs, int nOutputs, int nSamples) |
| Generates beamformers/virtual microphones in the specified directions. | |
| void | beamformer_refreshSettings (void *const hBeam) |
| Sets all intialisation flags to 1; re-initialising all settings/variables as beamformer is currently configured, at next available opportunity. | |
| void | beamformer_setBeamOrder (void *const hBeam, int newValue) |
| Sets the beamforming order (see SH_ORDERS enum) | |
| void | beamformer_setBeamAzi_deg (void *const hBeam, int index, float newAzi_deg) |
| Sets a beamformer azimuth direction of a given index, in DEGREES. | |
| void | beamformer_setBeamElev_deg (void *const hBeam, int index, float newElev_deg) |
| Sets a beamformer elevation direction for a given index, in DEGREES. | |
| void | beamformer_setNumBeams (void *const hBeam, int new_nBeams) |
| Sets the number of beamformers to generate. | |
| void | beamformer_setChOrder (void *const hBeam, 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 | beamformer_setNormType (void *const hBeam, 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 | beamformer_setBeamType (void *const hBeam, int newID) |
| Sets the beamforming approach to employ (see STATIC_BEAM_TYPES enum) | |
| int | beamformer_getFrameSize (void) |
| Returns the processing framesize (i.e., number of samples processed with every _process() call ) | |
| int | beamformer_getBeamOrder (void *const hBeam) |
| Returns the beamforming order (see SH_ORDERS enum) | |
| float | beamformer_getBeamAzi_deg (void *const hBeam, int index) |
| Returns the beamformer azimuth direction of a given index h, in DEGREES. | |
| float | beamformer_getBeamElev_deg (void *const hBeam, int index) |
| Returns the beamformer elevation direction of a given index, in DEGREES. | |
| int | beamformer_getNumBeams (void *const hBeam) |
| Returns the number of beamformers being generated. | |
| int | beamformer_getMaxNumBeams (void) |
| Returns the maximum number of beamformers permitted. | |
| int | beamformer_getNSHrequired (void *const hBeam) |
| Returns the number of spherical harmonic signals required by the currently selected beamforming order: (current_order+1)^2. | |
| int | beamformer_getChOrder (void *const hBeam) |
| 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 | beamformer_getNormType (void *const hBeam) |
| 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 | beamformer_getBeamType (void *const hBeam) |
| Returns the beamforming approach employed (see STATIC_BEAM_TYPES enum) | |
| int | beamformer_getProcessingDelay (void) |
| Returns the processing delay in samples (may be used for delay compensation features) | |
Variables | |
| const int | beamformer_defaultNumBeams |
| Default number of beams. | |
| const float | beamformer_defaultBeamDirections [MAX_NUM_INPUTS][2] |
| Default beam directions. | |
Generates beamformers/virtual microphones in arbitrary directions with several different beam patterns to choose from.
Definition in file beamformer.h.
| void beamformer_create | ( | void **const | phBeam | ) |
Creates an instance of beamformer.
| [in] | phBeam | (&) address of beamformer handle |
Definition at line 29 of file beamformer.c.
| void beamformer_destroy | ( | void **const | phBeam | ) |
Destroys an instance of beamformer.
| [in] | phBeam | (&) address of beamformer handle |
Definition at line 56 of file beamformer.c.
| float beamformer_getBeamAzi_deg | ( | void *const | hBeam, |
| int | index ) |
Returns the beamformer azimuth direction of a given index h, in DEGREES.
Definition at line 285 of file beamformer.c.
| float beamformer_getBeamElev_deg | ( | void *const | hBeam, |
| int | index ) |
Returns the beamformer elevation direction of a given index, in DEGREES.
Definition at line 291 of file beamformer.c.
| int beamformer_getBeamOrder | ( | void *const | hBeam | ) |
Returns the beamforming order (see SH_ORDERS enum)
Definition at line 279 of file beamformer.c.
| int beamformer_getBeamType | ( | void *const | hBeam | ) |
Returns the beamforming approach employed (see STATIC_BEAM_TYPES enum)
Definition at line 326 of file beamformer.c.
| int beamformer_getChOrder | ( | void *const | hBeam | ) |
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)
Definition at line 314 of file beamformer.c.
| int beamformer_getFrameSize | ( | void | ) |
Returns the processing framesize (i.e., number of samples processed with every _process() call )
Definition at line 274 of file beamformer.c.
| int beamformer_getMaxNumBeams | ( | void | ) |
Returns the maximum number of beamformers permitted.
Definition at line 303 of file beamformer.c.
| int beamformer_getNormType | ( | void *const | hBeam | ) |
Returns the Ambisonic normalisation convention currently being usedto decode with, which should match the convention employed by the input signals (see NORM_TYPES enum)
Definition at line 320 of file beamformer.c.
| int beamformer_getNSHrequired | ( | void *const | hBeam | ) |
Returns the number of spherical harmonic signals required by the currently selected beamforming order: (current_order+1)^2.
Definition at line 308 of file beamformer.c.
| int beamformer_getNumBeams | ( | void *const | hBeam | ) |
Returns the number of beamformers being generated.
Definition at line 297 of file beamformer.c.
| int beamformer_getProcessingDelay | ( | void | ) |
Returns the processing delay in samples (may be used for delay compensation features)
Definition at line 332 of file beamformer.c.
| void beamformer_init | ( | void *const | hBeam, |
| int | samplerate ) |
Initialises an instance of beamformer with default settings.
| [in] | hBeam | beamformer handle |
| [in] | samplerate | Host samplerate. |
Definition at line 71 of file beamformer.c.
| void beamformer_process | ( | void *const | hBeam, |
| const float *const * | inputs, | ||
| float *const * | outputs, | ||
| int | nInputs, | ||
| int | nOutputs, | ||
| int | nSamples ) |
Generates beamformers/virtual microphones in the specified directions.
| [in] | hBeam | beamformer handle |
| [in] | inputs | Input channel buffers; 2-D array: nInputs x nSamples |
| [in] | outputs | Output channel buffers; 2-D array: nOutputs x nSamples |
| [in] | nInputs | Number of input channels |
| [in] | nOutputs | Number of output channels |
| [in] | nSamples | Number of samples in 'inputs'/'output' matrices |
Definition at line 94 of file beamformer.c.
| void beamformer_refreshSettings | ( | void *const | hBeam | ) |
Sets all intialisation flags to 1; re-initialising all settings/variables as beamformer is currently configured, at next available opportunity.
Definition at line 196 of file beamformer.c.
| void beamformer_setBeamAzi_deg | ( | void *const | hBeam, |
| int | index, | ||
| float | newAzi_deg ) |
Sets a beamformer azimuth direction of a given index, in DEGREES.
Definition at line 218 of file beamformer.c.
| void beamformer_setBeamElev_deg | ( | void *const | hBeam, |
| int | index, | ||
| float | newElev_deg ) |
Sets a beamformer elevation direction for a given index, in DEGREES.
Definition at line 229 of file beamformer.c.
| void beamformer_setBeamOrder | ( | void *const | hBeam, |
| int | newValue ) |
Sets the beamforming order (see SH_ORDERS enum)
If the beamforming order is higher than the input signal order, the extra required channels are filled with zeros. If the beamforming order is lower than the input signal order, the number input signals is truncated accordingly.
Definition at line 204 of file beamformer.c.
| void beamformer_setBeamType | ( | void *const | hBeam, |
| int | newID ) |
Sets the beamforming approach to employ (see STATIC_BEAM_TYPES enum)
Definition at line 263 of file beamformer.c.
| void beamformer_setChOrder | ( | void *const | hBeam, |
| 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)
Definition at line 249 of file beamformer.c.
| void beamformer_setNormType | ( | void *const | hBeam, |
| 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)
Definition at line 256 of file beamformer.c.
| void beamformer_setNumBeams | ( | void *const | hBeam, |
| int | new_nBeams ) |
Sets the number of beamformers to generate.
Definition at line 238 of file beamformer.c.
|
extern |
Default beam directions.
Definition at line 32 of file beamformer_internal.c.
|
extern |
Default number of beams.
Definition at line 29 of file beamformer_internal.c.