|
- #ifndef effect_flange_h_
- #define effect_flange_h_
-
- #include "AudioStream.h"
-
- /******************************************************************/
- // A u d i o E f f e c t F l a n g e
- // Written by Pete (El Supremo) Jan 2014
-
- #define DELAY_PASSTHRU -1
-
- class AudioEffectFlange :
- public AudioStream
- {
- public:
- AudioEffectFlange(void):
- AudioStream(2,inputQueueArray) {
- }
-
- boolean begin(short *delayline,int d_length,int delay_offset,int d_depth,float delay_rate);
- boolean modify(int delay_offset,int d_depth,float delay_rate);
- virtual void update(void);
- void stop(void);
-
- private:
- audio_block_t *inputQueueArray[2];
- static short *l_delayline;
- static short *r_delayline;
- static int delay_length;
- static short l_circ_idx;
- static short r_circ_idx;
- static int delay_depth;
- static int delay_offset_idx;
- static int delay_rate_incr;
- static unsigned int l_delay_rate_index;
- static unsigned int r_delay_rate_index;
- };
-
- #endif
|