MSP_lecture4

advertisement
Music Software Projects
New York University
Adjunct Instructor Scott Burton
Now that we have implemented to
collection types...
1. Harmonic Series
2. Pythagorean Scale (first seven intervals)
 Our scale engineering should evolve via inheriting,
containing and re-using functions
 There is common behavior shared by the two
collections built so far. As you implement new
methodologies you will have the opportunity to improve
what you have built prior...
Using the Pythagorean Scale
 How can we achieve variety or interest using a scale?
 “Modes” are constructed using the same set of notes but starting
place is a different scale degree
 Even though we constrain ourselves to the same interval set,
starting on a different scale degree produces a unique sound
 Using software we can play them in close succession to easily
hear how they different they sound
 Using different modes is a tool every improviser has in their
toolbox!
 Before “modulation”/changing key, musicians used modes to
create variety
The Pythagorean Collection
Initialized with 528Hz
 We will establish a note naming convention of C = 528hz
 Name each of the first 7 “natural” degrees (add this attribute to









your collectable):
“C” “D” “E” “F” “G” “A” “B” “C” (refer to spreadsheet)
Play the sequence of notes successively:
D EF GABC D
EF GABC D E
F GABC DE F
…
BC D EF GAB
C D E F G A B C (1 octave up)
These are the “modes” of the scale
Modes Visualized
Ionian
Notice where
the white keys
are adjacent
to each
other...
Dorian
Phrygian
etc
Modes - Phase 3 Requirements
 We can now derive intervals in two ways:
1. New living spec “pythag_sheet_phase3.xlsx”. With this
method we simply raise each scale degree (in a starting
scale) successively by an octave.
2. Prior living spec “pythag_sheet_phase2.xlsx”. Builds a new
scale on each scale degree using successive multiplication
by 3/2.
 The two methods produces different frequencies for the
same notes. As usual this programming phase will use the
living spec for this week.
 Mode names are shown in pythag_sheet_phase3.xlsx
(e.g., “Aeolian”, “Locrian” ...)
Modes - Phase 3 Reqs ...

Sort by frequency ascending after adjusting down to first octave

Play each mode starting with Ionian with 2 seconds in between each mode

You can use your pure sine wave tone or another more interesting one

Initialize with the base frequency of 540Hz.

Play each note 1 second

No silence between notes

Play 8 tones to end on an octave

Run the regression test by default. Test against expected results (cells in
spreadsheet). Note the sheet was built with a different base frequency – you will use
a different one (next slide)

IN ADDITION TO ABOVE:
 Display the mode name and frequencies while you play the modes starting with
“Ionian”

Happy coding!
Download