1JACK_IODELAY(1) General Commands Manual JACK_IODELAY(1)
2
3
4
6 jack_iodelay - JACK toolkit client to measure roundtrip latency
7
9 jack_iodelay
10
12 jack_iodelay will create one input and one output port, and then mea‐
13 sures the latency (signal delay) between them. For this to work, the
14 output port must be connected to its input port. The measurement is
15 accurate to a resolution of greater than 1 sample.
16
17 The expected use is to connect jack_iodelay's output port to a hardware
18 playback port, then use a physical loopback cable from the correspond‐
19 ing hardware output connector to an input connector, and to connect
20 that corresponding hardware capture port to jack_iodelay's input port.
21 This creates a roundtrip that goes through any analog-to-digital or
22 digital-converters that are present in the audio hardware.
23
24 Although the hardware loopback latency is the expected use, it is also
25 possible to use jack_iodelay to measure the latency along any fully
26 connected signal path, such as those involving other JACK clients.
27
28 Once jack_iodelay completes its measurement it will print the total
29 latency it has detected. This will include the JACK period length in
30 addition to any other latency in the signal path. It will continue to
31 print the value every 0.5 seconds or so so that if you wish you can
32 vary aspects of the signal path to see their effect on the measured
33 latency.
34
35 If no incoming signal is detected from the input port, jack_iodelay
36 will print
37
38 Signal below threshold... .
39
40 every second until this changes (e.g. until you establish the correct
41 connections).
42
43 To use the value measured by jack_iodelay with the -I and -O arguments
44 of a JACK backend (also called Input Latency and Output Latency in the
45 setup dialog of qjackctl), you must subtract the JACK period size from
46 the result. Then, if you believe that the latency is equally distrib‐
47 uted between the input and output parts of your audio hardware
48 (extremely likely), divide the result by two and use that for input
49 and/or output latency value. Doing this measurement will enable JACK
50 clients that use the JACK latency API to accurately position/delay
51 audio to keep signals synchronized even when there are inherent delays
52 in the end-to-end signal pathways.
53
55 Originally written in C++ by Fons Adriensen, ported to C by Torben
56 Hohn.
57
58
59
60
61
62
631.9.7 May 2011 JACK_IODELAY(1)