W3C home > Mailing lists > Public > public-audio-dev@w3.org > March 2013

Re: Assistant Performer

From: James Ingram <j.ingram@netcologne.de>
Date: Fri, 08 Mar 2013 18:43:27 +0100
Message-ID: <513A233F.4080404@netcologne.de>
To: Chris Wilson <cwilso@google.com>
CC: public-audio-dev@w3.org
Hi Chris,

Understood. Thanks.

The info about running-status was also useful.
I'll be updating my docs in both areas soon. :-)

best,
James


On 08.03.2013 16:55, Chris Wilson wrote:
> Ah, I see.  Real-time messages are supported - they're quite important 
> for sequencer synchronization.  They cannot be received in the middle 
> of ANY messages - only in the middle of system-exclusive messages. 
>  (You would not interrupt a 3-byte note-on message with a real-time 
> message; you'd wait and send it after, since you'd only cause a 
> half-millisecond or so of jitter.  Sys-ex messages, though, can be 
> quite long, so you need to be able to send real-time during that time 
> span.)
>
> I'll add a comment; I would expect, actually, that a real-time message 
> occurring in the middle of a sysex message would be dispatched 
> immediately via message event, while the system message would be 
> buffered until it is complete (although the timestamp would be the 
> beginning of the message, allowing you to recreate the ordering).
>
> So:
> a) yes, Web MIDI supports real-time messages.
> b) In Web MIDI applications, real-time messages may be received while 
> another (sys-ex) message is being received and buffered by the system, 
> but real-time message data would not be interleaved in other message 
> data; they are dispatched as separate messages.
>
> -C
>
>
> On Fri, Mar 8, 2013 at 6:13 AM, James Ingram <j.ingram@netcologne.de 
> <mailto:j.ingram@netcologne.de>> wrote:
>
>     Hi Chris,
>
>>     [...] running status is a way of compressing /multiple/ MIDI
>>     messages into one long stream.  At this point, the UInt8Array
>>     could only contain the bytes of ONE message in that stream - so
>>     it would have to be expanded already.
>
>     The penny just dropped.
>     I've been confusing "Running Status" with "Real Time" messages
>     (1-byte messages in Range 0xF8-0xFF), and will have to revise the
>     corresponding names in my midiLib library. -- Thanks for your
>     patience.
>
>     The docs I'm using say that MIDI devices can send Real Time
>     messages at any time, even inside other messages.
>
>     As far as I can see, the Web MIDI API draft [1] does not mention
>     Real Time messages at all.
>
>     Can I assume that
>     a) Web MIDI applications can both receive and send Real Time messages.
>     b) In Web MIDI applications, RealTime messages are never received
>     in the middle of some other message. [1] Section 8.1 says
>
>>     A Uint8Array containing the MIDI data bytes of a single MIDI message
>
>     all the best, sorry about the confusion,
>     James
>
>     [1] http://webaudio.github.com/web-midi-api/
>
>


-- 

http://james-ingram-act-two.de/
Received on Friday, 8 March 2013 17:44:05 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 17:44:05 GMT