Ordering of drum instruments in idf?

MusE is a DAW for Linux with both MIDI and Audio editing. https://muse-sequencer.github.io

Moderators: MattKingUSA, khz, spamatica

Post Reply
User avatar
Impostor
Established Member
Posts: 1392
Joined: Wed Aug 17, 2022 1:55 pm
Has thanked: 148 times
Been thanked: 366 times

Ordering of drum instruments in idf?

Post by Impostor »

Is it possible to specify a drumkit's ordering in its .idf file? It defaults to ordering by note number in the drumtrack editor window. I'd prefer all instruments be grouped together regardless of their note numbers. First all kicks, then snare hits, etc....(I'm creating an idf for https://versilian-studios.com/virtuosity-drums/, and the instruments are dispersed all over the keyboard range.)

Tim E. Real
Established Member
Posts: 669
Joined: Sat Sep 15, 2012 12:36 am
Has thanked: 40 times
Been thanked: 110 times

Re: Ordering of drum instruments in idf?

Post by Tim E. Real »

Hi. Sorry for the late reply.

There are supposed to be two ways to order a drum map.
One is per-song, where you simply drag the drum map items around in the song,
and it will be stored that way and reloaded that way the next time the song is loaded.
This works and tests OK.

But as for actually ordering them in the instrument itself, well, I did some testing.
In our Instrument Editor, in the tab 'drummaps' you can drag the items around but unfortunately
there is no code to actually handle the drop. Thus nothing happens when dropped.

However, I tested manually altering the instrument file itself, and it seems to work.
For example, I edited the 'XG' instrument file.
Here is what part of the drum map looks like normally:

Code: Select all

    
<Drummaps> <entry> <patch_collection prog="0" hbank="127" /> <drummap> <entry pitch="13"> <name>Mute Surdo</name> </entry> <entry pitch="14"> <name>Open Surdo</name> </entry> <entry pitch="15"> <name>High Q</name> </entry> <entry pitch="16"> <name>Whip Slap</name> </entry> <entry pitch="17"> <name>Scratch Push</name> </entry> <entry pitch="18"> <name>Scratch Pull</name> </entry>

I tested by altering some of the entries, and actually they do accept all of the available tags, like this:

Code: Select all

   
<Drummaps> <entry> <patch_collection prog="0" hbank="127" /> <drummap> <entry pitch="11"> <name>Scratch Pull</name> <enote>18</enote> <anote>18</anote> </entry> <entry pitch="12"> <name>Finger Snap</name> <enote>19</enote> <anote>19</anote> </entry> <entry pitch="13"> <name>Mute Surdo</name> </entry> <entry pitch="14"> <name>Open Surdo</name> </entry> <entry pitch="15"> <name>High Q</name> </entry> <entry pitch="16"> <name>Whip Slap</name> </entry> <entry pitch="17"> <name>Scratch Push</name> </entry> <entry pitch="20"> <name>Click Noise</name> </entry>

Notice what I did there: I moved the 'Scratch Pull' and 'Finger Snap' entries,
and altered their 'pitch' attributes so that they appear at those locations in the map.

But this alone is not sufficient.
The map will assume that in the absence of any other tags, the 'pitch' alone will determine the 'enote' and 'anote' values.
Thus the two new altered entries do appear in the correct location in the map, but their 'enote' and 'anote' values
will have changed to (incorrect) values reflecting their 'pitch' position in the map, in the absence of any other tags.

What must be done is that, in this example, the 'enote' and/or 'anote' tags must be specifically supplied
if they are to be preserved with their original values and not automatically altered by the new 'pitch' value.

Thus when I load this new edited map, 'Scratch Pull' and 'Finger Snap' appear at locations 11 and 12,
and their 'enote' and 'anote' values are 18 and 19, which are the correct original values from when the entries
were previously at locations 18 and 19 in the map.

All the other tags for drum maps can also be entered there.
Here are all the accepted tag names:
name
enote
anote
vol
quant
len
channel
port
lv1
lv2
lv3
lv4

So... It seems that our Instrument Editor was not completed.
It seems that we should be able to drag and drop the drum map entries, just like in the song's Drum Editor,
and I have now demonstrated that it should be possible, and the extra tags are recognized and accepted.

[ PS ]
I am still here, still coding, I am currently heavily working on a MusE github branch "fix_linux_vst_params".
You can take a look to see what I'm doing. It's a mess but should actually run, if perhaps incorrectly in some areas.
As usual, I ended up fixing waaay more than the branch title implies. Stay tuned for an annual "Spring fixes", I suppose. :wink:

User avatar
Impostor
Established Member
Posts: 1392
Joined: Wed Aug 17, 2022 1:55 pm
Has thanked: 148 times
Been thanked: 366 times

Re: Ordering of drum instruments in idf?

Post by Impostor »

Tim E. Real wrote: Sun Mar 03, 2024 6:39 pm

Here are all the accepted tag names:
name
enote
anote

Thanks! Adjusting enote/anote did the trick.

Tim E. Real wrote: Sun Mar 03, 2024 6:39 pm

I am still here, still coding, I am currently heavily working on a MusE github branch "fix_linux_vst_params".
You can take a look to see what I'm doing. It's a mess but should actually run, if perhaps incorrectly in some areas.
As usual, I ended up fixing waaay more than the branch title implies. Stay tuned for an annual "Spring fixes", I suppose. :wink:

Wonderful, I'll be checking it out!

Post Reply