Link reverb_fx.c

This commit is contained in:
2022-07-26 23:32:31 -07:00
parent 97dbbc26d8
commit 5b08fd287a
3 changed files with 92 additions and 4 deletions

View File

@@ -3,6 +3,10 @@
#include "types.h"
#ifndef bool8
typedef char bool8;
#endif
#ifdef __cplusplus
extern "C" {
#endif
@@ -16,10 +20,59 @@ typedef struct _SynthInfo {
} SynthInfo;
typedef struct _SND_HOOKS {
void *(*malloc)(u32 len);
void (*free)(void *addr);
void* (*malloc)(u32 len);
void (*free)(void* addr);
} SND_HOOKS;
#define SND_AUX_NUMPARAMETERS 4
typedef struct SND_AUX_INFO {
union SND_AUX_DATA {
struct SND_AUX_BUFFERUPDATE {
s32* left;
s32* right;
s32* surround;
} bufferUpdate;
struct SND_AUX_PARAMETERUPDATE {
u16 para[SND_AUX_NUMPARAMETERS];
} parameterUpdate;
} data;
} SND_AUX_INFO;
typedef struct _SND_REVHI_DELAYLINE {
s32 inPoint;
s32 outPoint;
s32 length;
f32* inputs;
f32 lastOutput;
} _SND_REVHI_DELAYLINE;
typedef struct _SND_REVHI_WORK {
_SND_REVHI_DELAYLINE AP[9];
_SND_REVHI_DELAYLINE C[9];
f32 allPassCoeff;
f32 combCoef[9];
f32 lpLastout[3];
f32 level;
f32 damping;
s32 preDelayTime;
f32 crosstalk;
f32* preDelayLine[3];
f32* preDelayPtr[3];
} _SND_REVHI_WORK;
typedef struct SND_AUX_REVERBHI {
_SND_REVHI_WORK rv;
bool8 tempDisableFX;
f32 coloration;
f32 mix;
f32 time;
f32 damping;
f32 preDelay;
f32 crosstalk;
} SND_AUX_REVERBHI;
#ifdef __cplusplus
}
#endif