SAF
|
Main header for the higher-order Ambisonics module (SAF_HOA_MODULE) More...
#include "../saf_utilities/saf_utility_complex.h"
Go to the source code of this file.
Enumerations | |
enum | LOUDSPEAKER_AMBI_DECODER_METHODS { LOUDSPEAKER_DECODER_DEFAULT , LOUDSPEAKER_DECODER_SAD , LOUDSPEAKER_DECODER_MMD , LOUDSPEAKER_DECODER_EPAD , LOUDSPEAKER_DECODER_ALLRAD } |
Ambisonic decoding options for loudspeaker playback. More... | |
enum | BINAURAL_AMBI_DECODER_METHODS { BINAURAL_DECODER_DEFAULT , BINAURAL_DECODER_LS , BINAURAL_DECODER_LSDIFFEQ , BINAURAL_DECODER_SPR , BINAURAL_DECODER_TA , BINAURAL_DECODER_MAGLS } |
Ambisonic decoding options for binaural/headphone playback. More... | |
enum | HOA_CH_ORDER { HOA_CH_ORDER_ACN , HOA_CH_ORDER_FUMA } |
Available Ambisonic channel ordering conventions. More... | |
enum | HOA_NORM { HOA_NORM_N3D , HOA_NORM_SN3D , HOA_NORM_FUMA } |
Available Ambisonic normalisation conventions. More... | |
Functions | |
void | convertHOAChannelConvention (float *insig, int order, int signalLength, HOA_CH_ORDER inConvention, HOA_CH_ORDER outConvention) |
Converts an Ambisonic signal from one channel ordering convention to another. | |
void | convertHOANormConvention (float *insig, int order, int signalLength, HOA_NORM inConvention, HOA_NORM outConvention) |
Converts an Ambisonic signal from one normalisation convention to another. | |
void | getRSH (int order, float *dirs_deg, int nDirs, float *Y) |
Computes real-valued spherical harmonics [1] for each given direction on the unit sphere. | |
void | getRSH_recur (int order, float *dirs_deg, int nDirs, float *Y) |
Computes real-valued spherical harmonics [1] for each given direction on the unit sphere. | |
void | getMaxREweights (int order, int diagMtxFlag, float *a_n) |
Computes the weights required to manipulate a hyper-cardioid beam-pattern, such that it has maximum energy in the given look-direction. | |
void | truncationEQ (float *w_n, int order_truncated, int order_target, double *kr, int nBands, float softThreshold, float *gain) |
Filter that equalises the high frequency roll-off due to SH truncation and tapering; as described in [1]. | |
void | getLoudspeakerDecoderMtx (float *ls_dirs_deg, int nLS, LOUDSPEAKER_AMBI_DECODER_METHODS method, int order, int enableMaxrE, float *decMtx) |
Computes an ambisonic decoding matrix of a specific order, for a given loudspeaker layout. | |
void | getBinauralAmbiDecoderMtx (float_complex *hrtfs, float *hrtf_dirs_deg, int N_dirs, int N_bands, BINAURAL_AMBI_DECODER_METHODS method, int order, float *freqVector, float *itd_s, float *weights, int enableDiffCM, int enableMaxrE, float_complex *decMtx) |
Computes binaural ambisonic decoding matrices (one per frequency) at a specific order, for a given HRTF set. | |
void | getBinauralAmbiDecoderFilters (float_complex *hrtfs, float *hrtf_dirs_deg, int N_dirs, int fftSize, float fs, BINAURAL_AMBI_DECODER_METHODS method, int order, float *itd_s, float *weights, int enableDiffCM, int enableMaxrE, float *decFilters) |
Computes binaural ambisonic decoding filters for a given HRTF set. | |
void | applyDiffCovMatching (float_complex *hrtfs, float *hrtf_dirs_deg, int N_dirs, int N_bands, int order, float *weights, float_complex *decMtx) |
Imposes a diffuse-field covariance constraint on a given binaural decoding matrix, as described in [1]. | |
Main header for the higher-order Ambisonics module (SAF_HOA_MODULE)
A collection of Ambisonics related functions. Many of which are derived from the MATLAB library found in [1].
Definition in file saf_hoa.h.