Hi,
I am working on a tool able to generate a draft LMMS project/file from a simple text file as source for percussive instruments.
So i was compelled to study LMMS file formats and i simply have 2 remarks :
the XML structure is a bit weird :
* all patterns (<pattern> elements) are defined in the first song track (<track type="1" ...>).
-> they should either go in a special XML section, or, more logically, each song track should host its own patterns
* <pattern> elements get a position attribute ("pos"), it is nether used, which is logical, as patterns all start at position 0 by default (and when used, translated to a real position, yes / but this occurs in <bbtco ...> elements.
So the "pos" attribute in <pattern> should be discarded.
* pattern vs instrument orders :
<pattern..> are not ordered by ids, or instrument_ids (are are defined outside <instrumenttrack ...> sections.
An implicit order (song tracks) is used, which is not very sane/solid ...
Maybe on some occasion of a new release, the XML format could be rationalized to address those oddities
and also each tracks so use its own selection of instruments (so far, all instruments are displayed in all tracks).
Well dont worry, these are mere suggestions to purify to LMMS file format, this is not of critical level
but i think making it more clean will help current and future LMMS developers
yes
best regard
phi
I am working on a tool able to generate a draft LMMS project/file from a simple text file as source for percussive instruments.
So i was compelled to study LMMS file formats and i simply have 2 remarks :
the XML structure is a bit weird :
* all patterns (<pattern> elements) are defined in the first song track (<track type="1" ...>).
-> they should either go in a special XML section, or, more logically, each song track should host its own patterns
* <pattern> elements get a position attribute ("pos"), it is nether used, which is logical, as patterns all start at position 0 by default (and when used, translated to a real position, yes / but this occurs in <bbtco ...> elements.
So the "pos" attribute in <pattern> should be discarded.
* pattern vs instrument orders :
<pattern..> are not ordered by ids, or instrument_ids (are are defined outside <instrumenttrack ...> sections.
An implicit order (song tracks) is used, which is not very sane/solid ...
Maybe on some occasion of a new release, the XML format could be rationalized to address those oddities
and also each tracks so use its own selection of instruments (so far, all instruments are displayed in all tracks).
Well dont worry, these are mere suggestions to purify to LMMS file format, this is not of critical level
but i think making it more clean will help current and future LMMS developers
yes
best regard
phi