Comments–Technical vs Generic

Occasionally I receive unspecific favorable comments, such as “good work” or “interesting point” or “keep it up.” While I appreciate favorable attention, I hope to keep this blog focused on technical content, so I have not been posting non-technical comments.
But if you have tried any of these ideas, I’d like to hear your specific reaction, good or bad.  I use these techniques myself, and for me they are an improvement over traditional methods.  On the other hand, I realize they are not perfect, and would appreciate suggestions for improvement.

Posted in Uncategorized | Tagged | Leave a comment

Tonnetz Torus Picture


This is a sketch of the Tonnetz Torus drawn with straight lines (triangles and squares). I’ve also added arrows to indicate the direction around the cycles. See my previous post for additional details.

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Tonnetz Torus — Circles of Thirds

ABSTRACT:
This post describes a diagram or structure that can be used to identify the notes of major and minor triads (and other thirds-based chords) and the notes of the diatonic major and minor scales. This structure is based on the Euler Tonnetz (tone network), which extends the concept of the Circle of Fifths to also include the major and minor thirds.

I represent the tonnetz as sets of intersecting circles of major and minor thirds in a donut shaped diagram, or torus. I call this the Tonnetz Torus or Circles of Thirds. I have also built a conceptually equivalent three-dimensional version using triangles and squares, resembling a house, which I call the House of Thirds.

House of Thirds

THE CIRCLES OF THIRDS:

  F C G
b       D
e       A
a       E
  d g B

The Circle of Fifths (shown above, where lower-case letters represent flats) is a well-known diagram for constructing key signatures and harmonic progressions.

But there is a little-used diagram that is even more powerful: Euler’s Tonnetz (tone network). This diagram displays not only the fifths, but also the major and minor thirds.

Because it displays the thirds in a certain order, it can also be used
to identify the notes of the major, minor, augmented, and diminished triads and sevenths (or any chord formed from “stacked” major and minor thirds), and also the notes of the diatonic major and minor keys and the principal chords in those keys!

The Euler tonnetz is a hexagonal pattern that displays not only the fifths (across), but also the major and minor thirds along the forward and backward diagonals, respectively.

e b F C G D A E B g d a e
 g d a e b F C G D A E B g
  A E B g d a e b F C G D A
   C G D A E B g d a e b F C
    e b F C G D A E B g d a e

In the equal-temperament system, if we equivalence all octaves of the same tone, the tonnetz diagram can conceptually be stretched and folded into a donut shape (torus) composed of four cycles of minor thirds intersecting with three cycles of major thirds. I call this the Tonnetz Torus or Circles of Thirds.

       e
      B g
     G D A
    e b F C
     g d a e
      A E B
       C G
        e

Notice that the upper left and lower right diagonals are identical, as are the lower left and upper right.
Imagine rolling the figure into a tube to match up the identical sides, then stretch the tube and bend it into a donut, matching up the ends. You will then have four circular rows of three notes in one direction and three circular rows of four notes in the other.

One can then follow a path along the circular arcs, switching from major to minor circles in a fixed pattern, to identify the notes of the major, minor, augmented, and diminished triads and sevenths (or any chord formed from “stacked” major and minor thirds), and also identify the notes of the diatonic major and minor keys and the principal chords in those keys!

Of course, the circular representation of the cycles of thirds is purely an artifact. If the points are connected with straight instead of curved lines, one would have four triangles and three squares. These can be rendered as a three-dimensional structure somewhat resembling a house, the House of Thirds.

I have constructed a simple model of this figure using gumdrops and colored toothpicks. (See photo near the beginning of this post.)

I used red, yellow, green, and blue toothpicks for the sides of the triangles,
and I used white, orange, and black gumdrops for the notes,
with C=orange for consistency with Roy’s Pertchik’s tri-color keyboard coloring.
Each of the four triangles has sides of the same color and three different colored nodes.
Each of the four squares has nodes of the same color connected by natural color toothpicks.

There is also a “direction” around the circles/triangles/squares.
[If available, one could use coctail toothpicks with feathers or hilts on one end to suggest arrows to indicate the direction.]
In my structure, I follow a “direction” through the cycle of colors, as follows:
Along squares the direction is: blue -> green -> yellow -> red -> blue (reverse spectral hue order),
along triangles the direction is: black -> orange -> white -> black (increasing brightness order).

To label the notes, I pasted on typewritten letters. I used lower case letters for the black notes, understood as flats.

The circle of fifths could be added to the structure, e.g. by threading a strand of yarn (or sticks of spaghetti) through the gumdrops in the appropriate sequence, major+minor (= minor+major):
g d a e b F C G D A G B F#=g

This structure could be constructed by children as a fun lesson in harmonic structure!
(To preserve edibility when working with children, you might use cake decoration icing for labeling the notes.)


The notes of scales and chords can be determined by following a path in the direction of the cycles:

