I'm working on a project where I have hundreds of MIDI files. I'm using the MIDI Event List view in Reaper, which is how I am seeing if these are GM standard files with pgm change (Reaper calls these events PC - not sure if that's typical) to tell me what instrument each track/channel has. Its a bit time consuming.
I recall that in the old days we used to associate certain tracks or channels with certain instruments. For instance, just like Channel 10 is often used for percussion, as i recall we had a particular channel or track that we would use - I think I used to put keyboards on channel 1, and maybe bass on 2 or 3. (MIDI format 1, so I'm not sure, can't recall the specifics).
I was wondering what the chances are that some of the files I've got here, that have 8 or more tracks/channels, are using some common arrangement of channels for certain instruments. Are there some commonly used schemes?
I have a lot of hundreds of midi files here, and I've never seen any hint of anything like this. Apart from the general use of Ch 10 for percussion, but note that there are files that use other channels AS WELL as 10.
I would not expect to see any such standard, unless there was a group of files created by the same person, who for personal taste chose to organise things that way.
'PC' is a very commonly used abbreviation for 'Program Change' in the context of midi data.
Please note that you should not assume that a given midi file has a single channel assigned to a specific instrument. I have many midi files with multiple PC events within a single channel, the same file may well have some channels which are assigned to a single instrument ONLY.
A long time ago I wrote a small prog which reads through a midi file and presents a table of tracks/channels etc, this included showing PC events (although showing midi data only, no translation to actual instrument names). Of course this got complicated where there were multiple PC events in a track. I think that the prog (C source) worked for a given midi file ONLY, but it could be modified to process files in bulk. Maybe a lot more help than trying to do this file-by-file with something like Reaper??
Geoff