jack_delay - JACK sound card latency meter
jack_delay can be used to measure the round-trip latency of a soundcard. To do this, start the program and connect like this: jack_delay -> playback_port -> cable from soundcard output to input -> capture port -> jack_delay
jack_delay generates a signal consisting of 13 sine waves, measures the phase difference between the input and output for each of these, and computes the delay from those phase differences. The algorithm used is one developed originally for satellite ranging - that is measuring the distance between a satellite and a ground station. With a good sound card jack_delay will measure the round-trip latency with an accuracy of around 1/1000 of a sample. The assumption is that the delay is more or less independent of frequency. The actual value displayed is the one for a frequency of 1/16 of the sample rate. The phase measurement for this frequency of course only provides a result in the range of 0..16 samples. The other frequencies are used to extend this interval to 4096 * 16 samples, more than a second at 48 kHz.
jack_delay was written by Fons Adriaensen <firstname.lastname@example.org>.
This manual page was written by Jaromír Mikeš <email@example.com> for the Debian project (but may be used by others).