music21 is a toolkit for computer-aided musicology and music analysis in Python.
metasolfeggio
computer-aided harmony and counterpoint
Tuesday, June 26, 2012
Monday, January 5, 2009
Literature Review of Automatic Harmonization
I am reviewing work related to automatic harmonization, including some providing source code and datasets.
I was looking for a weighted list of chord progressions used in common practice. Now, I am convinced that the best way to get such a list is to automatically learn it from data.
Sunday, December 28, 2008
Music Theory in Python
I stumbled upon mingus, a music theory and notation package for Python with MIDI playback support.
I'll give it a try. It looks neat and well-thought, yet the project is enough in its infancy that I might get a chance to contribute. We'll see.
Thursday, December 4, 2008
Encoding the Rules of Harmony and Counterpoint
As for any other expert system, you can either encode the rules of harmony and counterpoint symbolically or derive them statistically from samples. If you choose the sample-based approach, you could try to derive the rules in such a way that the encoding is meaningful and ideally recover the symbolic rules (and compare them with harmony 101) from all the sampling. Of course, you'll need a lot of samples in a computer-readable format. Is such a corpus readily available? You don't know. In any case, you're wandering off a realisable path. Indeed, to start off, you would be wiser to experiment with different formats for encoding the rules of harmony and counterpoint. You want to formalize some knowledge which is usually passed on rather laboriously.
You should still have the wonderfully clear & slim book from harmony and counterpoint II. Let's pray it's at home. In any case, you should find a few resources to help you in understanding (and simultaneously) formalising the rules.
Like for classical mechanics, you hope that the use of the computer will clear understanding without stiffling creativity too much. Can it enhance it? The goal is to release you from the tedious calculations.
So the first step: experiment with different encoding of the rules of harmony and counterpoint. How many of the rules can you express easily? How easily can the system exploit the rules? How easily can you add new types of rules? Does the system have any 'free will' to deviate from the rules? Are you aiming for computer-generated or computer-aided music?
Subscribe to:
Posts (Atom)