Page 1 of 2

ReNamed - Stompas Latency and Jitter happy hour

Posted: Mon Apr 09, 2007 3:53 pm
by Stompa81
A friend of mine, a more seasoned Scope user, has showed me some quick ways to test the latency of my Scope setup.

When We were running these Tests on my system we seemed to constantly get 1ms of Latency . The strange thing is however there is slightly more latency in one of the Channels.

A Basic Description of the setup and routing.
Cubase MIDI-->MIDI Interface OUT A-->Scope Project MIDI IN-->Modular III MIDI IN-->SampleDrum OSC-->Mod III Audio out 1--> Mod III #2 Audio IN1--> Mono Insert-->Mod III #2 Audio Out1--> Asio2 Dest IN1-->Audio Track in Cubase.

In modualr He Insetred 2 sample drum OSC so one was routed to Asio IN 1L and the other is routed to Asio IN1R. the audio was recorded with one Stereo Audio Track .

Here are some Screen Shots of the Recorded Audio.

This Picture shows Bars+beats. You can See Bar 35 ,some latency, then the start of the audio
http://www.speedyshare.com/869555480.html

This picture is the Same as Picture 1, only Its measured in samples
http://www.speedyshare.com/436721218.html

This Picture shows the Latency difference Betwen the 2 channels, measured in samples (the highlighted part)
http://www.speedyshare.com/820187552.html

Basic PC Description Asus motherboard,3.33ghz celeron M,1 gig ddr2 RAM, Scope project, M-audio MidiSport 4x4.

So my Questions are:-
1)Does this look normal or do I have some latency issues ??
2) Would a latency of 1ms be noticable to the Human Ear ??
3) I have heard of something about Delay Compensation Would this be a place to start looking??
4)If i do have big issues, what things should I be checking / testing ??

My friend who helped me with this Has the same problem with his system however his latency is always random ... not a constant 1ms like mine.He has been pulling his hair out for a very long time, any help would be greatly appriciated on both our behalves :D

Hope there is enough info here , If any other Info Is need to solve this (If it is a problem) please let me know :D

Many thanks in advance!!

Posted: Mon Apr 09, 2007 11:01 pm
by valis
What is the purpose of using 2 modular shells? Post up some screenshots of your Scope routing and your Cubase channel settings so that it's a bit more clear.

Posted: Mon Apr 09, 2007 11:36 pm
by Stompa81
We are Using one modular shell as a sampler, and one as an fx unit. I will post some screenshots when I get back to my Scope PC.ASAP.

Thanks for the reply :D

Posted: Tue Apr 10, 2007 5:57 am
by next to nothing
i havent tried this myself, but what are the results with midi->kickme->stereo audiotrack?

if that is good you can start to add things like mixer, modular shell, effects or whatever between the kickme device and the stereo track. you can then identify the weak link.

Tiresome, but if you are bothered about it its the only solution :)

Posted: Tue Apr 10, 2007 5:58 am
by next to nothing

Posted: Tue Apr 10, 2007 7:56 am
by H-Rave
1ms of latency ?,you can't hear 1ms of latency you can barely hear 10 ?,I'm perfectly happy with 7ms,you be inevitably using more dsp efficiency I don't see the point,sorry.
:P

Posted: Tue Apr 10, 2007 10:38 am
by astroman
well, I can easily hear 0.5ms - in fact I can even hear a single sample (at a certain position) and that's just one twentieth of the value above... :P
you must be deaf if you don't hear what's pictured in the jpgs - there's an almost complete signal extinction as the respective waves are inversed.

of course I cannot tell if a drum hit comes 1, 5 or 10 ms sooner or later - but that's not the point here.
It is a well-known 'feature' of Modular that things supposed to be processed in sample accurate sync,may drift a few samples apart, if the code happens to be distributed over several DSPs.
It's difficult to predict, as there are many influences - but it should not be overestimated either, as cable capacitance and variations in parts can have similiar effects even in pure analog systems.

Yet what's shown in the example is way too much deviation to be explained by the afforementioned phenomenon, so it must have a different source.
Nevertheless a kick would sound rather funny if a 2nd attack sample starts (say) 5 samples later - and I don't think it's restricted to Modular or even SFP ;)

cheers, Tom

Posted: Tue Apr 10, 2007 2:29 pm
by darkrezin
Check you're not using 'emulated' MIDI ports in Cubase. This is pretty well documented on the web (google it) and it's an easy fix. Other than that, I always found Cubase's timing to be pretty bad, but maybe I was just unlucky. Also I should just add that 1ms is nothing to be worried about in a MIDI system. Native systems give sample accurate playback but utterly suck for live recording of software instruments, so it's swings n roundabouts I guess...

