Re: [Jackit-devel] Re: [PD-announce] Re: [linux-audio-dev] ANN: k_jack v0.0.0.5 and Mammut v0.15

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [Jackit-devel] Re: [PD-announce] Re: [linux-audio-dev] ANN: k_jack v0.0.0.5 and Mammut v0.15
From: Kai Vehmanen (kai.vehmanen@wakkanet.fi)
Date: Fri Jan 24 2003 - 18:09:50 EET


On Fri, 24 Jan 2003, Paul Davis wrote:

> no, there's likely not much latency jitter in pd either. after the
> first 27 periods are filled (which happens in about 39ms), every chunk
> of audio delivered by pd to the hardware will be output by the
> hardware about 38ms later. the jitter is limited to about 1.45ms,
> assuming that pd is roughly keeping up with the hardware. of course,

But there's no way a normal user-space can reliably wake-up every 1.45ms
and manages do finish i/o for next period. The application is bound to
late, much of the time. This is not necessarily fatal if the application
is able to catch up. This is precisely the reason why you can get very
reliably processing with ecasound using -z:intbuf option (maximize use of
soundcard hw buffering).

> However, as Kai pointed out, nobody runs JACK with -p 64 -n 27, and if
> they did, I suspect that they'd get similar performance to pd. it

Actually, with current jackd you cannot use -p 64 -n 27, as it will
throw the "delay of %.3f usecs exceeds estimated spare time of %.3f;
restart ..." error and stop the alsa_driver. I made a patch that bypasses
this check and managed to get jackd running with -p 64 -n 27. And indeed,
it runs reasonably well on my laptop (normal user space), but I still
get xrun from ALSA. Below are some stats. As you can see from the
'delay' values, the latency jitter is considerable, even though the test
machine was not doing anything else than jackd+ecasound playback.

--cut--
[xxx]$ cat /proc/asound/card0/pcm0p/sub0/{sw_params,hw_params,status}
tstamp_mode: NONE
period_step: 1
sleep_min: 0
avail_min: 64
xfer_align: 64
start_threshold: 0
stop_threshold: 1728
silence_threshold: 0
silence_size: 0
boundary: 1811939328
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 64
buffer_size: 1728
tick_time: 10000
state: RUNNING
trigger_time: 1043423501.808278
tstamp : 1043423507.253736
delay : 1204
avail : 524
avail_max : 704
-----
hw_ptr : 240268
appl_ptr : 241472
[xxx]$ cat /proc/asound/card0/pcm0p/sub0/{sw_params,hw_params,status}
tstamp_mode: NONE
period_step: 1
sleep_min: 0
avail_min: 64
xfer_align: 64
start_threshold: 0
stop_threshold: 1728
silence_threshold: 0
silence_size: 0
boundary: 1811939328
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 64
buffer_size: 1728
tick_time: 10000
state: RUNNING
trigger_time: 1043424884.923610
tstamp : 1043424886.101041
delay : 1678
avail : 50
avail_max : 1728
-----
hw_ptr : 51762
appl_ptr : 53440
--cut--

--
 http://www.eca.cx
 Audio software for Linux!


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Fri Jan 24 2003 - 18:42:23 EET