SAF
|
Main structure for binauraliserNF. More...
#include <binauraliser_nf_internal.h>
Data Fields | |
float ** | inputFrameTD |
time-domain input frame; MAX_NUM_INPUTS x BINAURALISER_FRAME_SIZE | |
float ** | outframeTD |
time-domain output frame; NUM_EARS x BINAURALISER_FRAME_SIZE | |
float_complex *** | inputframeTF |
time-frequency domain input frame; HYBRID_BANDS x MAX_NUM_INPUTS x TIME_SLOTS | |
float_complex *** | outputframeTF |
time-frequency domain input frame; HYBRID_BANDS x NUM_EARS x TIME_SLOTS | |
int | fs |
Host sampling rate, in Hz. | |
float | freqVector [HYBRID_BANDS] |
Frequency vector (filterbank centre frequencies) | |
void * | hSTFT |
afSTFT handle | |
char * | sofa_filepath |
absolute/relevative file path for a sofa file | |
float * | hrirs |
time domain HRIRs; FLAT: N_hrir_dirs x NUM_EARS x hrir_len | |
float * | hrir_dirs_deg |
directions of the HRIRs in degrees [azi elev]; FLAT: N_hrir_dirs x 2 | |
int | N_hrir_dirs |
number of HRIR directions in the current sofa file | |
int | hrir_loaded_len |
length of the loaded HRIRs, in samples | |
int | hrir_runtime_len |
length of the HRIRs being used for processing (after any resampling), in samples | |
int | hrir_loaded_fs |
sampling rate of the loaded HRIRs | |
int | hrir_runtime_fs |
sampling rate of the HRIRs being used for processing (after any resampling) | |
float * | weights |
Integration weights for the HRIR measurement grid. | |
int | hrtf_vbapTableRes [2] |
[0] azimuth, and [1] elevation grid resolution, in degrees | |
int | N_hrtf_vbap_gtable |
Number of interpolation weights/directions. | |
int * | hrtf_vbap_gtableIdx |
N_hrtf_vbap_gtable x 3. | |
float * | hrtf_vbap_gtableComp |
N_hrtf_vbap_gtable x 3. | |
float * | itds_s |
interaural-time differences for each HRIR (in seconds); nBands x 1 | |
float_complex * | hrtf_fb |
hrtf filterbank coefficients; nBands x nCH x N_hrirs | |
float * | hrtf_fb_mag |
magnitudes of the hrtf filterbank coefficients; nBands x nCH x N_hrirs | |
float_complex | hrtf_interp [MAX_NUM_INPUTS][HYBRID_BANDS][NUM_EARS] |
Interpolated HRTFs. | |
CODEC_STATUS | codecStatus |
see CODEC_STATUS | |
float | progressBar0_1 |
Current (re)initialisation progress, between [0..1]. | |
char * | progressBarText |
Current (re)initialisation step, string. | |
PROC_STATUS | procStatus |
see PROC_STATUS | |
int | recalc_hrtf_interpFLAG [MAX_NUM_INPUTS] |
1: re-calculate/interpolate the HRTF, 0: do not | |
int | reInitHRTFsAndGainTables |
1: reinitialise the HRTFs and interpolation tables, 0: do not | |
int | recalc_M_rotFLAG |
1: re-calculate the rotation matrix, 0: do not | |
float | src_dirs_rot_deg [MAX_NUM_INPUTS][2] |
Intermediate rotated source directions, in degrees. | |
float | src_dirs_rot_xyz [MAX_NUM_INPUTS][3] |
Intermediate rotated source directions, as unit-length Cartesian coordinates. | |
float | src_dirs_xyz [MAX_NUM_INPUTS][3] |
Intermediate source directions, as unit-length Cartesian coordinates. | |
int | nTriangles |
Number of triangles in the convex hull of the spherical arrangement of HRIR directions/points. | |
int | new_nSources |
New number of input/source signals (current value will be replaced by this after next re-init) | |
int | nSources |
Current number of input/source signals. | |
float | src_dirs_deg [MAX_NUM_INPUTS][2] |
Current source/panning directions, in degrees. | |
INTERP_MODES | interpMode |
see INTERP_MODES | |
int | useDefaultHRIRsFLAG |
1: use default HRIRs in database, 0: use those from SOFA file | |
int | enableHRIRsDiffuseEQ |
flag to diffuse-field equalisation to the currently loaded HRTFs | |
int | enableRotation |
1: enable rotation, 0: disable | |
float | yaw |
yaw (Euler) rotation angle, in degrees | |
float | roll |
roll (Euler) rotation angle, in degrees | |
float | pitch |
pitch (Euler) rotation angle, in degrees | |
int | bFlipYaw |
flag to flip the sign of the yaw rotation angle | |
int | bFlipPitch |
flag to flip the sign of the pitch rotation angle | |
int | bFlipRoll |
flag to flip the sign of the roll rotation angle | |
int | useRollPitchYawFlag |
rotation order flag, 1: r-p-y, 0: y-p-r | |
float | src_gains [MAX_NUM_INPUTS] |
Gains applied per source. | |
float | b_dvf [MAX_NUM_INPUTS][NUM_EARS][2] |
shelf IIR numerator coefficients for each input, left and right. | |
float | a_dvf [MAX_NUM_INPUTS][NUM_EARS][2] |
shelf IIR denominator coefficients for each input, left and right. | |
float | dvfmags [MAX_NUM_INPUTS][NUM_EARS][HYBRID_BANDS] |
DVF filter frequency band magnitudes. | |
float | dvfphases [MAX_NUM_INPUTS][NUM_EARS][HYBRID_BANDS] |
DVF filter frequency band phases. | |
float | src_dists_m [MAX_NUM_INPUTS] |
Source distance, meters. | |
float | farfield_thresh_m |
Distance considered to be far field (no near field filtering), meters. | |
float | farfield_headroom |
Scale factor applied to farfield_thresh_m when resetting to the far field, and for UI range, meters. | |
float | nearfield_limit_m |
Minimum distance allowed for near-field filtering, from head center, meters, def. | |
float | head_radius |
Head radius, used calculate normalized source distance meters, def. | |
float | head_radius_recip |
Reciprocal of head radius. | |
float(* | src_dirs_cur )[2] |
Pointer to assign to the current HRTF directions being operated on (non/rotated directions switch). | |
int | recalc_dvfCoeffFLAG [MAX_NUM_INPUTS] |
1: re-calculate the DVF coefficients on change in distance, 0: do not. | |
Main structure for binauraliserNF.
Contains all variables from binauraliser (audio buffers, afSTFT, HRTFs, internal variables, flags, user parameters) plus those specific to the near field variant. FREQUENCY DOMAIN implementation.
Definition at line 61 of file binauraliser_nf_internal.h.
float binauraliserNF_data::a_dvf[MAX_NUM_INPUTS][NUM_EARS][2] |
shelf IIR denominator coefficients for each input, left and right.
Definition at line 133 of file binauraliser_nf_internal.h.
float binauraliserNF_data::b_dvf[MAX_NUM_INPUTS][NUM_EARS][2] |
shelf IIR numerator coefficients for each input, left and right.
Definition at line 132 of file binauraliser_nf_internal.h.
int binauraliserNF_data::bFlipPitch |
flag to flip the sign of the pitch rotation angle
Definition at line 125 of file binauraliser_nf_internal.h.
int binauraliserNF_data::bFlipRoll |
flag to flip the sign of the roll rotation angle
Definition at line 126 of file binauraliser_nf_internal.h.
int binauraliserNF_data::bFlipYaw |
flag to flip the sign of the yaw rotation angle
Definition at line 124 of file binauraliser_nf_internal.h.
CODEC_STATUS binauraliserNF_data::codecStatus |
see CODEC_STATUS
Definition at line 99 of file binauraliser_nf_internal.h.
float binauraliserNF_data::dvfmags[MAX_NUM_INPUTS][NUM_EARS][HYBRID_BANDS] |
DVF filter frequency band magnitudes.
Definition at line 134 of file binauraliser_nf_internal.h.
float binauraliserNF_data::dvfphases[MAX_NUM_INPUTS][NUM_EARS][HYBRID_BANDS] |
DVF filter frequency band phases.
Definition at line 135 of file binauraliser_nf_internal.h.
int binauraliserNF_data::enableHRIRsDiffuseEQ |
flag to diffuse-field equalisation to the currently loaded HRTFs
Definition at line 119 of file binauraliser_nf_internal.h.
int binauraliserNF_data::enableRotation |
1: enable rotation, 0: disable
Definition at line 120 of file binauraliser_nf_internal.h.
float binauraliserNF_data::farfield_headroom |
Scale factor applied to farfield_thresh_m when resetting to the far field, and for UI range, meters.
Definition at line 140 of file binauraliser_nf_internal.h.
float binauraliserNF_data::farfield_thresh_m |
Distance considered to be far field (no near field filtering), meters.
Definition at line 139 of file binauraliser_nf_internal.h.
float binauraliserNF_data::freqVector[HYBRID_BANDS] |
Frequency vector (filterbank centre frequencies)
Definition at line 72 of file binauraliser_nf_internal.h.
int binauraliserNF_data::fs |
Host sampling rate, in Hz.
Definition at line 71 of file binauraliser_nf_internal.h.
float binauraliserNF_data::head_radius |
Head radius, used calculate normalized source distance meters, def.
0.09096.
Definition at line 142 of file binauraliser_nf_internal.h.
float binauraliserNF_data::head_radius_recip |
Reciprocal of head radius.
Definition at line 143 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::hrir_dirs_deg |
directions of the HRIRs in degrees [azi elev]; FLAT: N_hrir_dirs x 2
Definition at line 78 of file binauraliser_nf_internal.h.
int binauraliserNF_data::hrir_loaded_fs |
sampling rate of the loaded HRIRs
Definition at line 82 of file binauraliser_nf_internal.h.
int binauraliserNF_data::hrir_loaded_len |
length of the loaded HRIRs, in samples
Definition at line 80 of file binauraliser_nf_internal.h.
int binauraliserNF_data::hrir_runtime_fs |
sampling rate of the HRIRs being used for processing (after any resampling)
Definition at line 83 of file binauraliser_nf_internal.h.
int binauraliserNF_data::hrir_runtime_len |
length of the HRIRs being used for processing (after any resampling), in samples
Definition at line 81 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::hrirs |
time domain HRIRs; FLAT: N_hrir_dirs x NUM_EARS x hrir_len
Definition at line 77 of file binauraliser_nf_internal.h.
float_complex* binauraliserNF_data::hrtf_fb |
hrtf filterbank coefficients; nBands x nCH x N_hrirs
Definition at line 94 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::hrtf_fb_mag |
magnitudes of the hrtf filterbank coefficients; nBands x nCH x N_hrirs
Definition at line 95 of file binauraliser_nf_internal.h.
float_complex binauraliserNF_data::hrtf_interp[MAX_NUM_INPUTS][HYBRID_BANDS][NUM_EARS] |
Interpolated HRTFs.
Definition at line 96 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::hrtf_vbap_gtableComp |
N_hrtf_vbap_gtable x 3.
Definition at line 90 of file binauraliser_nf_internal.h.
int* binauraliserNF_data::hrtf_vbap_gtableIdx |
N_hrtf_vbap_gtable x 3.
Definition at line 89 of file binauraliser_nf_internal.h.
int binauraliserNF_data::hrtf_vbapTableRes[2] |
[0] azimuth, and [1] elevation grid resolution, in degrees
Definition at line 87 of file binauraliser_nf_internal.h.
void* binauraliserNF_data::hSTFT |
afSTFT handle
Definition at line 73 of file binauraliser_nf_internal.h.
float** binauraliserNF_data::inputFrameTD |
time-domain input frame; MAX_NUM_INPUTS x BINAURALISER_FRAME_SIZE
Definition at line 67 of file binauraliser_nf_internal.h.
float_complex*** binauraliserNF_data::inputframeTF |
time-frequency domain input frame; HYBRID_BANDS x MAX_NUM_INPUTS x TIME_SLOTS
Definition at line 69 of file binauraliser_nf_internal.h.
INTERP_MODES binauraliserNF_data::interpMode |
see INTERP_MODES
Definition at line 117 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::itds_s |
interaural-time differences for each HRIR (in seconds); nBands x 1
Definition at line 93 of file binauraliser_nf_internal.h.
int binauraliserNF_data::N_hrir_dirs |
number of HRIR directions in the current sofa file
Definition at line 79 of file binauraliser_nf_internal.h.
int binauraliserNF_data::N_hrtf_vbap_gtable |
Number of interpolation weights/directions.
Definition at line 88 of file binauraliser_nf_internal.h.
float binauraliserNF_data::nearfield_limit_m |
Minimum distance allowed for near-field filtering, from head center, meters, def.
0.15.
Definition at line 141 of file binauraliser_nf_internal.h.
int binauraliserNF_data::new_nSources |
New number of input/source signals (current value will be replaced by this after next re-init)
Definition at line 112 of file binauraliser_nf_internal.h.
int binauraliserNF_data::nSources |
Current number of input/source signals.
Definition at line 115 of file binauraliser_nf_internal.h.
int binauraliserNF_data::nTriangles |
Number of triangles in the convex hull of the spherical arrangement of HRIR directions/points.
Definition at line 111 of file binauraliser_nf_internal.h.
float** binauraliserNF_data::outframeTD |
time-domain output frame; NUM_EARS x BINAURALISER_FRAME_SIZE
Definition at line 68 of file binauraliser_nf_internal.h.
float_complex*** binauraliserNF_data::outputframeTF |
time-frequency domain input frame; HYBRID_BANDS x NUM_EARS x TIME_SLOTS
Definition at line 70 of file binauraliser_nf_internal.h.
float binauraliserNF_data::pitch |
pitch (Euler) rotation angle, in degrees
Definition at line 123 of file binauraliser_nf_internal.h.
PROC_STATUS binauraliserNF_data::procStatus |
see PROC_STATUS
Definition at line 102 of file binauraliser_nf_internal.h.
float binauraliserNF_data::progressBar0_1 |
Current (re)initialisation progress, between [0..1].
Definition at line 100 of file binauraliser_nf_internal.h.
char* binauraliserNF_data::progressBarText |
Current (re)initialisation step, string.
Definition at line 101 of file binauraliser_nf_internal.h.
int binauraliserNF_data::recalc_dvfCoeffFLAG[MAX_NUM_INPUTS] |
1: re-calculate the DVF coefficients on change in distance, 0: do not.
Definition at line 147 of file binauraliser_nf_internal.h.
int binauraliserNF_data::recalc_hrtf_interpFLAG[MAX_NUM_INPUTS] |
1: re-calculate/interpolate the HRTF, 0: do not
Definition at line 103 of file binauraliser_nf_internal.h.
int binauraliserNF_data::recalc_M_rotFLAG |
1: re-calculate the rotation matrix, 0: do not
Definition at line 105 of file binauraliser_nf_internal.h.
int binauraliserNF_data::reInitHRTFsAndGainTables |
1: reinitialise the HRTFs and interpolation tables, 0: do not
Definition at line 104 of file binauraliser_nf_internal.h.
float binauraliserNF_data::roll |
roll (Euler) rotation angle, in degrees
Definition at line 122 of file binauraliser_nf_internal.h.
char* binauraliserNF_data::sofa_filepath |
absolute/relevative file path for a sofa file
Definition at line 76 of file binauraliser_nf_internal.h.
float(* binauraliserNF_data::src_dirs_cur)[2] |
Pointer to assign to the current HRTF directions being operated on (non/rotated directions switch).
Definition at line 144 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_dirs_deg[MAX_NUM_INPUTS][2] |
Current source/panning directions, in degrees.
Definition at line 116 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_dirs_rot_deg[MAX_NUM_INPUTS][2] |
Intermediate rotated source directions, in degrees.
Definition at line 108 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_dirs_rot_xyz[MAX_NUM_INPUTS][3] |
Intermediate rotated source directions, as unit-length Cartesian coordinates.
Definition at line 109 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_dirs_xyz[MAX_NUM_INPUTS][3] |
Intermediate source directions, as unit-length Cartesian coordinates.
Definition at line 110 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_dists_m[MAX_NUM_INPUTS] |
Source distance, meters.
Definition at line 138 of file binauraliser_nf_internal.h.
float binauraliserNF_data::src_gains[MAX_NUM_INPUTS] |
Gains applied per source.
Definition at line 128 of file binauraliser_nf_internal.h.
int binauraliserNF_data::useDefaultHRIRsFLAG |
1: use default HRIRs in database, 0: use those from SOFA file
Definition at line 118 of file binauraliser_nf_internal.h.
int binauraliserNF_data::useRollPitchYawFlag |
rotation order flag, 1: r-p-y, 0: y-p-r
Definition at line 127 of file binauraliser_nf_internal.h.
float* binauraliserNF_data::weights |
Integration weights for the HRIR measurement grid.
Definition at line 84 of file binauraliser_nf_internal.h.
float binauraliserNF_data::yaw |
yaw (Euler) rotation angle, in degrees
Definition at line 121 of file binauraliser_nf_internal.h.