Skip to content

Nikolay-Lysenko/dodecaphony

Repository files navigation

Build Status codecov Maintainability PyPI version

Dodecaphony

Overview

This is a configurable tool that generates twelve-tone fragments. The twelve-tone technique (also known as dodecaphony) is composition method that produces chromatic music which is usually atonal (although, not necessarily). One of the core properties of twelve-tone music is its global coherency achieved by deriving content from the same sequence of 12 unique pitch classes.

Each run of the tool results in creation of a fragment which can be used as a part of a larger composition. These fragments are stored within individual directories containing:

  • MIDI file;
  • WAV file;
  • Events file in sinethesizer TSV format;
  • PDF file with sheet music and its Lilypond source;
  • YAML file that can be copied to a config for a derivative fragment;
  • Text file with meta information (such as path to config and evaluation scores).

A demo piece compiled from various outputs of the tool is included in the repository as MIDI file. There, velocities and control changes are set manually, however.

Installation

To install a stable version, run:

pip install dodecaphony

Usage

To create a new musical fragment, run:

python -m dodecaphony [-c path_to_config]

Default config is used if -c argument is not passed. Advanced usage will be covered in a special guide, but right now you can read the source code — it is structured and has built-in documentation.

If you are on Mac OS, please check that parallelism is enabled.