Posted: Tue Apr 10, 2007 2:59 pm
by emphazer
we use usb midisport 4x4 in cubase to sequence
cubase >> midisport >> midi in scope

Posted: Tue Apr 10, 2007 3:57 pm
by valis
Ok after a bit of sleep I think I understand better what your test was. 2 different drum oscs sent through 2 different ASIO ins into cubase, and recorded into a stereo track. I had thought that the signal chain you described above (using the 2 mods) was also a part of the test?

If this is just 2 drum oscs fed from a mod shell into cubase, then astroman is more on the mark. What you're showing isn't a phase difference and not a 'timing' error. Or I could still be misunderstanding. I think a few more screenshots might be helpful, at least for me. :lol:

Posted: Tue Apr 10, 2007 4:29 pm
by astroman
I don't think so... (being on the mark) the difference is way too much
Dark's hint to midi timing looks more promising imho
...we use usb midisport 4x4 in cubase to sequence
cubase >> midisport >> midi in scope...
they use a roundtrip over the physical midi connector (with a very simple interface) and that can easily vary between 1 to 5 ms afaik

cheers, Tom

Posted: Tue Apr 10, 2007 5:29 pm
by valis
The thing is, it's not clear how his patching is set up to me. I see one signal path described then perhaps another used for the testing?

Anyway You're right that 1ms of latency is too much for a dsp based phase error, usually I find it's on the order of 1-5 samples for being on the same card, and a bit more when the stdm cable plays a part. So I agree with you & don't think it is that either. My wording wasn't clear unfortunately, upon re-read. This is probably why I generally have an incapacity to give 1 or 2 sentence replies to many messages (lol).

