WebAudio/web-midi-api

Ordering of messages scheduled at the exact same time

Opened this issue · 1 comments

It might be a good idea to specify the order in which messages scheduled for the exact same timestamp are sent.

I stumbled into a situation with JazzSoft's implementation of requestMidiAccess where control change messages intended to select an NRPN parameter are sent out of order.

This is what I am doing:

send([ 176, 99, 12 ], 5000);
send([ 176, 98, 34 ], 5000);

But the message are (sometimes) received in this order:

[ 176, 98, 34 ]
[ 176, 99, 12 ]

I believe messages scheduled for the exact same timestamp should be sent in the order they were originally queued. The spec should probably explicitly mention that.

Does that make sense?

I think Chrome just receive the message as it was received at the OS layer. So, if this is just an editorial issue, I'm fine with clarifying this in the spec, as the message should appear in the order the system actually received