• SONAR
  • MIDI "Jitter" - It Does Exist (p.44)
2008/02/27 01:40:10
brundlefly
What generated these data? .08ms average round trip? I don't think so.
2008/02/27 11:40:08
strungdown

ORIGINAL: brundlefly

What generated these data? .08ms average round trip? I don't think so.


Believe it or not, these numbers are very consistent, very repeatable, and very real.

http://earthvegaconnection.com/evc/products/miditest/index.html This is the test program

Settings were: MME with timestamping, max sysex of 60

Would anyone else with a M-Audio PCI card care to confirm these numbers?
2008/02/27 12:52:13
brundlefly
I need to do some investigation into this EVC MIDI Test thing, but my first reaction is that the underlying MIDI protocol and hardware are incapable of even sending a full length MIDI message in much less than 1 millisecond. Also, Since MIDI events can only fall on a particular tick in Sonar or any other conventional MIDI sequencer, if it somehow came back a tenth of a millisecond after it went out, it's positon should round to the same tick it went out on, and you'd effectively have zero latency. Or, depending on how Windows handles the messages, it's arrival time might be rounded to the next tick position, which in Sonar at 960PPQ and 100BPM is .625ms later. So this concept of MIDI timings on the order of 100 microseconds or less don't make any sense, unless you are running extremely high tempos like 1000BPM.
2008/02/27 13:34:30
brundlefly
Ran a quick test of my 1820m's MIDI ports, and got results more like what I would expect in the real world:

Snd+Rcv times from 4.76ms to 6.26ms with an average of 5.71ms. This is about twice what I get when I just do a loopback test with Sonar, which gives me a round trip of about 2.6ms. Turning off timestamps took the reported average up to 6.75ms with a high of 15.54ms! But it still says the Snd times are averaging .01ms, and attributes all the latency to the Rcv time, which doesn't really make sense.
2008/02/27 13:34:46
strungdown
Right, but also the PPQ/BPM thing is a construct of the sequencer but not the MIDI APIs. The MIDI APIs don't have any of that notion, just an (optional) timestamp based on some clock in the PC. Meaning, theoretically a sequencer could record MIDI messages based on the absolute timing information, rather than the notion of beats, measures, ticks, etc.

If a MIDI message is 3 bytes and the midi data rate is 31.25Kb/sec, thats 0.000 256 seconds per byte, or 0.000 768 seconds per (3-byte) message minimum.


2008/02/27 13:40:07
dewdman42
strungdown, that is true, but Sonar does not record those absolute times. It rounds to the nearest 960ppqn.
2008/02/27 13:40:41
strungdown

ORIGINAL: brundlefly

Ran a quick test of my 1820m's MIDI ports, and got results more like what I would expect in the real world:

Snd+Rcv times from 4.76ms to 6.26ms with an average of 5.71ms. This is about twice what I get when I just do a loopback test with Sonar, which gives me a round trip of about 2.6ms. Turning off timestamps took the reported average up to 6.75ms with a high of 15.54ms! But it still says the Snd times are averaging .01ms, and attributes all the latency to the Rcv time, which doesn't really make sense.


That seems almost too high for a PCI interface. Was that with MME, DirectSound, or KernelStreaming? I found that only MME worked well on my Delta.

In case you didn't see it, the author has published some reults at:

http://earthvegaconnection.com/evc/products/miditest/results.html
2008/02/27 13:55:43
brundlefly
If a MIDI message is 3 bytes and the midi data rate is 31.25Kb/sec, thats 0.000 256 seconds per byte, or 0.000 768 seconds per (3-byte) message minimum.


Right. About 0.8ms, not 0.08 as reported for the round trip in your test results.

Incidentally, a couple of notes on my test results: First, I was not able to use MME; it's not supported my the 1820m's driver. I had to use DirectSound, and I had to turn off SysEx massages, as there seemed to be a problem with them. I need to check into this some more, as I use SysEX all the time to control my outboard synths with Sonar, and have no trouble with it. Also, I found that running the test with just 100 messages, rather then the default of 31250, produced completely repeatable results in much less time.
2008/02/27 14:00:12
brundlefly
In case you didn't see it, the author has published some reults at:

http://earthvegaconnection.com/evc/products/miditest/results.html


Yes, I did see that. I also noticed that the best latency reported there was .34ms - about four times what you got - and 1-3ms was more typical.
2008/02/27 14:02:55
strungdown
I had the same trouble with the SysEx. For some reason that seems to screw up a lot of devices.
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account