A major triad (major minor) follows a path: triangle square.
A minor triad (minor major) follows a path: square triangle.

For a diatonic major scale (IV I V7), start with the subtonic,
create the intervals: major minor major minor major minor minor: Trinagle square triangle square triangle square square.

For example, for the C major scale,
the principal chords are: IV (FAC), I (CEG), and V7 (GBDF).

start on the subdominant note F (yellow triangle, black square)
and follow the path described by the intervals above:
follow the yellow triangle [major] to the orange square (A),
then the orange square [minor] to the red triangle (C),
then red triangle [major] to the white square (E),
then the white square [minor] to the blue triangle (G),
then the blue triangele [major] to the black square (B),
then the black square [minor] to the green triangle (D),
then the black square again [minor] back to the yellow triangle (F).

Following the same path, but starting on D, gives the minor chords
(ii vi iii7) and the relative minor scale.

The minor scales (relative, harmonic, and melodic) also consist of a pattern of 3 major and 4 minor thirds,
which line along other paths around the torus.

For minor scales,
start on the subtonic of the minor (ii of the relative major),
e.g. start on D for A minor, the relative minor of C ).
for relative minor (ii vi iii7) , use intervals: minor major minor major minor major minor (D F A C E G B D).
[This is actually the same path as the major scale, but starting on D instead of F].

