Harmony 101: Whole-Play and Set Theory
02.11.14
Over the last few weeks I've been focusing on giving Whole-Play a basic understanding of harmony. Representing harmony in a computer program is not a trivial matter, in fact just deciding what harmony is can be a bit of a crazy undertaking. But for Whole-Play a pragmatic approach suffices, and I've chosen to use pitch-class set theory as the basis for it. So for Whole-Play, a harmony is:
- A set of pitch-classes.
- Optionally, one of them being the root.
Not the most information-packed description, but it's generic and relatively easy to implement. And as basic as it is, it already has some interesting features:
- The ability to identify any set of pitches.
- The ability to identify similar sets of pitches, such as transposed or inverted versions, or one included in the other.
- The ability to recognize 'special' sets of pitches (such as a diatonic scale, a whole-tone scale, etc.).
The next step is more interesting: given a certain harmony, how to produce musical objects or transformations based on it, like generating chord progressions, harmonizing melodies... More on that soon.
0 comments
Add a comment
PS: no links allowed in comment.