arduino-audio-tools
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Typedefs | Variables
AudioEffectsSuite.h File Reference
#include <cmath>
#include <cstdint>
#include <iostream>
#include "AudioTools/CoreAudio/AudioEffects/AudioEffect.h"
#include "AudioTools/CoreAudio/AudioStreams.h"

Go to the source code of this file.

Classes

class  DelayEffectBase
 A Base class for delay based digital effects. Provides the basic methods that are shared amongst Flanger, Delay, Chorus and Phaser. More...
 
class  EffectSuiteBase
 Base Class for Effects. More...
 
class  EnvelopeFilter
 EnvelopeFilter. More...
 
class  FilteredDelay
 Delay effect that filters the repeat delay. More...
 
class  FilterEffectBase
 A Base class for filter based effects including methods for simple high, low and band pass filtering. More...
 
class  ModulationBaseClass
 Class provides a wave table that can be populated with a number of preallocated waveforms. These can be used to generate audio in themselves or to modulate The parameters of another effect. Class initialised with sample rate. More...
 
class  SimpleChorus
 Simple Chorus effect with a single delay voice and mono output Chorus is effective between 15 and 20 miliseconds delay of original audio. Requires the sample rate when initialising. More...
 
class  SimpleDelay
 Simple Delay effect consiting of a single tap delay with Effect Gain and feed back controls Constructor requires internal delay in samples. More...
 
class  SimpleFlanger
 Simple Flanger Effect Consistig of a single voice flanger The flanger has an effective range between 0 and 15 miliseconds in this case dleay buffer should be set to sampleRate*3/200 Constructor requires internal delay in samples. More...
 
class  SimpleLPF
 SimpleLPF. More...
 
class  SoundGeneratorModulation< T >
 SoundGenerator using the ModulationBaseClass to generate the samples. More...
 

Namespaces

namespace  audio_tools
 Generic Implementation of sound input and output for desktop environments using portaudio.
 

Macros

#define PI   3.141592653589793f
 

Typedefs

typedef float effectsuite_t
 

Variables

static effectsuite_t ** interpolationTable = nullptr
 Table of interpolation values as a 2D array indexed by interpolationTable[pointIndex][alphaIndex].
 

Macro Definition Documentation

◆ PI

#define PI   3.141592653589793f

A Suite of C++ Audio Effects Classes Adapted from https://github.com/mhamilt/AudioEffectsSuite

This implementation collects together a set of Audio DSP Effects with heavy emphasis on modularity and class inheritance coded in a modern C++ style.

Author
Matthew Hamilton

Converted to Header Only The original implementation is based on doubles. To save space, We are using floats. On a ESP32

  • size of double: 8
  • size of float: 4
    Author
    Phil Schatzmann