Jeannie 2 Audio Test with 12 Voices. I'm curious to see if the processor resources are sufficient for 12 filters (one filter per voice).
In my TeensyMIDIPolySynth (TMPS), I have implemented a 3-voice 12-poly synth. The audio portion runs on a T4.0 (overclocked at 816MHz with no additional cooling, hovering at or below about 50 degrees C & staying just under 95% loaded when all audio components are active). The display control/traditional 5-pin DIN MIDI/USBmidi/USHhostMIDI portion runs on a T4.1. The two Teensys communicate bidirectionally over a 500kbaud serial connection. Control/setting information flows both ways, as well as selective DEBUG information, between the Teensy processors.
Each of the three voices includes the following capability:
Each VFO is amplitude adjustable, and the waveform generation can be any mix (positive or negative, amplitude adjustable) of sine, duty controllable square, triangle, and saw oscillators, with +/- 3-octave selection/control, with individual tuning, plus overall gross tuning.
Each VFO can be modified by an LFO. Each LFO is frequency adjustable from 0-30Hz, depth adjustable (how much modulation is applied to the VFO), which can be any mix (positive or negative, amplitude adjustable) of sine, square, duty controllable pulse, triangle, and saw oscillators, S&H, or pink/white noise, and can be DC adjusted by +/- 1.0.
Each LFO is followed by an envelope generator, with adjustable delay, attack, hold, decay, sustain, and release.
Each modulated VFO is followed by an envelope generator, with adjustable delay, attack, hold, decay, sustain, and release.
Each LFO is followed by a filter than can be selectively enabled/disabled, and when enabled can be configured as LP, BP, HP, notch, with selectable number of octaves (how far the LFO sweeps the VFO), as well as adjustable resonance & bandwidth.
Each LFO filter can be modulated by an LFO that is frequency adjustable from 0-30Hz, depth adjustable (how much modulation is applied to the VFO), which can be any mix (positive or negative, amplitude adjustable) of sine, square, duty controllable pulse, triangle, and saw oscillators, S&H, or pink/white noise, and can be DC adjusted by +/- 1.0.
Each modulated VFO is followed by a filter than can be selectively enabled/disabled, and when enabled can be configured as LP, BP, HP, notch, with selectable number of octaves, as well as adjustable resonance & bandwidth.
Each of the three voices also includes an independent strings generator that can be frequency modulated by the same LFO modulating the VFO. The strings generator includes controls for octave selection and drive-level.
The TMPS includes independent white noise and pink noise generators that are mixed in at the top-most level (parallel to the modulated/filtered voices/notes). In addition, there is a simulated moog-style ladder filter that can be added after all of the voice generator objects in the audio processing chain. The ladder filter includes controls for knee freqency, resonance level, number of octaves, passband gain, overdrive, sweep time in milliseconds, beginning level, and ending level.
The TMPS also includes an SC reverb following the ladder filter, which includes controls for reverb percentage (wet/dry mix), duration, and damping.
The three voices are independently frequency tuneable, and the TMPS includes a master tuning control. There is a master amplifier volume control, as well as volume controls for each voice. Glissando/glide (of the last MIDI note input) is implemented as a software-generated linear frequency sweep algorithm.
Headphone volume and LINE OUT volume are independently adjustable. There is an on-screen CLIPPING indicator and an on-screen battery level monitor/indicator, as well as an on-screen clock. Real-time LED-style indication is displayed on-screen for MIDI note on / MIDI note off & MIDI control messages.
The TMPS includes a simple on-screen 1-key rollover keyboard, allowing the 12-poly capabilty to be exercised using an on-screen sustain pedal control, as well as on-screen pitch bend and mod wheel controls (these on-screen controls also follow any actual external hardware controls providing the same functionality, e.g. MIDI keyboard with pitch bend/mod wheel, and/or sustain pedal). All controls are implemented on the RA8875 800x480 touchscreen display as graphical buttons and sliders.
The TMPS has the ability to store & instantly recall up to 16 saves of all settings & parameters.
All of this capability is implemented in & comprised of 640 audio objects, with 1200 interconnection patch cords, all laid out using the standard Teensy Audio System Design Tool. If there's any question as to whether the Teensy is capable of running as a high-poly, multi-functional digital synthesizer, this is an actual case-in-point that proves, YES IT CAN !!
Mark J Culross
KD5RXT
P.S. Someday, I may actually get around to posting all of the design info, sources, PCB info, 3D-printed housing, etc. I just haven't made the time to do so yet. In the meantime, I'm extremely happy with the TMPS as an extremely capable, digitial musical synth, & I'm enjoying playing with it, as are several of my friends that I've given copies to as well. I haven't made any changes to the firmware in over a year, so it seems to be very stable at this point. MJC