===================================================================== WAVETABLE SYNTHESIZER V0.1 CALVIN GIDDENS 1) build tables $ ./build_tables.sh $ ./generate_tables 2) build synth $ ./build_synth or $ ./build_optimized (optimizes for code size) 3) run synth $ ./synth 4) rendered audio is in output.raw - Audio is 16 bit, mono, little-endian, 48kHz - Best viewed in Audacity. File->Import->Raw Data... To edit / add synthesizer voices, look at main() in synth.c =====================================================================
cgiddens/wavetable-synthesizer
A polyphonic wavetable synthesizer written to run bare-metal on a ~100MHz-scale microprocessor. Contains quarter-cycle wavetables for sine and triangle waves, a mixer, and a filter bank. For development purposes, wavetable & audio I/O uses fopen() and fwrite(). In a target context, the GenerateSamples() call is intended to be registered as the "buffer available" callback in the audio driver.
C