Just a small exercise using standard libraries and cmake, for fun i guess i'm not sure why i made thisA ASKJDFGHADFG
- Sine, square, sawtooth, triangle, and PWM waveforms (only generators for noise though)
- ADSR envelopes with presets (organ, piano, pad, pluck, drums)
- White, pink, and brown noise generators
- Note sequencer with named notes (e.g.
"C#4","Bb3") - MIDI file rendering with per-channel instrument and effect config
- Effects: reverb, delay, distortion, volume
Requires: CMake 3.10+, g++ with C++17 support.
cmake -B build
cmake --build buildRun demos (generates sample WAV files in output/):
./build/adawf.exeRender a MIDI file:
./build/adawf.exe path/to/song.midEdit config.txt to assign instruments and effects per MIDI channel:
channel 1 shape sine adsr piano effects reverb,delay
channel 10 shape square adsr drums effects distortion
bpm 120
output_folder output