37 lines
864 B
C
37 lines
864 B
C
#ifndef AUDIO_EFFECTS_H
|
|
#define AUDIO_EFFECTS_H
|
|
|
|
#include <stdbool.h>
|
|
#include "fx_equalizer.h"
|
|
#include "fx_overdrive.h"
|
|
#include "fx_saturation.h"
|
|
#include "fx_echo.h"
|
|
#include "fx_reverb.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Structure regroupant les parametres de tous les effets. Modifiable directement
|
|
* (ex: depuis l'IHM) via AudioEffects_GetParams(). L'ordre de traitement fixe est :
|
|
* egaliseur -> overdrive -> saturation -> echo -> reverberation. */
|
|
typedef struct
|
|
{
|
|
bool audio_on_off;
|
|
FxEqualizerParams equalizer;
|
|
FxOverdriveParams overdrive;
|
|
FxSaturationParams saturation;
|
|
FxEchoParams echo;
|
|
FxReverbParams reverb;
|
|
} AudioEffectsParams;
|
|
|
|
void AudioEffects_Init(void);
|
|
float AudioEffects_Process(float input);
|
|
AudioEffectsParams *AudioEffects_GetParams(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* AUDIO_EFFECTS_H */
|