Author Topic: MIDI timing tests  (Read 592 times)

Offline coachla

  • Consistant Contributor
  • ***
  • Posts: 101
MIDI timing tests
« on: September 01, 2016, 01:43:36 AM »
There was a study I once read from an old link of Doug Wyatt's which concluded that USB (presumably 1.1 at that time) was especially prone to jitter and not as stable as serial port MIDI transmission, because USB is a one-way protocol, cannot simultaneously send and receive data, but instead has to wait for the completion of one or the other. The following is self-explanatory and is optimistic for USB in this particular case:

Do Emagic midi interfaces really support OSX timestamping?

by john909kid Ľ Sat, 09 Apr 2011 6:50 pm 

It's been long speculated that old Emagic Unitor8/AMT USB midi interfaces still support midi timestamping. This is where midi data is sent from the host software in packets to the USB interface, and there it is buffered and sent to all the multiple midi out ports simultaneously. Under Mac OS9, this technology was known as AMT (active midi transmission) and was an Emagic protocol. They developed the Emagic Unitor8 and AMT8 interfaces to support this protocol, and it worked really well...... very well infact!!However when OSX came out, Emagic Logic dropped support of AMT as time stamping was native within OSX. And so many people guessed that their old Emagic units still supported a version of the old AMT, now known as OSX midi time stamping.However MTS under OSX will only work if BOTH the software and hardware support it....Now then, as the Emagic Unitor 8 and AMT8 both come out BEFORE OSX , how could they support a feature native to OSX? Remember they do support AMT, but not MTS. Even though they give similar results, they are two different protocols.From various sources i've learned that even if the host software supports OSX timestamping, if the interface does not, then you have no benefit from the timing improvements...I ran a brief test to investigate. I loaded 5 midi tracks in Logic, sending to 5 ports on my Unitor8 Mk2 and 5 midi synths. I then recorded the synths outputs as audio, and checked the sample editor for timing jitter etc.The synth on port 5 was around 6-8 ms off the grid.I then soloed midi tracks 1 to 4, and recorded synth 5 to audio. Checking its recorded audio, it was now more or less bang on the grid. I repeated the test with 5 tracks going, and once again the synth on port 5 was late. Infact the other synths timing would cascade as you went along from midi ports 1 to 5.This proves that old Emagic USB interfaces do not support time stamping under OSX. If they did, then the timing of the synth on port 5 would not increase as more tracks are added.Not all USB midi interfaces support midi time stamping.From what i understand the only multi port USB interfaces to support midi time stamping under OSX are the Motu ones. They even have MTS labels on the front of them.For an interface to support MTS, what "extra" does this entail? Is it a extra circuit, an extra chip etc? Whatever it is, and from my tests, the Emagic ones do not support it.I'm going to take a gamble on a Motu unit......Edit: According to old Motu info "MTS uses software components in Digital Performer and firmware components in MOTUís new MIDI Timepiece AV-USB, Express XT-USB and micro express-USB interfaces"So OSX midi time stamping needs compatible firmware within the interface, and as Emagic USB interfaces came out before OSX and are AMT firmware enabled, that would make it impossible for them to now be MTS compliant. Am I correct in my assumptions?

In the end I bought a Motu Express 128.... and sold the Unitor 8 Mk2. The Unitor was really bad for sequencing external midi synths. I was able to run some tests using a special custom made unit which allowed me to take two midi leads from any two midi out ports on both the Motu and Unitor interfaces, and to then record the pure midi data as audio signals. I was then able to check the precise timings of each interface by checking the recorded audio in Logic's sample editor. My test was to have eight midi tracks of 16th notes playing for two minutes, sending to ports 1 through to 8 on each interface. I then took audio recordings from midi ports 1 and 8 from each unit.The Unitor was really bad. The difference in time between ports 1 and 8 was something like 7ms. The Motu unit was tight as to be sample accurate for sending midi data simultaneously from each of it's eight midi out ports. Jitter was small being around 0.3ms, however there was the very odd 3ms of jitter. I hope it's not too cheeky to link to another forum, but here's full details on my Motu test.... the screenshots of the midi data are very telling !!!!! FWIW i was also able to test an Atari STE with midi output expanders Log3 and Unitor2. Even the much heralded Atari could not compete with the Mac + Motu combo, displaying a difference of around 3ms between the Atari's main midi out port and port F on the Unitor2, and also with worst case jitter being around 3.5ms. It's a pure internet myth that the Atari is tighter midi timing wise than a modern Mac with the CORRECT midi interface with the CORRECT midi drivers in place.The other problem to tackle when trying to achieve tight midi sequencing of external synths is to take into account each synths midi reaction time/ or latency to incoming midi data. Im running some further tests in this regard, and as an example I've found one of my hardware synths has the quickest reaction time of 5ms, with longest time to react to midi data being 7ms. So in the instrument track delay parameter section in Logic, i'd need to enter a value of "-6ms" to ensure that each mdii note will play within 1ms of where i want it to be.Here's another website which deals with this often overlooked issue... Hope this is of help to you!! Cheers

« Last Edit: September 01, 2016, 02:03:04 AM by coachla »

Offline geforceg4

  • Vault Members
  • Platinum Member
  • ***
  • Posts: 535
  • i did my time on mac os 9
Re: MIDI timing tests
« Reply #1 on: September 04, 2016, 10:35:59 PM »