# HG changeset patch # User wim # Date 1590405119 -7200 # Node ID b89a27b9bd9ef56f706776497cd7ac22f8035d54 # Parent 775a1d0d3be6f28def37deb571e7139358c16cc3 - add readme diff -r 775a1d0d3be6 -r b89a27b9bd9e README.md --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.md Mon May 25 13:11:59 2020 +0200 @@ -0,0 +1,58 @@ +### Chordal Analysis + +*xmlChordAna* is a python script that makes a chordal analysis of a MusicXML file. +It is used as from the command line as follows: + + > ./xmlChordAna.py scorefile.xml + +The output is printed on *stdout* and looks like this: + + File: bwv539p_arr.xml, ticks per quarternote: 384 + 342 note groups, 102 chord segments + Key: Am, confidence: 33% + ---- chord Dmin, score: 90% + 0 D3, D4, F4, A4 + 2 D3, F4, A4, D5 + 2 1/2 F4, A4, D5, D3 + 3 F4, A4, D5, C#3 + 3 1/2 F4, A4, D5, D3 + ---- chord Ehdim, score: 75% + 4 D5, E3, E4, G4 + ---- chord C#hdim, score: 92% + 5 E3, E4, G4, C#5 + 5 1/2 E3, E4, G4, B4 + 6 E3, E4, G4, C#5 + 6 1/2 E4, G4, C#5, E3 + 7 E4, G4, C#5, D3 + 7 1/2 E4, G4, C#5, E3 + +See [this explanation][1] for more info. + +[1]: https://wim.vree.org/keys09/uitleg.html + +*xml2b40* is a python script to convert a MusicXML file to a list of B40 events. +It is invoked from the command line as follows: + + > ./xml2b40.py -t 384 scorefile.xml + +and produces the following output: + + 0 129 + 0 169 + 0 180 + 0 192 + 768 -192 + 768 -169 + 768 192 + 768 209 + 960 -129 + 960 129 + 1152 -129 + 1152 124 + 1344 -124 + 1344 129 + 1536 -192 + 1536 -180 + ... + +Each line contains two numbers: the time and a B40 note. \ No newline at end of file