Skip to main content

Parse and analyse chords

Project description

Build status Documentation status Coverage Downloads Downloads Open in Colab

chordparser is a Python 3 package that provides a musical framework to analyse chords. Chord notation can be parsed into Chords, which can then be analysed against other chords or the key of the song. This allows for harmonic analysis in chord sheets and helps musicians understand why and how chord progressions work.

Quick demo:

>>> import chordparser
>>> cp = chordparser.Parser()

>>> new_chord = cp.create_chord("C7add4/E")
>>> new_chord.notes
(E note, C note, F note, G note, B note)

>>> new_chord.transpose_simple(6)
F7add4/A chord
>>> new_chord.notes
(A note, F note, B note, C note, E note)

>>> e_scale = cp.create_scale("E", "major")
>>> cp.to_roman(new_chord, e_scale)
II65 roman chord

>>> e_fifth = cp.create_diatonic(e_scale, 5)
>>> e_fifth
B chord
>>> cp.analyse_secondary(new_chord, e_fifth, e_scale)
"V65/V"

Features

  • Create and manipulate notes, keys, scales and chords easily

  • Parse complex chord notations

  • Transpose musical classes easily and accurately

  • Automatically generate notes for scales and chords from notation

  • Generate roman numeral notation from chords

  • Analyse chord-scale relationships

Installation

To install chordparser, run this command in your terminal:

$ pip install chordparser

Usage

Check out the Colab notebook, which runs through a working example to showcase chordparser’s functions and help you get started on using it.

The full documentation can be found here.

Contribute

Support

If you are having issues, please let me know at: titusongyl@gmail.com

Authors

Development Lead

License

The project is licensed under the MIT license.

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

chordparser-0.4.2.tar.gz (30.5 kB view details)

Uploaded Source

Built Distribution

chordparser-0.4.2-py3-none-any.whl (29.8 kB view details)

Uploaded Python 3

File details

Details for the file chordparser-0.4.2.tar.gz.

File metadata

  • Download URL: chordparser-0.4.2.tar.gz
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for chordparser-0.4.2.tar.gz
Algorithm Hash digest
SHA256 b6dfd22e20f2ff017ec4d5b64a969ff4d23af4e88b7d6d1f1ae4cdf1e03d1d58
MD5 cc3475b0064a1073014886c3f5d0fbc7
BLAKE2b-256 926a5111f8225556b81bd1887177313b5d3f14b63b1cd55bf093ecadb5685bc3

See more details on using hashes here.

File details

Details for the file chordparser-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: chordparser-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 29.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for chordparser-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 27abff827a1acdfe9cda817cbb064e3c6f03b5c66479e487c668a18d896b4908
MD5 446a9f84bd2e058d143de1d190b0d4e0
BLAKE2b-256 c6f026d98d88c91d5fb5f1a5752a001c7305195e98a243bff144899a2ec8e122

See more details on using hashes here.

Supported by

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