A very basic drum machine and bassline synthesizer, based incredibly loosely on the Roland TR-303, TR-909 and TB-808 machines.
This was built entirely through interaction with OpenAI's ChatGPT, specifically using GPT-4's Code Intepreter plugin.
The goal was to build a drum machine with reatlime editing capabilities, combined with the ability to add additional sounds and sequencing modes.
Video and sound examples:
CleanShot.2023-07-20.at.08.34.33-trimmed-converted-converted.mp4
- Simple 16/32/64-step sequencer with double-up pattern expansion with velocity control
- Easily pre-fill with standard rhythms, or shift rhythms across a pattern
- Bad approxmiations of classic roland 808 and 909 sounds: Bass Drum, Snare, Low- Mid- and High-Toms, Clap, Cowbell, Hihat and Open Hihat, all done in code, no samples.
- Can also load a sample kit.
- Bassline instrument including filter and slide
- Piano stabs!
- Cycle between kits while playing
- Configurable per-instrument mixer levels, and per-channel live mute and unmute
- Adjustable tempo and swing
- Automatic saving and restoration of sequences
Right now, the way to install it is the same as the way to develop it: get the code, install the dependencies and run it.
Note: you'll need a pretty big terminal window. Resize it before launching.
- Python > 3.11.0
- Pipenv (
pip install pipenv
) - Turn your speakers on!
- Clone this repo:
git clone https://github.com/ProfessionalDevelopers/tr-cvc.git
cd tr-cvc
pipenv install
Start up with pipenv run python main.py
. The command keys are explained on the screen.
Follow the instructions as above. If you get an error like
OSError: PortAudio library not found
- this S/O link will help: https://stackoverflow.com/a/35593426
- then you may need to
pip install librosa
depending on your setup
- FX?