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


[ change image ]

PS: no links allowed in comment.


End of page. Back to page navigation.