On 15-05-13 10:36 AM, midi-pascal wrote: > On 15-05-13 04:13 AM, Raine M. Ekman wrote: >> Quoting midi-pascal <midi-pas...@videotron.ca>: >> >>> There is a problem when importing some MIDI files: >>> If MIDI events notes are short, i.e. as in a drums track (~ 3 ticks) >>> they are not imported at all. >>> They do not make any sound and do not appear in the piano roll view either. >>> >>> I will try to figure what the problem is since I have a full debug build >>> at hand (Ubuntu 12.04). >> This PR should fix it: https://github.com/LMMS/lmms/pull/2006 >> > Applied this PR. > The good news is the short notes issue is solved! > > The idea of naming the imported tracks and CC is a very nice feature too! > However the tracks name import does not work as expected: > The tracks are named Track 1, Track2... Track n, even if they have a > name in the original MIDI file. > > This issue comes from two minor bugs: > In MidiImport.cpp, the condition: > if( attr == "tracknames" && evt->get_update_type() == 'a' ) { > should be: > if( attr == "tracknames" && evt->get_update_type() == 's' ) { > since the track name is a string, and > trackName = evt->get_atom_value(); > should be: > trackName = evt->get_string_value(); > > But in allegro.cpp, the function get_string_value() has a bug since it > returns the name of the event ("Trackname") instead of its contents. > In get_string_value(), the line: > return update->parameter.attr_name(); > should be: > return update->parameter.a; > > I fixed these two functions and the result is now what was expected. > The tracks are now displayed with their orginal name and the automation > tracks have the same name > For example, a drums track and its automations now display as: > Drums > Drums CC 7 > Drums CC 10 > > This feature could be enhanced a bit for the standard MIDI controls, > i.e. "CC 7" could be displayed as "Volume" , "CC 10" as "Panning" etc. > like in the automation editor window title. > This would make tracks more readable since not everyone can remember > which CC number correspond to which MIDI control. > > Regards, > midi-pascal > > > ------------------------------------------------------------------------------ > One dashboard for servers and applications across Physical-Virtual-Cloud > Widest out-of-the-box monitoring support with 50+ applications > Performance metrics, stats and reports that give you Actionable Insights > Deep dive visibility with transaction tracing using APM Insight. > http://ad.doubleclick.net/ddm/clk/290420510;117567292;y > _______________________________________________ > LMMS-devel mailing list > LMMS-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/lmms-devel > I forgot to mention that the fixes I did in MidiImport.cpp and and allegro.cpp cannot have any side effect since the function get_string_value() is not used anywhere else in lmms.
------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ LMMS-devel mailing list LMMS-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lmms-devel