for the harmonic minor (ii vi III7):
minor major minor major major minor minor (D F A C E G#=a B D )
for the melodic minor ascending (II vi III7):
major minor minor major major minor minor (D F#=g A C E G#=a B D).

Note that all scales, when constructed from thirds, contain three major and four minor intervals, forming a cycle of seven notes.
Because of the uneven structure of the pattern, starting on a different note will always give a different set of diatonic scales, and corresponding principal chords,
for each of twelve notes of the chromatic scale.

Other chords can be formed in a similar way. Examples:

Augmented: major major
Diminished: minor minor
Seventh: add a minor to any major or minor triad
Dominant seventh: major minor minor
Minor seventh: minor major minor
Major seventh: major minor major
Dim seventh: minor minor minor
Min 7 flat 5: minor minor major

All these can be read from the House of Thirds by starting on the root,
then following the triangle edge for a major third or the square edge for a minor third.

Posted in Music | Leave a comment

My Janko Glockenspiel

My Janko Glockenspiel

The development of the 4×3 Tonnetz notation discussed in my earlier post is motivated in part by Roy Pertchik’s tri-color vibraphone with it’s 6-6 “Janko” keyboard arrangement. http://users.rcn.com/roypertchik/2ndPage/Music/theory1.htm.

This suggested to me that the simplest and most economical way to get a real Janko instrument was to modify a xylophone.  I was able to find an inexpensive CB bell kit (2 octaves A5-A7).  Rearrangement of the bars was relatively easy as the bars are attached by screws to a wooden frame.  Once the bars are rearranged, the holes in the bars will mate with only one of the original screw holes in the frame, so I temporarily let the other end of the bar float free.  It is still playable, if I’m not too vigorous!  At some point I will need to secure the other end, or at least substitute spacer pegs for the original mounting pegs.

The keyboard arrangement may be a bit difficult to recognize due to the A-A range.  The front four white bars are F G A B, and the black bars immediate behind them are Gb Ab Bb.  The white bars C D E were moved to the back row, the black bars Db Eb were moved forward, and the “missing” black bar positions Cb and Fb were filled in, leaving empty slots at the end of each row (not all visible in this photo).  The full arrangement is:

 b C D E g a b C D E g a
A B d e F G A B d e F G A

The particular instrument I found used the traditional while and black bar coloring. So to get Roy’s tri-color scheme, I just added star stickers in red, white, and blue! I plan to replace them with the 3-color 4-orientation notehead symbols of my Tonnetz notation. (This could be approximated by suitably orienting the star stickers.)

I had no previous experience with the Xylophone before building this instrument, but in spite of that, with the Janko arrangement and tri-color stickers, I found it relatively easy to play songs “by ear” ( I had limited experience singing solfedge) and to transpose into any key.

The whole project cost under $100 and a few hours time. I found it a considerable advantage to have a real 6-6 instrument to play while exploring 6-6 notations. At this price, there was really no excuse not to.

What’s more, it suggests that low cost 6-6 chromatic “xylophone” type instruments could be made available for children.  (The instruments could even be produced by the children themselves–see for example   http://www.motherearthnews.com/Do-It-Yourself/1981-11-01/The-Pipe-Xylophone.aspx.  Other plans use wood or PVC pipe for the tone bars.  Or  you might prefer to buy a commercial instrument with tuned bars and just build your own frame).

This would enable us to explore the pedagogical benefits of the 6-6 arrangement (and corresponding notations) vs. the traditional method.   Indeed, xylophones are already  a staple of the Orff approach to music instruction for children  http://en.wikipedia.org/wiki/Orff_Schulwerk so it may be possible to adapt existing skills and methods.

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Tonnetz-Based 4×3 Notation

(Revised 2/25/2011 to correct errors in the Bach example.)
(Revised 12/13/2010 to add Chromatic Scale example and correct an error in the Bach example, and other editorial revisions.)

I’ve created a font to print music in a Tonnetz-based 4×3 notation.

The notation is based on Euler’s Tonnetz (described in more detail below) which emphasizes the relationships of major and minor thirds.  Each note of the chromatic scale is represented by a notehead of a different shape/orientation and color.  Noteheads of the same shape belong to the same augmented chord (notes a major third apart) and noteheads of the same color belong to the same diminished seventh chord (notes a minor third apart).  The following illustrates the chromatic scale in this notation, on a special chromatic staff with staff lines vertical, a line for each “black” note and a space for each “white” note:

The next illustration is Bach’s Prelude 1 from the Well-Tempered Clavichord.

 

Bach Example

Bach WTC Prelude 1 in 4x3 Tonnetz

st7-5BachWTC1P1ref02250211

The first 33 measures are each condensed into a single 5-note chord.   This illustrates the benefit of the Tonnetz foundation, by which intervals of the chord can be discerned by matching shape and  color: major thirds have the same orientation, minor thirds have the same color.

The Tonnetz (tone network) was developed by the mathematician Euler  http://en.wikipedia.org/wiki/Tonnetz as a representation of the harmonic relationship of musical notes.
The tonnetz is a hexagonal arrangement of the tones of the just tempered scale based on their frequency ratios, principally the perfect fifth (2:3), the major third (4:5) and the minor third (5:6). The same pattern can be reinterpreted in terms of the equal-tempered scale using the customary definitions of Perfect Fifth, Major third, and Minor Third as intervals of 7, 4, and 3 semitones, respectively. In the Tonnetz arrangement, the tones are arranged in a hexagonal honeycomb grid along three principal diagonals:  along one diagonal the tones are arranged in the sequence of the circle of fifths; the same sequence of tones lie along parallel rows, offset so that tones a major third apart lie on one diagonal and tones a minor third apart lie on the remaining diagonal. The three notes of a major or minor root-position triad are thus clustered in a triangle.

One can imagine a musical notation based on the Tonnetz. Each of the twelve tones of the chromatic scale would be distinguished by a pair of characteristics, an “X” and a “Y”, the X’s in cycle of 4 and the Y’s in a cycle of three, such as:
A1 B2 C3 D1 A2 B3 C1 D2 A3 B1 C2 D3 A1 … .

Thus, all notes a Major 3rd apart are the same “X” (here, letter) and all notes a minor 3rd apart are the same “Y” (here, number). For example, if A1 is “do”, the next A is a major third up (A2=”mi”), the next 2 is a minor third up from that (D2=”so”).

I use a triangle shaped notehead symbol cycling through 4 orientations (X=up, right, down, left) and 3 colors (Y=black, gray [crosshatch], white).  One orientation cycle = major third (4 semitones); one color cycle = minor third (3 semitones).   The noteheads thus provide a visual indication of the harmonic relationship among the notes of a melody or chord, without explicit  reference to pitch.

I borrowed the 3-color idea from Roy Pertchik’s patented tri-chromatic keyboard system. Roy has also developed a note-naming system based on the 4×3 structure of the Tonnetz.  Enrique Prieto, John Keller and others have also suggested similar symbol systems.  For further discussion of these topics, refer to the forum of the Music Notation Project http://groups.google.com/group/musicnotation.

In this system, each pitch of the chromatic scale has a unique symbol.  The notehead system does not use staff position per se, so it can be adapted to any staff system.  In fact doesn’t even need a staff, if some other mechanism is used to indicate the octave. For illustration, I use a 7-5 “piano roll” staff that mimics the conventional piano keyboard.
For convenience of editing/printing, I have used a “Klavar” style staff with the lines running vertical and pitches horizontal (discussed in prior posts), but the page can be rotated to read it horizontally if you prefer.

Although the system uses color for pitch, it does not use stems or flags, so these could still be used to indicate timing and parts.

This example was produced entirely with a spreadsheet, word processor, and home-made custom font as described in my earlier posts.  The font is available on Fontstruct.com as StaffTonnetz1b.  http://fontstruct.fontshop.com/fontstructions/show/stafftonnetz1b

To create sheet music, 12 staff positions are represented by  “line” characters: open bracket [ for gray line: Db Eb; close bracket ] for black line: Gb Ab Bb; and vertical bar | for “space”: ABCDEFG. A comma represents a 1/2 space between line characters.  To place a note on a line or space, just type the letter in place of the comma before the line or space on which it is to appear, using lower-case d e g a b for the flats and lower-case c f for sharps.  [d g a sharp and other accidentals must be entered as an enharmonic].

You could use some other staff-line pattern if you choose.

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Using Excel Formulas to Convert a PianoRoll Spreadsheet to StaffKlavar1

In previous entries I described techniques for creating simple alternative-notation scores using just word processing and spreadsheet software and a home-made font. I used the spreadsheet only to create and format a table.  I did not use formulas or calculations, but the process required a lot of manual editing.  In this entry, I discuss using spreadsheet IF-formulas to eliminate a lot of the manual editing required for the method described earlier.

I believe these techniques may be useful for musicians or teachers who want to experiment with alternative notations but do not have the resources to acquire or produce dedicated software.  Furthermore, although I am using specific variations of “PianoRoll” and “Klavar” notations in these examples, the techniques are not limited to these particular notations, but  could be applied to various Alternative Notation proposals.  I am hopeful that facilitating the creation of computer-editable scores in various notations will contribute to the eventual development and dissemination of notations that make playing and even composing music more widely accessible, especially to beginners of all ages.

Recall from my previous music blog entries that PianoRoll and Klavar are alternative music notations that use a “staff” in which every black and white key note has it’s own line or space, unlike traditional notation in which the black key notes share positions with white key notes.  There is a line for each black key note and spaces for the white-key notes.   To simplify creating and printing staff notations with office software, I run the  “staff lines” vertically down the page, with the pitches distributed across, so the staff appears rotated 90 degrees from the conventional staff orientation.  (Klavar itself is typically played with the staff vertical, but if you would rather read your music from a horizontal staff, just rotate the page after printing.)   An example of PianoRoll is given in Figure 1, left side, below; Klavar is shown in Figure 6.  If you are not familiar with the details of the “PianoRoll” or “Klavar” notations, please read my earlier blog entries first, which include more complete examples.

My version of Klavar uses a custom font, StaffKlavar1, which I developed with a free on-line system FontStruct (fontstruct.fontshop.com).  (You can download the font from that site, and also make modifications or create your own fonts.)  The StaffKlavar1 font is designed to use two characters per chromatic scale position, one character for a line symbol and the comma character for a half-space. There are several versions of the “line” character:  black and gray, whole (for unoccupied lines) and partial (for lines with notes on them), even a “white” line used between two half-space characters to make a 3/2 space for BC and EF.   For note symbol characters I use digits representing finger numbers: 12345 for the right hand and 67890 for the left.  A note symbol replaces three staff characters: one of the line symbols and the two surrounding commas that represent the half-spaces.

To convert a PianoRoll spreadsheet to StaffKlavar1 format, you must edit the PianoRoll sheet (which contains only note symbols, no line or space symbols) to add the staff line characters,  then remove separator commas around the notes, then change the font.  To facilitate removing the extra commas, I start by surrounding the notehead symbols with an otherwise unused character, the semicolon ( ; ).

The following figure illustrates the desired result: The original PianoRoll is on the left; the same score with staff-line characters and semicolons added is on the right.  The numbers in the first row of the PianoRoll section are MIDI note numbers for reference; these will not be included in the StaffKlavar version.)

Figure 1: Example of PianoRoll to StaffKlavar1 Conversion: Left side is PianoRoll; Right side includes added staff characters. Columns for notes 37..53 and 60..71 were hidden to improve legibility, but follow the same pattern.

The preceding steps are described in detail in my previous blog entries.

Now adding the staff-line characters and semicolons can be a tedious operation, as it requires modifying every cell in the PianoRoll spreadsheet.

Furthermore, adding staff-line characters destroys the transposability of the PianoRoll score.  As long as the score is in PianoRoll format, it is key-invariant; that is, you can transpose the music to a different key simply by copying the same pattern of note symbols to another set of columns, as long as you maintain the relative spacing. With Excel, you can copy just these value patterns with the “Copy” and “Save Special  >  Values” operation. This is especially useful for transposing exercises into other keys and for copying chord note and finger-patterns to other chords.

But once the staff-line characters have been added, the key-invariance is lost; changing keys requires moving the note numbers relative to the staff-characters.  This cannot be done with a simple “Save Values” operation, because the note numbers and the staff characters are both “values”.

So I wanted a way to merge a PianoRoll spreadsheet containing just the note symbols with another spreadsheet formatted as “blank staff paper.” I had originally considered writing a computer program to convert do this, but it turns out that the “merger” can be done within the spreadsheet itself, using the IF function.

This is the process:

1. Begin by creating your PianoRoll score in a spreadsheet, leaving row 1 without any notes (in my example, I filled row 1 with MIDI note numbers, 60=middle C).
Let’s say the score is in columns A:AZ (use more columns if your piece has a range over 4 octaves).

2. Build the “blank staff paper” alongside it, say columns BA-CZ, as follows:

3. In the first row of blank cells BA1:CZ1 at the top of the “staff paper”, enter the pattern of staff line characters, based on the following table  (the “zero” row represents midi note numbers, which are for reference only, do not enter them into the staff paper itself):

Figure 2: Klavar Staff characters for each note of the chromatic scale.

Notice that staff line characters appear twice for each black note. The brackets [ and ] represent an empty solid line segment, with no note; the braces { and }  represent just the portion of the line extending above and below the note, and actually print in the position to the right of where they are entered. (I do not run lines through the notes to avoid obscuring the finger numbers.)  A note symbol appearing in a “black” column will replace the solid line, so only the outside segments will appear in the score; if both symbols occur, they merge into one.    The vertical bar | represents a “white” line between two half-spaces in the three half-space BC and EF intervals.

Now we want to fill the “score” with either the staff line symbol, if there is no note at that position , or notehead symbol surrounded by semicolons, when there is a note.  This is easily accomplished with a spreadsheet “IF” formula.

For an example, consider the following notes from the PianoRoll score:

Figure 3: Example line in PianoRoll notation; numbers in cells represent finger numbers

This represents three notes played together: a G and Bb in the bass played by the left hand pinky and middle finger, with an Eb in the Treble played by the right hand middle finger.

For those not familiar with the more advanced features of Excel formulas: an IF function in a cell chooses one of two different formulas for the cell value, depending on the value of a third formula.  The IF function takes the form:

=IF( logical-test, value-if-true, value-if-false) .

The first expression in parentheses, logical-test, will typically be a comparison and evaluates to TRUE or FALSE. If the first expression is TRUE, the second expression value-if-true becomes the value of the function, or, if the first expression is FALSE, the third expression value-if-false becomes the value of the function.

Figure 4: Example of formula conversion of Bb (note #58).

In our case, we want the IF to choose between the note from the PianoRoll or the staff symbol from the first line of the Klavar score.  To see how this works, let’s look at the Bb in the example.  The original PianoRoll note symbol is in cell Y26, and the corresponding StaffKlavar symbols will be in cell BY26.  The IF formula is entered in the cell BY26 in the StaffKlavar part of the sheet.  The actual formula entered appears in the cell contents display at the top of the spreadsheet, and the formula’s value displays in the cell itself.

The complete formula entered in cell BY26 is =IF(Y26=”",BY$1,”;”&Y26&”;”)

Here, the logical-test (first) expression is:  Y26 = “”

where the two quotes with nothing between represent the NULL value, signifying an empty cell.

The equal sign = indicates that the value in Y26 is compare to “empty”; if Y26 is empty (no note) the value is TRUE;

otherwise (note present), the value is FALSE.

The value-if-true (second) expression is BY$1

which represents the value in cell column BY row 1.  Recall that we previously filled row 1 with the staff characters for corresponding note positions.

The $ before the 1 indicates that formula will always use row 1 no matter which row the formula is copied to.

The value-if-false (third) expression is “;” & Y26 & “;”;

the & symbols are operators that create a string composed from the three parts: the semicolon (contained inside the first set of quotes),  the value in cell Y26, and another semicolon. The cell Y26 contains the note character (if any) in the PianoRoll sheet.

The full formula says: if cell Y26 is empty, copy the character from column BY, row 1 (this is the staff line character; in this case: ] ) into cell BY26;

otherwise, put in a semicolon, followed by the character in Y26, (the note character; in this case: 8), followed by another semicolon.

In this case, since Y26 is not blank, the formula chooses the note character, evaluating to: ;8;

Composing and entering this formula is tedious enough, but fortunately we only need to do it once!

We can use the Excel copy function to copy the formula from BY26 to all the other cells in the StaffKlavar side of the spreadsheet at once!

(In practice we would have started with cell BA2, but it doesn’t really matter.)  Excel will automatically adjust the row and column numbers to correspond to the actual location of the formula.  Except, of course, the $1 does not change but always refers to row 1, which contains the staff line character for the column.

The following figure illustrates how the formula adjusts to fill all the cells.  Notice the form of the formula is the same, but the row and column numbers adjust to copy all the cells of the PianoRoll sheet.

Figure 5: Example of PianoRoll to StaffKlavar conversion with formulas expanded.

For example, cell BW28 will contain the formula : =IF(W28=”",BW$1,”;”&W28&”;”), which is essentially the same as the previous formula, except using row 28 instead of row 26, and columns W and BW instead of Y and BY.

In this case, since W28 is empty, the staff line character ] from BW1 will be copied to BW28.

Similarly, cell AP26 will contain the formula:  =IF(AP26=”",CP$1,”;”&AP26&”;”), which is a similar formula operating on columns AP and CP.

Since AP26 contains the note-digit 3, this will be inserted, between semicolons, in cell CP26. (see Figure 4.)

Up to now, the editing to convert the PianoRoll has consisted of:

* adding one row of staff-line characters

* entering a single formula in a single cell

* doing a global copy of that formula to the rest of the PianoRoll copy.

In fact, all of these operations could have been done a priori and saved in a template, which could be copied in in one step.

At this point, the Klavar version of the sheet must be isolated and saved as a .csv prior to further editing with in a Word Processor:

  1. Copy the edited StaffKlavar version of the score from columns BA:CZ
  2. then Paste Special > Values to a new spreadsheet columns A:AZ,
  3. Save the new StaffKlavar-only sheet as a comma-separated-values format file (.csv).
  4. Open this file as a document file in a word processor, and further edit it as follows:
  5. Covert comma-semicolon and semicolon-comma pairs to null strings, to remove the excess commas (representing half-spaces) surrounding the note characters.  (This “space” will be occupied by the notehead symbol, whose width equals that of one line and two half-spaces.
  6. Change the font for the staff columns of the file to StaffKlavar1 font.
  7. The document will now look somewhat like a musical score, but with the staff oriented vertically instead of horizontally, as illustrated in the following figure:
Figure 6: Example of StaffKlavar file after word-processor editing is completed and the font is changed.

You can adjust the font size to fill the page, convert to multi-column format if you wish, and add bar lines using the underscore feature of your Word Processor.

If you wish to add additional non-note information to the score, such as measure numbers or chord names, it is most convenient to convert the score in the Word Processor to a table format.  Adding separator columns of special characters to the StaffKlavar spreadsheet before saving the .csv facilitates the “text to table” conversion.  The table format simplifies converting just the notes portion to the new font.  After changing the font, you can convert the table back to text.

Although my example does not illustrate this, one could add additional IF functions, or the more general VLOOKUP, to change the notehead shape or color depending on the staff position.  For example, “official” Klavar notation has noteheads of two different colors: black notes on lines and white notes on spaces.  In the StaffKlavar1 font, to get “white” notes, use the capital letters YUIOP QWERT in place of the “finger numbers” 67890 12345 that give “black” notes. (Note: official Klavar also places white and black notes on opposite sides of the stem. The StaffKlavar1 font does not support this, but in principle a font could be created to support this feature. I have not made this a priority because, for my personal uses, I do not want to consume double the “real estate” on the page by using two rows per note.)

Conclusion:  This process demonstrates that a simple Alternative-Notation score can be produced from a PianoRoll spreadsheet using just global editing operations within spreadsheet and word processing software.

For now, this technique is limited to simple scores.   And surely specialized software could produce the score more efficiently. But if one is exploring variations of notations, it may not be worth the effort to create or customize specialized software for each experiment.   Thus techniques such as these may be useful to investigators attempting to evaluate a range of notations or tweak an individual proposal.  They may also be useful for composers, performers, teachers or students who want to experiment with alternative notations but do not have the resources to acquire or produce specialized software.

If you have suggestions, questions or would like additional details, let me know.

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Using Custom Fonts to Print Simple Sheet Music with Common Software

In a previous post I discussed how I created simplified sheet music with a spreadsheet.
I’ve been able to get an even prettier version using a Word Processor and a custom font that I developed using a free on-line Font system.   The font is StaffKlavar1, a TrueType font that works on Windows and Mac computers. I developed it with FontStruct (http://fontstruct.fontshop.com/ ); you can download the font free from the that site.  Click the links below to see some examples of music created with the font.  Besides the custom font, the only software used to produce these examples was a spreadsheet (MS Excel or Mac Numbers) and a Word Processor (MS Word or Mac Pages).

Example 1: StaffKalvar1 Example: TriCycle Circle-of-Fifths Exercise (15 keys)


Example 2: StaffKlavar1 Example: Minuet2 (excerpt) from Bach’s Anna Magdalena Notebook.

For a fuller discussion of the use and development of StaffKlavar1, see the StaffKlavar1 Documentation: User Guide and Reference.

For a discussion of the Klavar-style notation itself, see my previous post:
http://drtechdaddy.com/2010/08/14/print-easier-to-play-sheet-music-with-common-software/
—-
After struggling with spreadsheet borders in the example from the previous post, it occurred to me that it might be able to create Klavar-style notation with an ordinary word processor. Printing the staff lines vertically would give the necessary control over pitch alignment, if only I had a custom font–especially one with a half-space! Fortunately, I found several inexpensive–even free–font editors on the web. The one I’m using now is FontStruct, and it’s free. It creates True-type fonts with glyphs built from a collection of square tiles subdivided into various geometric black and white patterns such as rectangles, triangles, and arc segments. It allows you to create glyphs that extend outside the character box, so you can get overlapping stems, etc. Details are described more fully in the StaffKlavar1 documentation referenced above.

[Added 9/9/10: Here's an illustration from the document showing how easy it is to build your own character glyphs!]

Using my custom fonts in a just standard text editor, I’ve been able to create various patterns of staff lines (bold, gray or dashed, etc.), solid and hollow noteheads with stems in different directions,  achieve half-width note alignment to a “line” or “space”, include fingering numbers (or note names) within the noteheads, and add markings (staccato, rest) and bar lines.

So far, I’ve used this for short pieces and exercises–basically the pieces from my “Level 3” piano lessons.  This is relatively simple music, but realistically I think beginner/student music may be the best market for “roll-your-own” alternative music notations–it’s when we are first learning that we need the most help with the notation.

I’ve also tried entering a piece as a “piano-roll” spreadsheet and converting that to word-processor format by saving the sheet in “comma-separated value” format. It’s doable, but a bit tedious.  I’m thinking a redesign of the font may make that approach more feasible.  Stay tuned!

Dr. Tech Daddy

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Create Piano Roll Notation with a Spreadsheet

Perhaps the simplest alternative notation for the piano keyboard is  “piano roll” notation,  based on the punched paper rolls that operate the actual keys on player pianos.  In this notation, there is one column for each of the 88 keys on the keyboard (or at least as many as you need for a particular piece).  Duration is represented by the length of the “hole” or mark, using a uniform time scale.

This notation is commonly used in computer software, probably because it’s easy to implement.  Today there are piano tutorial programs available that use this notation, including some free ones:

But I was looking for a printable yet readable notation.  It seems straightforward to use standard spreadsheet software to create the Piano Roll, as in the following example:

Piano Roll Example: Minuet 2:25-32 from Bach’s Anna Magdalena Notebook.

I use a single grand staff, with no extra space between “bass” and “treble” (Left/Right hands).  Columns representing the black keys are shaded gray.  When playing the music, I found it difficult to distinguish the boundaries between the groups of 2 and groups of 3, so I ended up with shading the Db Eb lines differently than the Gb Ab Bb lines.

Noteheads could be entered using any appropriate symbol, such as asterisk or a large bullet from a symbol font.  (Monospace fonts, such as Courier New, work best, with the character aligned to the top center of the cell.)   Since I’m just learning to play, I found fingering numbers useful.  I ended up using the finger numbers as the “noteheads”, putting a finger number on every note.

Since I’m using a single grand staff, and the finger-number noteheads do not have stems, when reading the music I became confused whether “1″ represented the left thumb or the right thumb. So I decided to use different numbers for the two hands, eventually settling on  6 7 8 9 0 for the left hand fingers pinky through thumb.  This matched the left-to-right order of the computer keyboard keys, while preserving the traditional numbering for the right hand, even though it requires “crossing hands” to type it the way you would play it.  (It make a certain mathematical sense also, if you count down from 5, the right-hand pinky, modulo 10).

Bar lines were created with the cell border feature.

I found using a sub-bar level grid line at each “count” improved readability with more than two or three notes per measure.  In this version of piano roll, the notes do not have stems.  It occurs to me that the stems must play a significant role in allowing the eye to determine which notes are to be played at the same time, especially in a notation like 12-position piano roll where the noteheads are more spread out than in traditional notation!

Instead of indicating duration with a long line, as in a physical piano roll,  I used noteheads only at the start of the note (note on), and assumed the note would continue until the next note for that voice/hand.  Otherwise, another symbol was added to indicate continuation or ending the note:
dot – sustain the note while a new note is added
% (rest) – release the note before the next note occurs
caret-dot: <. – staccato: strike and release note immediately

Since my eyesight is not a keen as it once was, I used the largest font size that would fit on the page, 14 point. I was able to get readable, playable “scores” 48 notes long with a four-octave range (full grand staff) on a standard 8.5 x 11 inch page with 1/2 inch margins.  (That’s equivalent to 16 measures of quarter notes in 3/4 time, adequate for beginning songs.)

I’ve created piano roll scores  with Microsoft Excel on a Windows Vista computer and also with Apple Numbers on a Mac running Snow-Leopard.

To create a score, I open a blank spreadsheet, then create the “score paper” by squaring the cells and shading the black note columns. I add horizontal bars for the measures and counts.  Then I add the notes (finger numbers in my case) by click and type.

Some teachers or students may prefer to orient the staff horizontally for playing, to be more consistent with Traditional Notation.  (I’m not sure this is a good idea–two similar notations may confuse the student more than help.) But if you do want horizontal notation, the spreadsheet could be created with “staff spaces” horizontal in the first place. Or,  if your spreadsheet software supports it, you can rotate the characters in the cell 90 degrees.

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Print Easier-to-Play Sheet Music with common software.

When I started playing the piano, I realized that traditional sheet music notation is not a good match to the actual arrangement of the piano keyboard.  Furthermore, when I started learning music, I realized it wasn’t a good match to the actual form and structure of the music either!

So I decided to  make my own easier-to-play sheet music in an alternative  format that does match the keyboard and musical form.  And I’m trying to do it without expensive professional notation software–just using standard spreadsheet and word processing software!  Not that I’m opposed to using score editing software–but I’ve found that even expensive professional versions are limited or difficult to use for the kinds of changes I’d like to make in my sheet music–changes like shape notes, or breaking lines in the middle of a measure, to say nothing of creating 12-position staves or alternative rhythm indications.

Of course, I’m not the only person concerned about these issues. Many folks have been working on it, and are developing professional quality software to produce these alternative notations–see for example the Music Notation Project.

But I also wanted to see what I could do with ordinary software–word processors and spreadsheets.  In this blog, I’ll discuss some things I’ve tried, and I invite your comments.

I stumbled upon a notation called KlavarSkribo, [see links page for more references] which uses a staff with 12 positions per octave–5 lines for black notes and 7 spaces for white notes, in the same order as the piano keyboard:  _|_|__|_|_|_  , with the lines running vertically down the page.  Black notes (Bb, etc.) are always represented by black noteheads which always appear above the stem, while white notes (C, etc.) are represented by hollow (white) noteheads appearing below the stem; there are never collisions.  Although an extensive library of music is already printed in this notation and available from its publishers, I wanted to be able to create my own.  It seemed it would be easy to do with a word processor, if only I had a font with noteheads, and a half-character-width space to align alternate lines of noteheads one half space apart.

It would be even easier to use a traditional piano roll notation, which I could do with a spreadsheet.

I ended up making several modifications to KlavarSkribo to make it amenable to my tools.   I’ll be discussing these in more detail in subsequent posts, but for now I’ll just show the result of my first attempt: a “circle of fifths” exercise coded entirely with MS Excel:


Klavar Excel version Circle-of-Fifths Exercise

This musical example modulates through the Major and Dominant Seventh chords in 15 different keys, C# to Cb, all around the Circle of Fifths–imagine reading that in conventional notation!

The notation shows a five-octave staff with lines for the black notes and spaces for the white notes. Each horizontal row represents one chord. You can play it vertically, as is, or turn the page sideways so it looks more like the conventional staff. Either way, the symmetry of the exercise jumps out at you. And when playing, you don’t have to remember what notes need to be sharp or flat, or what color Fb is.

I created this with the Microsoft Excel spreadsheet program; you can get a similar effect with Mac Numbers. Staff lines, bar lines, and noteheads were all created using the cell border feature. (I didn’t use stems for this exercise, but they could also be added with a suitable style border line, leaving appropriate space between notes.) Noteheads are formed by outlining a block of 4 spreadsheet cells; this allows a single notehead to be aligned to either a line or a space of the staff. And the full text character set is available for other markings as needed, although I’d need to make keyboard substitutions for some specialized symbols.  It’s a bit tedious to create a score, but feasible if you create the staff first, then add the notes with generous use of copy and paste.

I should point out that KlavarSkribo does not use note color or flags to represent duration, which greatly simplifies the requirements for this notation. Duration corresponds to distance on the staff, which is marked in equal-time increments. A tone is sustained until the next note is occurs, unless over-ridden by a continuation or stop symbol (neither of which is illustrated in this example).

When playing, at first I found it difficult to distinguish between 2-line and 3-line groups, so I tried various shading patterns.  In this example, I shaded the area behind the  Gb Ab Bb lines–this divides the keyboard into symmetric groups of three white keys C D E  surrounding two black Db Eb, and three black keys Gb Ab Bb, surrounding two white G A, with “split color” keys F and B separating the two groups.

For a further refinement, I could add finger numbers inside the boxes, and stems to distinguish left and right hand parts–but that will have to wait for a later post.

Let me know what you think of it.

Dr. Tech Daddy

Posted in Music, Non-Traditional Notation Editor | Leave a comment

Learning Music with help from Computers — Blog Intro

Learning Music — with the Help of Computers

Welcome to my first attempt at a blog.  I’m starting with my experiences using computers to help me learn to  play music, particularly a keyboard instrument such as the piano. Ultimately, I want to be able to play “music”, not just “notes”.  I think this means:

  • train my ears to hear the musical rhythm, melody, harmony, and form
  • train my fingers to play what I “hear”
  • improve notation to better match the musical structure and the keyboard structure
  • train my eyes to hear and play what I see
  • improve the instrument to make it easier to play

I’ll be exploring the use of computer hardware, software, and MIDI to help with these tasks. I’ll be using a Roland MIDI piano, a Yamaha keyboard, both Windows and MAC laptops, and an iPad.

[Since I'm brand new at blogging, these first posts may be somewhat primitive.  I'm hoping to add photos, documents, and midi file examples as my blogging skills improve. ]

Posted in Music | Leave a comment