WNY-HPNVI
Western New York High Performance Networked Video Initiative

Home ] About ] Live & VOD ] The Sandbox ] WNYPHN ] WNYPRI ] Comming Soon ] Activities ] Recent Events ] Help ] Contact ] Sponsors ]

News Index ] Library ] Links ] [ Tools ] Membership ] Wanted ] IVX ] Site Map ]
Edited & Last Updated 6/27/2001 by jow

Tools

Jimmy's Cheap Latency Tool

Skip all the verbage, where's the meat?  OK, I tried that, the darn thing needs some runtime library.

This is a simple cheap Saturday Night Special tool for measuring round-trip latency accurately over a videoconferencing path, either ISDN or IP.

Some time in 4Q99, I had been focused on VC quality issues and there had been a lot of discussion centered on the affects of path latency on the humans involved without having any accurate means of actually measuring it.  We used a clap-test to semi-quantitatively measure A/V synchronization but had absolutely no means of even semi-quantitatively measuring latency.  With this backdrop, I set out to try to conceive of a cheap practical way to accurately measure latency in that context in some way that would not only be reproducible world-wide but that could be used for evaluation of the latency contributions of the various components making up a VC "circuit."  In this way, a circuit measurement tool might be used for individual component measurements as well.

I was initially drawn to the notion of a child's phonograph player with a radius-line image on the platter as a camera target at one end, looped-back A/V on the remote end, and visual angular difference measurements for deriving latency fairly accurately.  My presumption was that such players are widely available and operate at a world-constant rotational speed.  Unfortunately, phonograph players are now being obsoleted by CD players and are rising rapidly in cost.

I had used Microsoft's Visual Basic some years before to quickly develop an extended functionality software ISDN telephone for proof-of-concept control and data logging/analysis telephony applications and returned to it for this application.  My intent was to produce a rotating display whose angular position accurately reflected the instantaneous value of the system hardware clock.

What you see is the result of on the order of 100 hours of development time, most of which probably went into putzing with the frills that, in typical old system programmer fashion, allow greater control over all the options that fell out during development.  The program uses a system recall function to try to suspend itself for some defined period of time.  The display shows the requested recall period and the actual clock difference.  Different OS variants (NT4, Win95, Win98 ...) seem to have built-in differences in minimum recall periods and clock granularity.   A control was added to vary the size of the rotating arm and to invert the image as well.

In use, one simply runs the program full screen, feed a scan converted screen image to the local VC system, loops back the remote system and notes the time difference on the transmitted and received displays.  Proper PIP placement makes it easy.

Jimmy's Cheap Latency Tool binary.  Visual Basic Runtime Library that must be in the same directory, if not installed on your system.

 


      

blogo.gif (62118 bytes)           

           

This is a Web site developmental model.  The Web site will likely always be a few steps behind or ahead of the design sketched out in an accompanying design planning outline.  This site will be viewed best using IE 5+.    Please direct any and all comments to:  whitlock@buffalo.edu