Quality Audio on Teensy3 with Arduino

By: paul

2013-08-26 00:09:49

Over the last couple weeks I've been working on supporting quality audio (44.1 kHz, 16 bit) on Teensy3 using very simple Arduino style programming.  This weekend I added buttons and knobs to control parameters....

This work is still at an early stage.  I hope to publish a first alpha test version in about 1 month...

Edit: just a bit more info: The library manipulates audio with a collection of input, synthesis, processing and output objects that can be connected together in almost any way.  Audio connection objects automatically move the 16 bit data and run the synthesis and processing algorithms in the background, so the user's sketch isn't burdened with high bandwidth, real-time data manipulation.  The objects provide functions that can modify their behavior (volume, oscillator frequency, note on/off, modulation, etc) which can be used with extremely simple Arduino-style sketches, because the objects automatically handle all high speed data computation and movement in the background, triggered by interrupts and DMA transfers.

Designing a sytem to make excellent quality audio on Arduino with powerful features but also extremely easy has definitely turned out to be quite a challenge.  I'm still redesning the connection object's base class.  Much work remains, but now with I2S and PWM output working, .wav file playing and DDS sine wave generation all working, it really feels like it's starting to come together.  I hope to have the API stable enough (stable = unlikely to incompatibly change) for a first releast by October.

Back to archive index