|
Actually, the pitch bend uses two CCs so it's already pretty precise (16384 discrete values, usually over no more than a few semitones). Some other controllers do that too, and of course, any controller can technically be mapped that way with a little bit of fiddling.
MIDI controllers just send a single-byte (well, 7-bit) word value through the channel, although some signals, like notes, take 2 or 3 words. So yes, it's going to send "1 2 3 4 5 6 7" - it's up to the receiving host to interpolate between those values, and many do.
Also, the 1/384th of a second figure is not exactly correct. The MIDI spec is 31250 baud, using a start and a stop bit, so that's either 3125 or 3472 words per second (I'm not sure if a word is actually 9 bits or 10; since the value is only 7 bits it might be only 9 bits to include the start/stop bits). Therefore each word takes 1/3125 of a second to transmit, not 1/384. jobro may be confusing that with the score time resolution, which is 1/384 of a beat.
3125 words per second means each word takes 0.32 ms to transmit, so in a normal-to-high load situation (1 note and 2 controllers per channel, at all times, for all 16 channels would be a pretty high average), that takes 25.6 ms to transmit all of it. 1/64th note at 140 BPM is 26.7 ms, so there's still enough time to send it.
That's a lot of hand-waving of course - the actual data going through a MIDI interface is not so uniform, and you CAN run into bandwidth problems at extremely heavy loads, but it's just incredibly rare. It's much more common to have problems due to a garbage serial clock.
___________________
My party schedule:
2009-02-21 - DJ Attention @ I'm So Popular
2009-06-18 - DJ Annoying @ People Need To Know Where I'll Be
2012-11-32 - DJ Insufferable ɸ Or At Least the Stalkers I Complain About
2048-06-66 - Spastic & Whocares ¶ Although I'm Actually Flattered
9999-45-81 - Tweaker Gimp ☼ I Probably Won't Even Go To This But I Have To Make Sure I Fill Up All The Available Space Here
|