From our github, I had a question about using the Tympan_Library purely for output for synthesis.
One example sketch that only generates output would be this one: https://github.com/Tympan/Tympan_Library/tree/master/examples/02-Utility/OutputToneWithSteppedAmplitude
When you go inside the sketch, you can see that it creates a Tympan objects, two audio objects, and then a couple audio connections:
// Create the audio library objects that we'll use Tympan myTympan(TympanRev::D, audio_settings); //use C or D AudioSynthWaveform_F32 sineWave(audio_settings); //from the Tympan_Library AudioOutputI2S_F32 audioOutput(audio_settings);//from the Tympan_Library // Create the audio connections from the sineWave object to the audio output object AudioConnection_F32 patchCord10(sineWave, 0, audioOutput, 0); //connect to left output AudioConnection_F32 patchCord11(sineWave, 0, audioOutput, 1); //connect to right output
So, the part that creates the audio is the AudioSynthWaveform_F32. This is a merely a float32 extension to the AudioSynthWaveform that is in the original Teensy Audio library. As a general way of thinking, if you can configure the Teensy Audio library to do what you want, you can configure the Tympan_Library to do the same thing.
If you want to make your own crazy-cool synthesis effects, you need to compose the synthesis modules using connecting existing audio objects, or you need to write your own audio classes. Again, this is just like the original Teensy Audio library.
There is the possibility of injecting audio from outside the Teensy Audio universe and inserting it into the Teensy Audio universe by using AudioPlayQueue_F32 (or the regular Teensy Audio library version: AudioPlayQueue) but I think that you’d find it just as easy to learn to make your own audio object from scratch rather than force an AudioPlayQueue to suit your purpose.