I figured if they're sending MIDI "Control change" commands (as is documented 
for the Total Control jog wheels), then as long as you format it with the:
 [(status byte) 0xBn ] [ (1st data byte) controller byte] [(second data byte) 
value].

Then the second data byte can mean whatever you want it to mean relevant to 
whatever is being controlled, be it position, velocity, delta velocity, 
whatever.  You can have the value even get scaled the same way audio faders 
aren't linear and send that.  I don't think the MIDI protocol is explicit about 
that and that's why I was curious.

If midi is operating constantly at peak frequency then it can send messages at 
over 1000 Hz (Isn't MIDI 31250 bps with 3 byte frames?) .  That's pretty fast 
relevant to human perception, which I think was the point in MIDI design. It'd 
be nice to know how fast the actual velocity data gets updated by the 
controller.  

I'm just confused for the necessity of these new "Hi-Def midi" even with 
latencies of 5 ms, like the VCI-300 and the numark NS7 (this one has motorized 
platters) in order to get better scratching.   It seems like you just need to 
be able to sense speed changes faster and then send them, and has nothing to 
with the MIDI standard.  I guess I'd need to work out the math and see how fast 
a scratchers hand moves when scratching.  I suspect it's all on the encoder 
side of things and maybe even a part cost thing, like manufacturers were like 
"we are not putting expensive encoders in a product that we haven't proven 
there's a market for" and now that the market is well extablished the've 
figured out a better/cheaper speed sensing tech and are putting that in.  But 
they have so much resolution now they don't know what to do with it, so they 
increased the transfer rate.

But then again, I have poor deck skills.   

-Nick




----- Original Message ----
From: Mark Glines <[email protected]>
To: Nick Conway <[email protected]>
Cc: Too Many DJs <[email protected]>
Sent: Wednesday, March 11, 2009 4:50:01 PM
Subject: Re: [Mixxx-devel] Midi Encoder data details

Nick Conway wrote:
> So how do they format the velocity data?  Position is limited by whatever the 
> pulses per revolution are but velocity can be pretty unbounded.

Hi Nick,

The formatting is defined by the communication protocol.  For the total
control, that's MIDI, so it'll start sending "widget #FOO +1" messages
when you rotate the turntable clockwise, and "widget #FOO -1" messages
when you rotate the turntable counter-clockwise.  As you spin it faster,
it sends the messages more often, until you hit some threshold, at which
point it always sends the message at its basic clock rate (maybe 100Hz?)
but just increases the number instead.

The powermate I mentioned earlier is sort of a special case, they have
their own protocol (and the device wasn't really intended for dj mixing
anyway).  However, I would expect most midi controllers to behave very
similarly to the total control, as described above.


      

------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to