Audio Synthesis seems like magic at first but in fact it isn’t. I’ve created a synthesizer with effects like Reverb, an ADSR envelope and a LFO. I’m using Python 3, the lowlevel library Pyaudio, RtMidi for Midi Input and Tkinter for the GUI.
In my ongoing DEVLOG you can see the progress of developing this synthesizer.
Code on Github: https://github.com/denczo/EardrumBlaster
2 thoughts on “DIY Synthesizer | Python”
My name is Alvin and I’m a senior student in computer science. For my final project, I’ve chosen to create a synthesizer. Do you have recommendations for any specific resources I could use to learn about DSP and how to go about creating a synth? Thank you!
personally i would recommend to start with the logic to use a midi keyboard. If you use a library for it, it’s very easy and fast to implement. This way you have a solid base where you can play sounds. And then you only need to improve the sound generation.
There is a good book for dsp. It’s free online and i’ve used it myself to code e.g. the lowpass filter: http://www.dspguide.com
In addition I’ve used this website to learn about filters to create a reverb effect: https://ccrma.stanford.edu/~jos/pasp/Feedback_Comb_Filters.html
Most of it is just learning by doing. Let me know about your progress 🙂