lilypond-0.1.32
[lilypond.git] / mi2mu / TODO
blobe5221769554046fdbae1a4416b2f52a10f172a0a
1 # mi2mu/TODO
3 Most of the items are marked in the code as well, with full explanation. 
4 grep for TODO and ugh/ugr
7 IMPORTANT
9         * get rid of (last few?) midi-specifics in mudela-*
11         * find / remove trend (tempo) of mudela columns
13         * get rid of Duration_* statics
15         * junk one in list vs. array
17         * add mi2mu example output (.midi.ly and .gif) to website
19         * important? lily is important, go work on lily!
21         * faq about mi2mu midi t1. ?
23 PROJECTS
25         * write something interesting in mi2mu manual page
27         * check/use type 0 / 1 / 2 of midi file
29         * create Indentable_stream (see Tex_stream) as base for Lily_stream
31         * use dynamic info
33         * use aftertouch info (to guess slurs/ties, scripts (staccato?))
35         * lyric events
37         * parse all midi events
39         * handle time based midi files
41         * use dstream feature from lily
43         * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
45         * read unsigned words as U16 (not as I16)
47         * check use of integral and unsigned in lexer
48         
49         * get rid of ugly statics in Duration_convert
51         * change option double-dots to max-dots
53         * set Key, Meter, ... command line options
55 BUGS
57         * output of 0 duration c'0
59         * array memleaks(?): use Link_array / create Pointer_array? 
61         * fix "#undef MEVENT_LIST" source tree: Array<Midi_event*> 
63         * split notes that cross bar limit
65 FUTURE
67         * guess plets (i.e.: only use plet-duration *2/3 if there's a 
68           whole plet)
70         * merge midi-events with lily's midi-items?
72         * guess beams
74         * guess / follow tempo changes
76         * check out NIFF / analogies?
78         * steal good ideas of other gpl midi parsers
80         * lily: add mudela info into midi as specials
81           mi2mu: use special info