SAF
Loading...
Searching...
No Matches
saf_reverb.h File Reference

Main header for the reverb processing module (SAF_REVERB_MODULE) More...

Go to the source code of this file.

Data Structures

struct  ims_rir
 Output format of the rendered room impulse responses (RIR) More...
 

Macros

#define IMS_MAX_NUM_SOURCES   128
 TODO: Arbitrary array receiver option; Directional source option; finish ims_shoebox_renderRIRs() function;.
 
#define IMS_MAX_NUM_RECEIVERS   16
 Maximum number of receivers supported by an instance of the IMS simulator.
 

Functions

void ims_shoebox_create (void **phIms, float roomDimensions[3], float *abs_wall, float lowestOctaveBand, int nOctBands, float c_ms, float fs)
 Creates an instance of ims_shoebox room simulator.
 
void ims_shoebox_destroy (void **phIms)
 Destroys an instance of ims_shoebox room simulator.
 
void ims_shoebox_computeEchograms (void *hIms, int maxN, float maxTime_s)
 Computes echograms for all active source/receiver combinations.
 
void ims_shoebox_renderRIRs (void *hIms, int fractionalDelaysFLAG)
 Renders room impulse responses for all active source/receiver combinations.
 
void ims_shoebox_applyEchogramTD (void *hIms, long receiverID, int nSamples, int fractionalDelaysFLAG)
 Applies the currently computed echograms in the time-domain, for all sources, for one specified receiver.
 
void ims_shoebox_setRoomDimensions (void *hIms, float new_roomDimensions[3])
 Sets new room dimensions.
 
void ims_shoebox_setWallAbsCoeffs (void *hIms, float *abs_wall)
 Sets new wall absorption coefficients per wall and per band.
 
int ims_shoebox_addSource (void *hIms, float position_xyz[3], float **pSrc_sig)
 Adds a source object to the simulator, and returns a unique ID corresponding to it.
 
int ims_shoebox_addReceiverSH (void *hIms, int sh_order, float position_xyz[3], float ***pSH_sigs)
 Adds a spherical harmonic (SH) receiver object to the simulator of a given order, and returns a unique ID corresponding to it.
 
void ims_shoebox_updateSource (void *hIms, int sourceID, float position_xyz[3])
 Updates the position of a specific source in the simulation.
 
void ims_shoebox_updateReceiver (void *hIms, int receiverID, float position_xyz[3])
 Updates the position of a specific receiver in the simulation.
 
void ims_shoebox_removeSource (void *hIms, int sourceID)
 Removes a specific source from the simulation.
 
void ims_shoebox_removeReceiver (void *hIms, int receiverID)
 Removes a specific receiver from the simulation.
 

Detailed Description

Main header for the reverb processing module (SAF_REVERB_MODULE)

A collection of reverb and room simulation algorithms.

Author
Leo McCormack
Date
06.05.2020
License
ISC

Definition in file saf_reverb.h.