Skip to content

Set of tools to work with scales, modes, modulations, chord progressions, voice leading, rhythm and more

Notifications You must be signed in to change notification settings

tandav/musiclib

Repository files navigation

GitHub tag (latest by date)

musiclib

set of tools to work with scales, modes, modulations, chord progressions, voice leading, rhythm and more

install

install from pypi

pip install musiclib

or install the latest version from github

pip install git+https://github.com/tandav/musiclib

development

pip install -e .[dev]

examples

>>> from musiclib.scale import Scale
>>> from musiclib.noteset import SpecificNoteSet
>>> from musiclib.noterange import NoteRange

>>> scale = Scale.from_name('C', 'major')

>>> scale.root
Note('C')

>>> scale.notes
frozenset({Note('C'),
           Note('D'),
           Note('E'),
           Note('F'),
           Note('G'),
           Note('A'),
           Note('B')})

>>> scale.bits
'101011010101'

>>> scale.intervals
frozenset({0, 2, 4, 5, 7, 9, 11})
Scale.from_name('C', 'phrygian')

SpecificNoteSet.from_str('C1_e1_G1_C2_b2_E3')

NoteRange(SpecificNote('C', 1), SpecificNote('B', 3))

About

Set of tools to work with scales, modes, modulations, chord progressions, voice leading, rhythm and more

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages