Hardware latency
As kindly pointed by master Memo, I tested my hardware latency.
First photo is the projector latency: displaying the same timecode on both computer screen and the projector, in this case an Optoma EP759.
On top the proector timecode, bottom the computer timecode:
Result is a 16ms latency. 1 frame at 60FPS.
Now testing the Kinect unit. Same procedure. Note that I’m using v002_OpenKinect QC plugin by Vade to display the Kinect Color Image.
On top the computer timecode, on the bottom the Kinect grabbed timecode:
Result is an amazing 80ms latency !
Each test was repeated 3 times in order to have consistent results.
So with this setup I have an overall 6 frame delay (roughly).
I guess you can’t expect more from a 150euros plastic consumer product.
And it also confirms my gaming impressions on the Xbox.
Since the Kinect is grabbing frames -apparently- at 30FPS, I’ll lock my output to 30FPS as well, and hopefully reduce the latency to 3 frames…
I’d be happy if anyone can confirm these tests.
March 10, 2011 at 19:26
Kinect to the *projector* is ~80ms, but you have to be fair and subtract the processing delay going from your laptop to the projector, so the Kinects inherit, added latency in the same display setup is ~65 ms.
That does sound about right though. Im curious if any other driver model can get better (v002 Open Kinect is using libfreenect). Always eye opening measuring this stuff, isnt it?
March 10, 2011 at 19:42
You’re soooo right.
As a sidenote, I didn’t use any projector when testing Kinect latency, only 2 computers (so the Kinect is pointing at the first computer screen). Will try to test another driver to see if this helps.
March 11, 2011 at 03:13
Sorry, I’ve never written here before, but you are missing something important. The thing is that what you has measured is the delay between your LCD and the projector. And most LCDs have a lot of delay, like 3-4 frames at least.
If you want something better, measure the LCD first with an old CRT monitor. Then you know the LCD and you can start counting from that. But to make your life even more complicated the different display outs on your computer have different delays. So you would need two old CRTs to compare multiple display outs, and if it’s a laptop the internal display too.
March 11, 2011 at 11:15
don’t be sorry, thanks for the info !
3-4 frames delay for a LCD seems huge however. I always thought the LCD response time was something like 4-5 ms.
Will look into it ! (but finding a CRT seems overly complicated these days…)
March 11, 2011 at 14:55
No, except for a very few LCDs they have a lot of lag. Have a look at this page for a start. But even they don’t have access to a CRT.
http://www.anandtech.com/show/2922/4
March 18, 2011 at 10:50
Only NASA has access to CRTs these days.
March 11, 2011 at 16:19
well i got 2 in my attic do you want them?
here is portugal.
March 15, 2011 at 10:39
On retrouve le même problème avec le multitouch en manipulation directe, et sur de grands affichages.
La Kinect est connu pour avoir une forte latence, à mon avis le point critique vient plus de là.
Peut être que pour atténuer l’effet il vaut mieux que le danseur soit loin de la Kinect. Le déplacement de pixel sera alors plus faible que si le danseur se trouve près de la Kinect.
Sinon c’est trop bien ce que vous faites, j’ai eu la chance de vous voir à la fête des lumières à Lyon.
July 20, 2011 at 17:11
Bonjour Francois,
I just did a similar test with the kinect using a crt and a lcd.
I ended up with a 82ms delay, too, using the crt. LCD however gave a delay of 97ms, which is about the display – lag that i’m supposed to have ( 12ms (+ 3ms, who knows))
However, setting the application to 30fps made things worse, (about 103ms for crt)
I guess you would have to synchronize the kinects 30fps with your application 30fps. Otherwise you might end up waiting for new frames without any need.
July 20, 2011 at 17:17
I’m happy to see that our results seem similar.
June 15, 2012 at 18:16
Interesting thought to analyse the hardware latency.
Did the test:
A Barco FLM HD20 chained to a Barco Encore has 33ms of hardware latency. Thats 2 frames every second at 60fps.
http://cl.ly/HQTS