-
Notifications
You must be signed in to change notification settings - Fork 20
Description
Selecting the instrument of a track is usually done by adding a program change event to the track which describes when to change and what instrument to use.
This, however, is not the case when dealing with drums. The MIDI convention is that notes to be rendered as drums have to be on the channel 10.
I propose to add an internal attribute to the MIDITrack structure that describes the channel to be used when calling the addnotes! function. That way the notes would be directly send to the drum channel without having to modify them.
Then, the constructor of MIDITrack could be modified to accept an instrument argument in order to add the correct program change event or update the channel attribute of the track so that the instrument of the MIDI track is correct upon synthesis.
What do you think ?