Joe Austin:
> I am offering to help with the project of converting midi2ly from
> C to Python, or more generally converting MIDI to Lilypond.
...

midi2ly is part python and part c, you can find them in git repo.:
 scripts/midi2ly.py
 python/midi.c
 
midi2ly has been in the repository since 2001 according to logs.

If external dependances are ok, you can find midi support for python
below the header "MIDI Mania" in

 https://wiki.python.org/moin/PythonInMusic

https://github.com/vishnubob/python-midi can possible be of help.

///

Midi file spec. are available at:

http://www.music.mcgill.ca/~ich/classes/mumt306/midiformat.pdf
https://www.midi.org/specifications/item/standard-midi-files-smf

The midi-file spec. and RP-017 could be of help.

///

If you are interested, I'm working on a similar tool, in perl though:

 http://turkos.aspodata.se/git/musik/bin/miditoly.pl

I'm using perls midi module https://metacpan.org/pod/MIDI, a simple
midi dump program is available at

 http://turkos.aspodata.se/git/musik/bin/midi.pl

///

I have just started writing a paper to discuss implementions and
huristics in the conversion:

 http://turkos.aspodata.se/git/musik/bin/midi_to_lilypond.tex

I'd be happy if you want to contribute to that paper and any possible
developments around midi -> lilypond in any programming language.

From the top of my head, on my wishful agenda is:

 collect midi files generated from different notation programs together 
   with pdf outputs from same programs

 examine and establish huristics how to identify lyrics character 
   encodings

 try to reserach and define a few conventions on how the lilypond code
   should be written and structured and write a output module/function
   for each convention
   e.g. relative and absolute pich output, names of music variables
   to match the users preferences

 research how polyfonic settings are written to midi file, how do you
   identify voices from a track with multiple voices

 research and define huristics to guess voice and instrument names

 support note scaling, i.e. duble, half note values and such

among other things.

Regards,
/Karl Hammar

-----------------------------------------------------------------------
Aspö Data
Lilla Aspö 148
S-742 94 Östhammar
Sweden
+46 173 140 57



_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to