Right now MidiPlayer only supports straightforward playback with tempo adjustment, but if we consider creating music authoring tools e.g. DAW and want some playback feature, then there are couple more features we want.
Start at arbitrary position, end at arbitrary position
Support for loop point
channel mask
... or, combination/sequence of above
Also, position specification can be in : ticks, bars, markers (needs external definition), and (milli)seconds
With seek operation support and channel mask support, this issue is practically done. Loops can be achieved by apps (Finished += delegate {start_from_scratch...()).
Right now MidiPlayer only supports straightforward playback with tempo adjustment, but if we consider creating music authoring tools e.g. DAW and want some playback feature, then there are couple more features we want.
Also, position specification can be in : ticks, bars, markers (needs external definition), and (milli)seconds