Da capo

In this lightning talk I am going to talk about Harmony.

The study of harmony involves chords [skip to next slide, describe, and back], their construction, and how they change. Vertical vs horizontal (melodic line), though not clear-cut. Tension vs resolution (dissonant vs consonant). Prepare + resolve.

[A chord]

Here is a very famous example.

8 chords, repeated. Listen for tension – notes that 'clash', moving notes. This is polyphony – same tune, three times.

This is not going to be a “four chords” routine, promise. However, this piece does have the same chords:

This is homophony – a melody with harmony underneath.

JS Bach. Wrote many 4-part chorales, SATB, Luther hymn with harmonized other parts.

Here is a short example:

Listen for tension again, end of each phrase (sentence), the cadence. Especially the very end.

Back in 1998, was doing A-level music. Part of this involved harmony, being given a tune and providing the harmonization in the style of Bach.

Here is an example of such an exercise:

Chorale exercise [audio: play it]

But how do we imitate Bach?

(I didn’t actually know this was Bach, or where he’d used it, until researching this talk.)

So, the “Rules” – what is nice to hear, and good for those singing.

All can be broken, but probably not much in an A-level exam. Things like:

  • Spacing → sounds odd

  • 3rd or root missed out → can't tell what the chord is

  • Doubling of major 3rd, leading note → parallel

  • Crossing / Overlapping → sounds odd

  • Consecutive fifths, octaves and unison → lose independence

  • Leading note not rising to tonic → sounds odd

Following these rules (and others), you can fill in the example given, until it looks something like this, which is what I came up with:

Chorale exercise, filled in [audio: play it]

However, I kept missing consecutive fifths...

So the weekend before my January 1998 Maths exam, I wrote a computer program to check harmony.

You still had to write it, no help there, but it would then tell you about any mistakes.

[video: Pull up Acorn emulator, and run !Harmony on the same example]

Over 20 years later, a friend said wouldn’t bach.js be a great name for a JavaScript library, so I dug up my old code and rewrote it all in JavaScript…

See it in action at https://dracos.github.io/bach.js/

To finish, a different Bach harmonization of the same hymn:

The End