Pycrotonal

The basic GUI layout for Pycrotonal

 

Pycrotonal is a keyboard based synthesizer coded in Python that runs on wxPython for its GUI and PYO for its sound engine. The inspiration for this project comes from the lack of microtonal exploration within the CS+Music curriculum as well as a polychromatic composer, Dolores Catherino.

This synthesizer allows the customization of attack and release, distortion, reverb, and wave shape (sine, triangle, square, and saw). The user is given a choice of up to 60 equal division of the octave. The normal equal tempered 12 note scale is played with the function keys f1-f12, and more divisions move towards the bottom of the keyboard.

While working on this project, I found that working with wxPython is not a very good GUI package to use. It follows C conventions of adding flags to customize components, which leads to quite a bit of confusion. As well, the FM synthesis knob does not work because the PYO object is not supported in the way that I am routing the signal. Throughout development, I implemented unit tests to maintain functions with previous versions.

Next
Next

Backend Internship at Illinois Rocstar