Humdrum Extras

Humdrum file processing programs written in C++. For general instructions on downloading and using pre-compiled programs click here. For announcements and questions, subscribe to **HUG (Humdrum User Group).

Commands by category:

general: barnum, extractx, humcat, humpdf, mvspine, myank, ridx, serialize, thrux
rhythm/time: beat, gettime, minrhy, rcheck, rscale, sample, scordur, swing, time2tempo
pitch: pitchmix, prange, transpose
melodic: scaletype
harmony: chorck, harm2kern, keycor, lofcog, mkeyscape, sonority, tntype, tsroot
notation: hum2abc, hum2muse, humtable, satb2gs
graphical: mkeyscape, proll
searching: hgrep, simil, thememakerx, tindex, themax, theloc
statistics: zscores
data entry: autodynam, autostem, barnum, blank, minrhy, ottava, prettystar, tiefix
MIDI: humplay, hum2mid.
data into Humdrum: mid2hum, pae2kern, xml2hum
data out of Humdrum: hum2abc, hum2muse, hum2gmn, hum2mid, hum2xml, kern2cmn, kern2dm, kern2melisma, kern2skini, notearray, time2matlab
data debugging: rcheck, spinetrace

Command executables:

autodynam: Terminate cresc. and decresc. wedges in **dynam spines.
description
examples
program:
15 Feb 2011
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
autostem: Add stem directions onto **kern notes.
description
examples
program:
7 Feb 2011
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
barnum: Number, renumber, or remove barline numbers in Humdrum files.
description
examples
program:
9 Sep 2004
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
beat: Extract/search composite rhythm/duration information from **kern scores.
description
examples
program:
19 May 2010
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
chorck: Check for didactic errors in four-part choral textures.
description
examples
program:
12 Jun 2009
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
dittox: Resolve null token references.
description
program:
21 Apr 2013
linux/i386
21 Apr 2013
extractx: Select spines from Humdrum input.
description
examples
program:
6 Apr 2013
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
gettime: Create an absloute timing spine to indicate the playing time of **kern data.
description
examples
program:
9 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
harm2kern: Convert **harm data into **kern data.
description
examples
program:
2 May 2010
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
hgrep: Humdrum-aware grep.
description
examples
program:
6 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
hum2abc: Convert to ABC+ data for graphical music printing with abcm2ps.
description
examples
program:
14 Dec 2012
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
hum2gmn: Convert Humdrum data into Guido Music Notation.
description
examples
program:
24 Jun 2009
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
hum2mid: Convert Humdrum files into standard MIDI files.
description
program:
16 Oct 2012
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
hum2muse: Convert Humdrum files into MuseData.
description
examples
program:
21 Aug 2012
linux/i386
8 May 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
June 2 2010
hum2xml: Convert Humdrum files into MusicXML files.
description
examples
program:
26 Jun 2012
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
humcat: Concatenate Humdrum files with similar spine structures.
description
program:
13 Dec 2012
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
humpdf: Embed Humdrum files into a PDF file.
description
program:
6 May 2010
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
humplay: Play Humdrum files interactivly with MIDI.
description
program:
24 Mar 2011
osx/i386
9 Nov 2010
windows
2 Apr 2010
humsplit: Calculate standard scores of numerical data spines.
description
program:
13 Dec 2012
linux/i386
8 May 2013
humtable: Markup Humdrum files in an HTML <table> element.
description
program:
27 Mar 2011
linux/i386
13 Dec 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
kern2cmn: Convert **kern data into CMN data.
description
examples
program:
4 May 2001
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
kern2dm: Convert **kerndata into input data for Director musices.
description
examples
program:
28 Apr 2001
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
kern2melisma: Convert **kern data into input data for the Melisma Music Analyzer.
description
examples
program:
13 Dec 2000
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
kern2skini: Convert **kern data into SKINI data for STK.
description
examples
program:
12 Jun 2009
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
keycor: Correlation identification of keys in musical contexts.
description
examples
program:
21 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
lofcog: Line of fifths center of gravity measurements.
description
examples
program:
20 Nov 2003
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
mid2hum: Convert MIDI files into Humdrum data.
description
program:
6 Jan 2011
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
March 5 2004
minrhy: Find the minimum rhythmic unit in **kern data.
description
examples
program:
15 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
mkeyscape: Generate keyscapes from MIDI files or Humdrum **kern data.
description
program:
21 Oct 2012
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
motive: Analysis tool for automatic identification of motives in monophonic music or polyphonic music with monophonic parts.
description
program:
31 Oct 2010
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
mvspine: Re-organize the spine ordering of a Humdrum file.
description
examples
program:
15 Nov 2001
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
myank: Extract selected measures from a Humdrum score.
description
examples
program:
1 Apr 2013
linux/i386
3 May 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
notearray: Extract 2-D array of notes from **kern spines for numeric analysis.
description
examples
program:
20 Oct 2011
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
ottava: Convert between sounding and printed ottava marks in **kern data.
description
examples
program:
25 Oct 2004
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
pae2kern: Convert Plaine & Easie code into **kern musical data.
description
examples
program:
2 Dec 2008
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
pitchmix: Randomly reorder the pitches in **kern spines, keep rhythms unchanged.
description
examples
program:
1 May 2002
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
prange: Generate pitch histogram data from **kern input data.
description
examples
program:
30 Mar 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
prettystar: Sort and organize tandem interpretations across multiple spines.
description
program:
15 Jun 2012
linux/i386
13 Dec 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
proll: Convert **kern data into graphical piano roll notation.
description
program:
27 Feb 2011
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
rcheck: Print rythmic information for a Humdrum file.
description
examples
program:
19 Dec 2000
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
ridx: Remove different categories of Humdrum line types.
description
examples
program:
1 Apr 2013
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
rscale: Scale the rhythms in **kern and **recip representations.
description
examples
program:
7 Jan 2011
linux/i386
13 Dec 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
sample: Sample the musical texture with the given rhythmic cycle.
description
examples
program:
5 Dec 2000
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
satb2gs: Convert SATB staves into a grand-staff arrangement.
description
program:
6 Feb 2011
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
scaletype: Categorizes **kern data as pentatonic, hexatonic, or heptatonic.
description
examples
program:
6 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
scordur: Measure the duration of a Humdrum file containing **kern data.
description
examples
program:
23 Oct 2000
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
October 23 2000
serialize: Rearrange multiple input spines into a single spine sequence.
description
examples
program:
1 Apr 2013
linux/i386
16 Apr 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
simil: Edit-distance similarity measurements.
description
program:
8 Dec 2009
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
sonority: Identify vertical chordal sonority across multiple **kern spines.
description
examples
program:
16 Mar 2011
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
spinetrace: Print spine parsing data to check for spine path errors.
description
examples
program:
16 Oct 2000
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
October 15 2000
swing: Create a **time spine which "swings" the eighth-note rhythmic levels.
description
examples
program:
15 Apr 2002
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
theloc: Identify note locations within Humdrum files from themax search results.
description
program:
24 Feb 2011
linux/i386
7 Apr 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
themax: Search melodic index data created by tindex from **kern data
description
program:
17 Jan 2011
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
thememakerx: Generate incipts of music for input to thememakerx.
description
program:
27 May 2009
linux/i386
28 Jun 2012
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
thrux: Expand repeated material in Humdrum files.
description
examples
program:
9 Apr 2013
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
tiefix: Fix tied-note syntax in **kern data.
description
examples
program:
7 Sep 2004
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
time2matlab: Convert a **kern score with performance timing into a matlab array.
description
examples
program:
13 Dec 2005
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
time2tempo: Convert a **time spine into a **tempo spine.
description
examples
program:
3 Jun 2006
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
tindex: Create melodic search indexes from **kern data for use with the themax search engine.
description
examples
program:
7 Apr 2013
linux/i386
8 May 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
tntype: Extract set-theory Tn types from **kern sonorities in Humdrum files.
description
program:
16 Apr 2013
linux/i386
16 Apr 2013
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
transpose: Transpose musical pitch names in **kern data.
description
examples
program:
19 Nov 2009
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
tsroot: Analyze the harmony of **kern data using the Melisma Music Analyzer.
description
examples
program:
24 Jun 2009
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012
xml2hum: Convert MusicXML files into Humdrum files.
description
examples
program:
26 Jun 2010
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
March 10 2004
zscores: Calculate standard scores of numerical data spines.
description
examples
program:
13 Jan 2008
linux/i386
28 Jun 2012
osx/ppc
13 May 2009
osx/i386
28 Jun 2012
osx/x64
28 Jun 2012
windows
29 Jun 2012