Getting Started with Counterpoint Composer

James L. Weaver
Developer / Evangelist
Twitter: @JavaFXpert
Email: jweaver@pivotal.io
http://JavaFXpert.com
http://CulturedEar.com


@JavaFXpert
About the Presenter
Author of several Java/JavaFX/RaspPi books

Java Champion, JavaOne Rockstar, plays well with others, etc. :-)

@JavaFXpert
About the Presenter

@JavaFXpert

"I see people going to college for 14 years studying to be doctors and lawyers.
I see people getting up at seven-thirty every morning going to work at the drug store to sell Flair pens.
But the most amazing thing to me is I get paid for doing this."
- Steve Martin in Let's Get Small
I can relate to Steve Martin's sentiment:
Mission: "Transform how the world builds software"






@JavaFXpert

Mission: "Transform how the world builds software"


@JavaFXpert
What is counterpoint?
"The relationship between voices that are interdependent harmonically yet independent in rhythm and contour"
Tip: For a gentle introduction to counterpoint, check out the Species Counterpoint article by Nicholas H. Tollervey

@JavaFXpert
Counterpoint example


@JavaFXpert
Listen for interdependent harmonies and independent rhythms & contour
Text
Italian Renaissance composer of sacred music
- Created Palestrina-style counterpoint
- Best known 16th-century representative of the Roman School of musical composition
- Influenced music of composers such as Johann Sebastian Bach


@JavaFXpert

Born in Austria, Johann codified Palestrina's techniques in the 1700s, calling it species-counterpoint, mainly for teaching students.
- Published in Gradus ad Parnassum
- Describe valid pitch and rhythmic relationships between notes
- Influenced music of Hayden, Mozart and Beethoven

@JavaFXpert
Composers such as Chopin were indirectly influenced by Johan Fux

from ConceptMap.io

@JavaFXpert
"Wlazł kotek na płotek" cantus firmus
This will be our main melody
Wlazł kotek na płotek i mruga,
ładna to piosenka niedługa.
Let's jump right in with a demo in which Counterpoint Creator writes counterpoint for a simple melody


@JavaFXpert
"Twinkle Twinkle Little Star" cantus firmus

This will be our main melody
Brilla brilla una stellina, su nel cielo piccolina
Let's jump right in with a demo in which Counterpoint Creator writes counterpoint for a simple melody

@JavaFXpert
Funkel, funkel, kleiner Stern
Demo: Create counterpoint (first-species) for
Twinkle Twinkle Little Star
Now let's review the steps from the demo

@JavaFXpert
"Wlazł kotek na płotek" cantus firmus including initial chord
Initial chord contains number of voices and their starting notes
To enter these notes into the staff:
- Click the Clear menu item to clear the staff
- Click the piano icon to reveal the piano keyboard:
- Click in the staff to give it focus:
- While pressing the shift-key, click each of the notes in the initial chord
- Release the shift key and click the remaining notes




@JavaFXpert
"Twinkle" cantus firmus including initial chord
Initial chord contains number of voices and their starting notes

To enter these notes into the staff:
- Click the Clear menu item to clear the staff
- Click the piano icon to reveal the piano keyboard:
- Click in the staff to give it focus:
- While pressing the shift-key, click each of the notes in the initial chord
- Release the shift key and click the remaining notes



@JavaFXpert
Twinkle first-species counterpoint
Cantus firmus is automatically converted to whole notes, and melodies are placed on separate staves
To achieve similar results, in the menubar:
- Verify that First species is selected
- Verify that Ionian mode is selected
- Click the Compose menu item

Clicking the Listen button will play the composition:


@JavaFXpert
To learn more about first-species counterpoint, check out:
For pointers on composing a cantus firmus, check out:
- Counterpoint, First species (Wikipedia)
- Composing a first-species counterpoint (Open Music Theory)
- Composing a cantus firmus (Open Music Theory)

@JavaFXpert
Twinkle second-species counterpoint
Second species contains half-notes in counter-melodies
To achieve similar results, in the menubar:
- Select Second species
- Verify that Ionian mode is selected
- Click the Compose menu item


@JavaFXpert
Demo: Create second-species counterpoint for
Twinkle Twinkle Little Star
To learn more about second-species counterpoint, check out:
- Counterpoint, Second species (Wikipedia)
- Composing a second-species counterpoint (Open Music Theory)

@JavaFXpert
Twinkle third-species counterpoint
Third species contains quarter-notes in counter-melodies
To achieve similar results, in the menubar:
- Select Third species
- Verify that Ionian mode is selected
- Click the Compose menu item


@JavaFXpert
Demo: Creating third-species counterpoint for Twinkle Twinkle Little Star
To learn more about third-species counterpoint, check out:
- Counterpoint, Third species (Wikipedia)
- Composing a third-species counterpoint (Open Music Theory)

@JavaFXpert
Twinkle fourth-species counterpoint
Fourth species contains sustained half-notes in counter-melodies
To achieve similar results, in the menubar:
- Select Fourth species
- Verify that Ionian mode is selected
- Click the Compose menu item


@JavaFXpert
Demo: Creating fourth-species counterpoint for Twinkle Twinkle Little Star
To learn more about fourth-species counterpoint, check out:
- Counterpoint, Fourth species (Wikipedia)
- Composing a fourth-species counterpoint (Open Music Theory)

@JavaFXpert
Twinkle fifth-species counterpoint
Fifth species combines first through fourth + eighth notes & rests
To achieve similar results, in the menubar:
- Select Fifth species
- Verify that Ionian mode is selected
- Click the Compose menu item


@JavaFXpert
Demo: Fifth-species counterpoint for
Twinkle Twinkle Little Star
To learn more about fifth-species counterpoint, check out:
- Counterpoint, Fifth species (Wikipedia)

@JavaFXpert
Exploring Modes
Using the mode selector

@JavaFXpert
Composing in Dorian mode
Start/end the cantus firmus with a D note and select Dorian mode
The same idea holds true for all modes:

Mode | Start/end note |
---|---|
Ionian | C |
Dorian | D |
Phrygian | E |
Lydian | F |
Mixolydian | G |
Aeolian | A |
Locrian | B |

@JavaFXpert
Demo: Composing counterpoint
in Dorian mode
Changing the Rules
Examine the counterpoint rules and results of altering them

@JavaFXpert
Modifying counterpoint rules

There are 70+ counterpoint rules, categorized by importance, that may be toggled to see their effect on the counter-melodies
Toggling a counterpoint rule
One such rule is to avoid unisons in two-part counterpoint. Here we've toggled it so that the rule is not in effect.

The effects of disabling the avoid unisons rule
Here is our most recent composition before disabling the rule:


Here is the composition after disabling the "avoid unisons" rule:
Note that the final measure now contains D notes in unison, and that most of Melody 2 has changed as a result.

@JavaFXpert
Demo: Toggling a counterpoint rule, and its effect on a counter-melody
Getting Started with Counterpoint Composer
http://CounterpointComposer.com
Hope you enjoyed

James L. Weaver
Developer / Evangelist
Twitter: @JavaFXpert
Email: jweaver@pivotal.io
http://JavaFXpert.com
http://CulturedEar.com

Getting Started with Counterpoint Composer
By javafxpert
Getting Started with Counterpoint Composer
Tutorial for getting started with Counterpoint Composer
- 52,363