Music 253 Humdrum homework

From CCARH Wiki
Revision as of 18:41, 3 March 2016 by Craig (talk | contribs)
Jump to navigation Jump to search

Do some vocal-range analysis of J.S. Bach chorales.

See Getting started with Humdrum to access the Humdrum Tools.

You can download the Bach chorales by doing these commands in a terminal

     mkdir chorales
     cd chorales
     humsplit h://chorales

To see a list of the chorales:

     ls

or with more detail such as the size of the files:

     ls -asF


Question 1

Use the Humdrum Extras programs 'extractx' and 'prange' to calculate the number of notes each voice plays on each twelve-tone pitch in chor001.krn. Plot the pitch range data as a histogram for each voice in a plotting program of your choice.


Here is how to extract the first part from a file:

    extractx -f 1 chor001.krn

Or to explicitly extract by instrument name:

    extractx -g Bass chor001.krn


The output can either be saved to a file, and then processed with prange, or the data can be sent directly to prange:

    extractx -f 1 chor001.krn | prange

Question 2

Try the “– –score” option for prange to generate SCORE display of pitch range histograms for each voice in chor001.krn. Print the SCORE output from prange for chor001.krn and a composite of all chorales.

    humcat chor001.krn | prange --score > chor001.pmx

Load the choral.pmx file into SCORE with the command:

    RE chor001.pmx


Question 3

Calculate and plot pitch histograms for each voice (soprano, alto, tenor, bass) in all 370 chorales. One histogram for each voice (not one for each chorale).

Extract all notes from all chorales like this (for Bass part):

   extractx -f 1 chor*.krn | prange


Question 4

Based on the data/plots from question 3, what is the maximum and minimum pitch for each part in all of the chorales?




(5) What is the average twelve-tone pitch by each voice. What is the +/– 1 standard deviation range for each voice?