Inspiration

As a solo musician, I found it difficult to find quality, royalty-free backing tracks that met my projects' needs. The aim of this project was to provide for those in a similar boat as myself by aiding them in their musical endeavors. My team and I were always mindful to ensure a healthy balance between maintaining the uniqueness and creativity of aspiring artists while easing the technical challenges they tend to face, especially due to a lack of resources.

What it does

Our program uses intelligence and probability to create music (in both audio and MIDI formats) that is restricted by key signature, genre, and ostinato length.

How we built it

We used AI to generate text-based data that represents ostinatos (a short repetitive musical phrase). We converted them into hierarchical numerical data. We then mold the data using parameters provided by the user such as the emotion the user wants the music to represent, genre, tempo, chaos factor, and key signature.

Challenges we ran into

It was hard to get the expected outputs from the AI that fit the requirements for it to be processed. The response had to be engineered a bit. There was a learning curve to using tailwind CSS, in an attempt to challenge ourselves.

Accomplishments that we're proud of

The euphoria of listening to the audio generated finely by our code the first time was a sight to witness. Specifically, though, we were really happy to create wrapper classes from the ground up to swiftly move data across different data types.

What we learned

We learned the frailties of our need for sleep. But on a technical note, we learned Google Cloud deployment, the nitty gritty of music notes(for those of us who were not aware already), and the use of environment variables for smoother debugging and testing. On an interpersonal level, we learned the importance of delegating tasks, the significance of communication especially when it comes to shared files, and the ability to each find our own voice of expression scattered throughout different aspects of our code.

What's next for Ostinato

There is room for immense expansion given the modifiability of our program. We intend to make it much more personalized and customizable. This can be done by increasing the genres we explore, adding more instruments, and adding harmonic changes to prevent potential repetition. There is the possibility of categorizing music even further to better suit individual needs. Something achievable by training an AI model to create samples that are more tailored to personal requirements.

Share this project:

Updates