[rec.music.synth] MIDI data formats for a multi-track sequencer

czei@accelerator.eng.ohio-state.edu (Michael S. Czeiszperger) (06/10/88)

I'm writing a general purpose Standard MIDI File sequencer for my
Macintosh.  The SMF part is done, but I'm now wondering if my basic
data format could be implemented better.  The problem is, I can
only play one channel with these drivers.  Does anyone have any
suggestions for how to store multiple MIDI channels.

The problem seems to be one of access.  If I store all the channels
in one array or linked list, there is the problem of getting at
the data when editing or adding new tracks.  Merging data in particular
would be very time consuming.  On the other hand, if the track data was
stored separatly, I'm not sure I could shuffle fast engough through all 
the arrays or lists to make sure the MIDI data was played in time.

Currently my MIDI data is stored in linked lists of arrays.  I tried
storing each MIDI event as a separate list element, but that was
way too slow.

Anyway, I'd appreciate any hints or comments.

Thanks,


-- 
Michael S. Czeiszperger         | "The only good composer is a dead composer"
Systems Analyst                 | Snail: 2015 Neil Avenue         (614)
The Ohio State University       |        Columbus, OH 43210          292-
UUCP:att!accelerator.eng.ohio-state.edu!czei  PAN:CZEI                 0161