Skip to main content

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

Project description

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))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

musiclib-2.6.0.tar.gz (30.7 kB view details)

Uploaded Source

Built Distribution

musiclib-2.6.0-py3-none-any.whl (40.5 kB view details)

Uploaded Python 3

File details

Details for the file musiclib-2.6.0.tar.gz.

File metadata

  • Download URL: musiclib-2.6.0.tar.gz
  • Upload date:
  • Size: 30.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for musiclib-2.6.0.tar.gz
Algorithm Hash digest
SHA256 9472263540fc585a6b67358c565b05d1c9654854d64c2554f379589e477757b9
MD5 4e3b2cf0d330ea0de0cc07aca1a92c19
BLAKE2b-256 705bbb9d3c391e20c5121742c7af9d54985a57b4005654132473317109d03667

See more details on using hashes here.

File details

Details for the file musiclib-2.6.0-py3-none-any.whl.

File metadata

  • Download URL: musiclib-2.6.0-py3-none-any.whl
  • Upload date:
  • Size: 40.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for musiclib-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9a8f7b31eaa74d10c62899709584dcd3a518b2d6ad09d1bcd1a20306e5e73a9f
MD5 3a6c946731107668b51e0db03903d2f2
BLAKE2b-256 327dfc33e719286a27495a805cb916fc6226fc32f851b306e67cbc0124978814

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page