johentsch / ms3

A parser for annotated MuseScore 3 files.
https://ms3.readthedocs.io
GNU General Public License v3.0
41 stars 3 forks source link

Adds conversion of DCML harmony labels to Dezrann format #102

Open johentsch opened 12 months ago

johentsch commented 12 months ago

As laid out in #47. This is a rebased version of the dezrann branch which has been deleted. Many thanks to @pythouille!

johentsch commented 11 months ago

Hi @pythouille, I'm under the impression that the measure_map.py file might not be needed within ms3 anymore. With the MeasureMap object that we're currently drafting it should be a no-brainer to create it from a ms3 measures TSV and then output it as JSON from there compressed or uncompressed etc.

I think a more systematic way for including the two conversions (to .dez and to .mm.json) would be to ditch the idea of making them independent from ms3 and to include them as additional options to the ms3 transform commandline tool. Then we can include the measuremaps code as a submodule and avoid duplicating too much. That also conforms better to our idea that the compression algorithm should live at one particular place only.

There is a draft of a simplified compression algorithm that simply compares a MM entry with the expected default generated from the previous entry (in other words, correctly reconstructing it in the first place is the guarantee that it can be omitted).

Do you agree with these things? Would you mind comparing the rules constructed over there in the function make_default_successor() with your code here and report/commit if you feel changes are due?