README.md
author wim
Mon, 25 May 2020 13:11:59 +0200
changeset 3 b89a27b9bd9e
child 4 319d42cc33d8
permissions -rw-r--r--
- add readme

### 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.