[Bug 18764] MIDI messages don't all have a channel, and status should be part of data.

https://www.w3.org/Bugs/Public/show_bug.cgi?id=18764

--- Comment #38 from Chris Wilson <cwilso@gmail.com> 2012-09-12 18:24:24 UTC ---
(In reply to comment #36)
> Keeping programmers from having to do
> abstraction in a low-level API is counter-productive.

Huh?  I'm not preventing programmers from doing abstraction at a low level; I'm
saying forcing them to have an extra layer of abstraction around the concept of
a MIDI message (when the call is already doing that) is unnecessary.  They're
free to wrap any layers of abstraction around those messages that they would
find useful in a particular scenario; I've never argued they should have
semantic calls at the Web MIDI level, just that sending an up-to-3-byte short
message needs to be super-efficient.

> > Plus you're suggesting wrapping ANOTHER layer around what I'm already saying I
> > think is too many layers.  :)
> 
> Yep, but I'm suggesting the extra layers stay on the user side rather than the
> API side.

And I'd certainly agree with that; I don't want to see noteOn() in the MIDI
API.  I would, of course, expect lots of libraries to have a function named
noteOn() (in fact, a couple of my examples do - but several do not).

(In reply to comment #36)
> BTW, I don't think the short form is going to be very useful for libraries,
> because it'll seriously restrict their use cases if the library doesn't support
> timestamps.

I disagree quite strongly.  In the sequencer use case, that may well be true;
but I also expect sequencers will be structured around keeping data in
MIDIMessage-compatible form, and wouldn't use the short form.  For my
controllers, though, on the other hand, I'll absolutely want a library call to
turn on lights, set encoder display levels, etc., that is not timestamp-based.

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Wednesday, 12 September 2012 18:24:31 UTC