# mi2mu/TODO Most of the items are marked in the code as well, with full explanation. grep for TODO and ugh/ugr IMPORTANT * if multiple channels per track: output each to separate voice * get rid of (last few?) midi-specifics in mudela-* * find / remove trend (tempo) of mudela columns * get rid of Duration_* statics * junk one in list vs. array * add mi2mu example output (.midi.ly and .gif) to website * important? lily is important, go work on lily! * faq about mi2mu midi t1. ? PROJECTS * write something interesting in mi2mu manual page * check/use type 0 / 1 / 2 of midi file * create Indentable_stream (see Tex_stream) as base for Lily_stream * use dynamic info * use aftertouch info (to guess slurs/ties, scripts (staccato?)) * lyric events * parse all midi events * handle time based midi files * use dstream feature from lily * midi esp.: use I32 iso int where 32 bits are needed (or assumed...) * read unsigned words as U16 (not as I16) * check use of integral and unsigned in lexer * get rid of ugly statics in Duration_convert * change option double-dots to max-dots * set Key, Meter, ... command line options BUGS * output of 0 duration c'0 * array memleaks(?): use Link_array / create Pointer_array? * fix "#undef MEVENT_LIST" source tree: Array * split notes that cross bar limit FUTURE * guess plets (i.e.: only use plet-duration *2/3 if there's a whole plet) * merge midi-events with lily's midi-items? * guess beams * guess / follow tempo changes * check out NIFF / analogies? * steal good ideas of other gpl midi parsers * lily: add mudela info into midi as specials mi2mu: use special info