Twelve-tone matrix to generate dodecaphonic melodies
Twelve-tone matrix to generate dodecaphonic melodies.
Following a process created by the composer Arnold Schoenberg, this library computes a matrix to create twelve-tone serialism melodies which compose each of the 12 semitones of the chromatic scale with equal importance.
- Save your compositions to MIDI
- Free software: BSD license
pip install twelve-tone
You can quickly generate a random twelve-tone melody with the CLI
$ twelve-tone ['C# / Db', 'A# / Bb', 'F', 'D', 'G# / Ab', 'D# / Eb', 'F# / Gb', 'A', 'C', 'G', 'B', 'E']
Or you can use the following methods in a script:
>>> from twelve_tone.composer import Composer >>> c = Composer() >>> c.compose() >>> c.get_melody() ['C# / Db', 'A# / Bb', 'F', 'D', 'G# / Ab', 'D# / Eb', 'F# / Gb', 'A', 'C', 'G', 'B', 'E']
After you have composed a matrix of tone rows, you can save the composition to MIDI:
>>> c.compose() >>> c.save_to_midi(filename='TWELVE_TONE.mid')
The new MIDI file will be created in your current working directory. If you do not specify a filename for your file, it will default to example.mid.
To run the all tests run:
Note, to combine the coverage data from all the tox environments run:
set PYTEST_ADDOPTS=--cov-append tox
- composer: added/fixed column tonerow support
- cli: added random melody generator command
- build: added miditime to setup install requirements
- composer: Added save to MIDI capability
- First release on PyPI.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|twelve_tone-0.4.0-py2.py3-none-any.whl (9.7 kB) Copy SHA256 hash SHA256||Wheel||py2.py3|
|twelve-tone-0.4.0.tar.gz (20.6 kB) Copy SHA256 hash SHA256||Source||None|