Skip to main content

An OpenAI Gym style toolkit for music generation experiments.

Project description

RaveForce

RaveForce is an Python environment that allows you to define your musical task in Glicol synth, and train an agent to do the task with APIs similar to the OpenAI Gym.

Why Gym for Music

OpenAI Gym is famous as a toolkit for reinforcement learning, and can also be used for exploring other algorithms such as evolutionary algorithms.

In these algorithms, an agent is trained through interacting with and getting reward from the environment.

Similar pattern can be found in music production and performance, especially on beat-based music.

Musician makes decision at each beat on which notes and what kind of timbre to play.

This might not be the case for physical instrument (e.g. piano, guitar) players from psychology or musicology perspective.

However, if we consider how electronic music is made, it starts to make sense.

For electronic instruments like drum machine or sequencer, the player needs to make those decision as abovementioned.

Yet to simplify and model this process, we can study live coding music.

Live coding is a new form of music performance where the artists write computer program code to make music in real-time.

How to use RaveForce

First, you should be familiar with Glicol syntax.

Since we are going to define our own musical task, we should make some changes to the make method.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

raveforce-0.2.1.tar.gz (17.4 kB view hashes)

Uploaded Source

Built Distribution

raveforce-0.2.1-py3-none-any.whl (16.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page