Inspiration

A strong passion for music that I've had since childhood

What it does

Generates music algorithmic-ally in a variety of styles. Run the main.py file after installing a library called music21, and you should be greeted with a midi and musicxml output file!

How I built it

I used the music21 python library for displaying the score and outputting midi files. The algorithm to create music was planned out by me. The program first starts off by generating 8-bar chord progressions based on a web of possible chord transitions. It generates two sections in the input key, two sections in the relative major/minor of the input key, and the This program does not involve neural networks or AI models, the program did not have a training set and all functions were hard coded.

Challenges I ran into

Creating melodies. This was too difficult for me to do in a short period of time, and I eventually settled for only using chord tones in each measure.

Accomplishments that I'm proud of

Getting the framework for proper voice leading down!

What I learned

Python is an extremely annoying language, and a temporary solution to everything is deepcopy

What's next for Notchopin Composer

This project is heavily underdeveloped! Some changes that are already works in progress: Melodies with more expression and direction A more advanced harmony generation process which involves parameters for musical direction The ability to generate textures instead of having them preset

There will also be a lot of time spent refactoring as my code is extremely messy and buggy.

I also plan on building a project called Notbach, that will generate fugues. Fugues are a lot more complex and will be a significantly harder challenge.

Built With

Share this project:

Updates