[LAU] Testing JACK and PA latency

Patrick Shirkey pshirkey at boosthardware.com
Thu Sep 19 10:26:27 UTC 2013


On Thu, September 19, 2013 8:04 pm, Patrick Shirkey wrote:
>
> On Thu, September 19, 2013 7:42 pm, Fons Adriaensen wrote:
>> On Thu, Sep 19, 2013 at 06:46:11PM +1000, Patrick Shirkey wrote:
>>
>>> jack_system (in) -> pa_source (in) -> audacity (in) -> audacity (out)
>>> ->
>>> pa sink (out) -> jack_system (out)
>>>
>>> Audacity is run in pass through mode with internal latency set to 0.
>>>
>>> I would like to measure the round trip latency from jack_system (in) to
>>> jack_system (out)
>>
>> Easy using jack_delay.
>>
>> 1. Measure the round-trip latency of your sound card (with an
>> external analog loop).
>>
>
> Can I use jack_delay running on a second computer connected to the
> external i/o of the first computer to get this value?
>
>
>> 2. Measure
>>
>>   jack_delay -> pa_source -> audacity -> pa_sink -> jack_delay.
>>
>
>
> Does this look reasonable?
>
>   1023.978 frames     21.333 ms total roundtrip latency
> 	extra loopback latency: 1023 frames
> 	use 511 for the backend arguments -I and -O
>   1023.976 frames     21.333 ms total roundtrip latency
> 	extra loopback latency: 1023 frames
> 	use 511 for the backend arguments -I and -O
>   1023.977 frames     21.333 ms total roundtrip latency
> 	extra loopback latency: 1023 frames
> 	use 511 for the backend arguments -I and -O
>


If I use ecasound instead of audacity:

ecasound -f:32,2,48000 -b:32 -i alsa -o alsa


  8095.992 frames    168.667 ms total roundtrip latency
	extra loopback latency: 8095 frames
	use 4047 for the backend arguments -I and -O
  8095.992 frames    168.667 ms total roundtrip latency
	extra loopback latency: 8095 frames
	use 4047 for the backend arguments -I and -O
  8095.992 frames    168.667 ms total roundtrip latency
	extra loopback latency: 8095 frames
	use 4047 for the backend arguments -I and -O
  8095.994 frames    168.667 ms total roundtrip latency
	extra loopback latency: 8095 frames
	use 4047 for the backend arguments -I and -O


ecasound -f:32,2,48000 -b:64 -i alsa -o alsa

  9280.000 frames    193.333 ms total roundtrip latency
	extra loopback latency: 9280 frames
	use 4640 for the backend arguments -I and -O
  9280.000 frames    193.333 ms total roundtrip latency
	extra loopback latency: 9280 frames
	use 4640 for the backend arguments -I and -O
  9279.999 frames    193.333 ms total roundtrip latency
	extra loopback latency: 9279 frames
	use 4639 for the backend arguments -I and -O




>
>
>> 3. If pa_source and pa_sink are a single Jack client (probably not),
>>    subtract one period from the result of (2).
>>
>
> Can you explain that with the data above?
>
>
>> 4. Add the two values.
>>
>
> I would like to provide an app for this task. Do you think it would be
> worthwhile to extend jack_iodelay for this purpose?
>
>


--
Patrick Shirkey
Boost Hardware Ltd


More information about the Linux-audio-user mailing list