Basically I'm saying that If he's using 2 different notes to trigger each drum osc then it might not even be a midi timing 'problem'. MIDI runs at 31.25 Kbit/s. With 10 bits transmitted per byte of MIDI data, a 3-byte Note On or Note Off message takes about 1 ms to be sent. Hence the 2nd note on would be about that late, not accounting for active sensing and other possible midi messages (cc's etc). So IF he is indeed using 2 notes to trigger 2 diff drum oscs, then the result is seen as the phase error in his left/right signal that he's recorded. If he is indeed triggering both from the same note then something else is drastically wrong in the routing.

To measure MIDI 'jitter' (the variation in timing between notes' you'd use a different test entirely (this is usually where poorer midi interfaces suffer). To measure MIDI 'latency' you would have to send a note on at the same time as u send an audio signal (typically an impulse). Route the audio signal down a latency-free path within your sequencer and it should record back to the same position (on the left channel) in perfect sample sync. Midi has an inherent latency (as I stated above, 2 notes will not arrive at the same time) just in the datarate, then there are the buffers in the OS and the midi ports at each end of the cable, etc.

There was a discussion long ago on measuring the various latencies with Scope and various apps, and cubase was generally found to have some of the worse results in many cases. There are various solutions to this depending on the version of Cubase you're running. However again I'm not sure the methodology of his test is really correct?

Posted: Wed Apr 11, 2007 12:08 am
by Stompa81
valis wrote:The thing is, it's not clear how his patching is set up to me. I see one signal path described then perhaps another used for the testing?
We used 2 Sample Drum Oscs in This test, Both Triggered by 2 different notes in cubase.We also Did the same with 2 KIKME's. I did not make this very clear. The First drum osc is the Left Channel of the Audio in the screenshots. The Second drum Osc is the Right Channel . They both follow exactly the same path as the one I described in the first post.
valis wrote: However again I'm not sure the methodology of his test is really correct?
If anybody could suggest or link me to another method of testing for latency this would be a great help :)

Thanks for the input everyone :D @ Darkrezin , I will try that MIDI fix, thankyou for pointing that out :D too :D

I will Try Ableton live( 6.0.5)aswell to see how it behaves. BTW I am Using Cubase SX 3 ver 3.1.1.944

I just got back on my Scope PC today. I will setup the test I did again and will Get some screen shots of the cubase main , scope routing window and the modualr windows.

Will there be any other specific Information I need to display here??

Posted: Wed Apr 11, 2007 5:44 am
by next to nothing
did you try my suggestion?

Posted: Wed Apr 11, 2007 6:50 am
by emphazer
valis wrote: Basically I'm saying that If he's using 2 different notes to trigger each drum osc then it might not even be a midi timing 'problem'. MIDI runs at 31.25 Kbit/s. With 10 bits transmitted per byte of MIDI data, a 3-byte Note On or Note Off message takes about 1 ms to be sent. Hence the 2nd note on would be about that late, not accounting for active sensing and other possible midi messages (cc's etc). So IF he is indeed using 2 notes to trigger 2 diff drum oscs, then the result is seen as the phase error in his left/right signal that he's recorded. If he is indeed triggering both from the same note then something else is drastically wrong in the routing.
you are right. if i play 2 sampler on the same note then i have just a latency difference of 1-5 samples



piddi wrote:did you try my suggestion?
the problem happens with every sampler
not just with kickme

Posted: Wed Apr 11, 2007 6:54 am
by next to nothing
my suggestion is to start with a minimal setup to eliminate problems, instead of going thru modulars etc.
Kickme is just an example to get a fast and snappy wave.

Posted: Wed Apr 11, 2007 6:56 am
by emphazer
piddi wrote:my suggestion is to start with a minimal setup to eliminate problems, instead of going thru modulars etc.
Kickme is just an example to get a fast and snappy wave.
tried like 20 or more different settings
so minimal as possible
on 4 different scope cards
same happened always again

Posted: Wed Apr 11, 2007 7:06 am
by valis
Stompa81 wrote: We used 2 Sample Drum Oscs in This test, Both Triggered by 2 different notes in cubase.We also Did the same with 2 KIKME's. I did not make this very clear. The First drum osc is the Left Channel of the Audio in the screenshots. The Second drum Osc is the Right Channel . They both follow exactly the same path as the one I described in the first post.
Ok then my last post was 100% correct. The ~1ms 'latency' you are seeing is the actual time it takes to send a midi note. This is a limitation with the midi spec and is universal with ALL gear that uses midi. If you need clarification refer to my above post, but this is indeed not latency in the sense that you're thinking. If your friend thinks this is incorrect he is probably used to working within software only.

Stompa81 wrote:
valis wrote: However again I'm not sure the methodology of his test is really correct?
If anybody could suggest or link me to another method of testing for latency this would be a great help :)

Thanks for the input everyone :D @ Darkrezin , I will try that MIDI fix, thankyou for pointing that out :D too :D

I will Try Ableton live( 6.0.5)aswell to see how it behaves. BTW I am Using Cubase SX 3 ver 3.1.1.944

I just got back on my Scope PC today. I will setup the test I did again and will Get some screen shots of the cubase main , scope routing window and the modualr windows.

Will there be any other specific Information I need to display here??
Quite some time ago these topics came up here on PlanetZ, and I did some testing with Logic Audio 5.x (PC) and Scope. This was when my Scope cards were still in my primary DAW so the tests should be relevant still for your usage. I quoted both sources used for my tests so you should follow those links and read carefully. If things don't at first make sense give the tests a shot yourself then go back & read: http://www.kief.net/studio/tests/MidiTi ... gic-pc.htm

One thing you'll notice is that I used kickme for my tests. Also only a single signal chain is used and a single stream of midi notes. The variation in timing between notes is the jitter amount, and the difference between the timing of my internally triggered audio clip (taken from kickme) and the externally triggered KickMe module (triggered via midi) shows the latency of my midi give or take a few samples from Creamware's converters. I'm not sure if their driver reports the ASIO latency to include the AD/DA buffers. Some soundcards do and some don't (this is why latency values differ between audio cards when using the same buffer size). I do know that Logic will account for any delay in the ASIO buffer that it is aware of (meaning that if I am running at 7ms latency and I am recording Logic will shift the audio at least that amount to bring it into time).

Btw you'll notice on page2 of my tests I confirm the roughly 1ms worth of time that it takes a midi note to transfer (my results were between 55 samples & 67 samples, which is roughly 64 samples plus some jitter (timing error) in either direction). The difference between my test & your test is that rather than using 2 separate notes driving 2 separate midi devices, I used a single set of notes and ran a copy of the audio from teh same Kickme patch in parallel.

Posted: Wed Apr 11, 2007 8:50 am
by hifiboom
I dont see a big problem here....

stompa, why do you trigger one sound ( stereo drum sound) with two midi notes?

that doesn`t make sense to me....
first start to trigger both sample oscillators with one midi in note.

if you use two sample osc for different drum sounds(mono snare and kick) the 1ms latency is neglible anyways.

Posted: Thu Apr 12, 2007 3:59 am
by valis
Agreed. I was under the impression though that his friend had created this 'test' to show that there was some 'issue' afoot (there isn't if I finally understood everything).