#ifndef AUDIO_EFFECTS_H #define AUDIO_EFFECTS_H #include #include "fx_octaver.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 : * octaveur -> egaliseur -> overdrive -> saturation -> echo -> reverberation. */ typedef struct { bool audio_on_off; float master_volume; /* volume general en sortie de chaine, 0.0 a 1.0 */ FxOctaverParams octaver; 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 */