Re: [Jack-Devel] CoreMIDI driver bug fix

PrevNext  Index
DateMon, 04 Mar 2013 21:47:48 -0800
From Devin Anderson <[hidden] at gmail dot com>
ToChristian Schoenebeck <[hidden] at crudebyte dot com>
CcJack devel <[hidden] at lists dot jackaudio dot org>
Hi Christian,

On Mon, Mar 4, 2013 at 3:50 AM, Christian Schoenebeck
<[hidden]> wrote:
> On Sunday 03 March 2013 23:46:10 Devin Anderson wrote:
>> Perhaps the numerous dropped note-on/note-off events are due to the
>> multiple message/packet bug, and have nothing to do with running
>> status.  I can't confirm the possibility either way, as I don't have
>> access to a Mac or an iPhone.
>
> Possibly, yes. But then I would expect this misbehavior to happen with almost
> every MIDI keyboard. It was reported to happen with only very few models
> though. Which more sounds like the "running status" theory.

Before assuming running status is the cause, I think you should try to
find some sort of proof (not anecdotes); otherwise, you might be
writing code to solve the wrong problem.  At the least, create a
branch of JACK that calls jack_error() whenever a message is found
that doesn't start with a valid status byte, and test it on a device
with one of the known culprits.  You may find that the device driver
is packing MIDI messages that arrive in the same USB frame in the same
MIDI packet, which is a case that we *know* we weren't handling
previously.

> To be caused by different hardware drivers is also unlikely. Because most
> probably all MIDI keyboards attached to an iDevice will use the same driver
> ("USB Class MIDI" protocol).

Once again, this is based on information that you're assuming is true.
 Please make sure!

> However, since nobody of us can test it directly, I simply wanted both
> possible cases to be handled by the code for now.

"For now" could end up lasting for a while, and you might just be
providing a workaround to a real problem that could present itself
again in the future.

-- 
Devin Anderson
surfacepatterns (at) gmail (dot) com

blog - http://surfacepatterns.blogspot.com/
midisnoop - http://midisnoop.googlecode.com/
psinsights - http://psinsights.googlecode.com/
synthclone - http://synthclone.googlecode.com/
PrevNext  Index

1362501056.29138_0.ltw:2,a <CAG7zqToFYXah0HkgD2atZM4ph5c1DKzEZZW2vPwggNGZEQu2hQ at mail dot gmail dot com>