Humdrum - Introduction •What is Humdrum? •A set of general-purpose music software tools, but free •Encode, manipulate, and output a wide variety of musically-pertinent representations, created by Prof. David Huron •Platform: •Designed for UNIX, but cross-platform now. •Humdrum Toolkit: more than 60 inter-related software tools •15% in C, 15% in kornshell, 2% in LEX lexical parser and YACC •Most written in AWK (a fast prototyping language). •Humdrum Syntax: ASCII (text) data •Currently roughly 10,000 encoded works consistent with the Humdrum syntax -- most in the **kern representation. Where to access Humdrum? •Music encoded in Humdrum: CCARH •CCARH (The Center for Computer Assisted Research in the Humanities) •Founded in 1984, has encoded large databases of musical score information, current Director: Walter B. Hewlett •engaged in the development of large databases of musical and textual materials for applications in research, teaching, and performance. •MuseData (TM) databases •: represent a major resource for music research. •Availability: •J.S. Bach, Chorale Harmonizations •J.S. Bach, Brandenburg Concertos (Bach Gesellschaft edition) •Archangelo Corelli, Trio Sonatas •Antonio Vivaldi, Violin Concertos (including The Four Seasons) •Essen Folk melody collection (more than 6,000 European folksongs) •Who is using Humdrum •Classifying Musical Textures: •Complexity in Hadyn String Quartets Manipulation with Humdrum •Visual display •Aural display •Searching •Counting •Editing •Transforming between representations •Classifying, Comparison, Capturing Data … •Example: How many notes are there in chorale harmonization No. 179 (BWV 432) by J.S. Bach? COMMAND: ANSWER: census -k bwv0432 (<= filename) 181 **kern Representation •General: •Staff Lining: *|.|||| four-line staff •Staff Position: *staff1 top-most staff in the system •Clefs: *clefG2 treble clef •Key signature:[*k] *G: •Comments: G Major ! •Pitch Representation: •Pitch: c •Octave transposition: Middle C *8va notes sound an octave higher •Representation of Duration and Accent: •Meter signature: *M2/4 two quarters per bar •Duration[2,4,8,…] •Bar Lines[=] •Tempo[*MM], e.g., *MM76 •Stem Direction [/, \], e.g., / = up-stem **kern Example Sequential events Concurrent attributes **kern *clefG2 *k[] *M2/4 8c 16c 16e = 8g 8g 8a 8a = Code type Treble clef Key signature Meter, two quarters per bar Do (eighth) Do (sixteenth) Mi (sixteenth) Bar line Sol (eighth) Sol (eighth) La (eighth) La (eighth) Bar line Extension Tools •Most of the tools were written by Craig Stuart Sapp •Graphical viewing •Harmonic analysis •Melodic analysis •Rhythmic analysis •Representation, Manipulation •Data conversion tools •Play-back/MIDI tools •Non-Western music tools http://www.ccarh.org/software/humdrum/museinfo/