Cadence is a minimalist software music sequencer written in Python.
- Clone the repo:
$ git clone https://github.com/emilykl/cadence.git
$ cd cadence- Install package:
$ pip install -e .- Play a sequence:
$ python sequences/seq1.py- Launch visual interface:
$ cadence goCadence consists of a Python API, a command-line interface, and a visual user interface.
See sequences/seq1.py for an example of how to use the Cadence Python API to play a sound sequence.
After installation, run
$ cadence --helpto see the available CLI commands.
Run the command
$ cadence goin your terminal to launch the visual interface.
A project can be saved in two ways:
- by calling the
cadence.save_project()function (see example at the bottom ofsequences/seq1.py) - via the "Save project..." button in the UI
A saved project consists of a folder called projectname.cadence/ with the following structure:
projectname.cadence/
├─ project.json # metadata and sound timings
└─ sounds/ # contains all sound files
├─ sound1.wav
├─ sound2.wav
└─ ...
Once saved, a project can be loaded in three ways:
- by calling the
load_project()function - by running the command
cadence load projectname.cadenceto launch the project in the UI - by clicking the "Load project..." button within the UI
The sounds/ directory includes a set of built-in sound files to use in your projects. You can also use your own sound files, as long as they meet the following requirements:
- Sounds must be
.wavfiles - All sounds used in a single project must have the same sample rate, bit depth, and number of channels (mono or stereo).
The ffmpeg command line utility can be used for converting sound files to the correct format.
