Re: Questions on data in MIDIPackets
Re: Questions on data in MIDIPackets
- Subject: Re: Questions on data in MIDIPackets
- From: Kurt Bigler <email@hidden>
- Date: Sun, 24 Feb 2002 15:54:50 -0800
on 2/21/02 4:57 PM, Brian Willoughby <email@hidden> wrote:
>
>> The only thing I wonder is whether percussion timings might benefit from
>
>> some sort of priority flagging which might allow a group of events to be
>
>> shifted in time (but not reordered) during heavy traffic
on 23/2/02 1:27 AM, Kurt Bigler wrote:
>
> if you meant to
>
> exclude keyboard note-on/off events from this category, please don't.
>
> Keyboards need the same timing accuracy as other percussion instruments.
on 2/24/02 2:20 PM, Bill Stewart <email@hidden> wrote:
>
Can't resist commenting on this.
>
>
Piano's have, I believe, about a 50msec latency from the first touch on the
>
key to when the sound is heard by the player.
Since you mentioned this particular, I also can't resist commenting.
The first touch is barely relevant. The pianist also feels when the key
hits bottom, and is sensitive to when the hammer strikes,
so the latency of interest would be from the bottom of the keystroke to the
beginning of the sound. Further, on a grand action (which has a special
fast-restrike mechanism), there is a very direct physical relationship from
finger to hammer when the key is restruck quickly, and in that case the
pianist _feels_ the entire hammer stroke and so there is actually no
mechanical latency (none!) between what the pianist feels as the bottom of
the stroke and the actual collision of the hammer with the string. (Of
course there are many latencies within the nervous system, yet in
highly-relational situations near-zero apparent reaction times are
possible.)
The "key" here is the direct physical relatioship, the fact that the entire
activity during which so-called "latency" occurs can be sensed by the
musician.
Consistency helps, but good pianists can play consistently on a piano with
an inconsistent mechanical action.
Lacking that physical relationship on electronic keyboards currently
available, inconsistencies are more difficult to deal with.
>
Another thing to consider. Sound travels a foot a msec.
A good example is the typical pipe organ in which the player's hands are
often 30 or more feet from the sound source that they control. Yet
organists deal with that.
I agree the more important issue is not so much latency itself but how
consistent the latency is.
So I see two potential areas for concern:
* inconsistent latency in a single stream from one input device ("Jitter")
* inconsistent latency between different devices
Herbie Robinson has put me at ease somewhat on the first issue, but I'm not
entirely sure the issue can be put to rest. The second issue is also
important, and the driver corrections that have been discussed will
hopefully help. My concern was that the user should have override in case
the driver guessed wrong.
on 2/23/02 11:50 PM, Herbie Robinson <email@hidden> wrote:
>
Hopefully, as the legacy MIDI protocol disappears and we
>
are not subject to the slow transmission times, none of what we are
>
talking about will matter at all.
I look forward to that day, hoping Apple is well-prepared. The current OS X
APIs still treat the midi "protocol" as "data" rather than logical events
(or did I miss something?), which puts us in a position of being not so well
prepared for note numbers > 127, floating-point key velocities, and more
accurate control values. Also different numbers of notes per octave and
alternate tunings are not dealt with well using midi note numbers, such that
floating point center-frequency should be able to replace note number in
higher-level "MIDI" APIs.
The current APIs do not permit applications to be developed now which will
support future changes in the underlining technologies. Perhaps it seems
too hard to anticipate a future standard to make it seem worth pursuing this
now. Nonetheless I believe many of the next steps (previous paragraph) are
obvious. So why not act not and build a software API that _leads_ hardware
development?
-Kurt Bigler
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.