On Fri, 24 Jan 2003, Kai Vehmanen wrote:
> On Fri, 24 Jan 2003, Kjetil S. Matheussen wrote: > > >> What does "cat /proc/asound/card0/pcm0[cp]/sub0/[hs]w_params" output > > I'm at work now, and we ~only have delta cards. At home I use a built-in > > sound-card on an nforce chipset. But I get nearly the same good > > performance in pd here as at home. So here is delta44 parameters: > > Could you also send an output of pcm0[cp]/sub0/status...? > Anyway, this is very good info. > kjetism@hensten /div/notam02/site/qt-x11-free-3.1.1 $ more /proc/asound/card0/pcm0c/sub0/hw_params access: RW_INTERLEAVED format: S32_LE subformat: STD channels: 12 rate: 44100 (44100/1) period_size: 64 buffer_size: 1728 tick_time: 1953 kjetism@hensten /div/notam02/site/qt-x11-free-3.1.1 $ more /proc/asound/card0/pcm0c/sub0/sw_params tstamp_mode: NONE period_step: 1 sleep_min: 0 avail_min: 64 xfer_align: 64 start_threshold: 1811939328 stop_threshold: 1811939328 silence_threshold: 0 silence_size: 0 boundary: 1811939328 kjetism@hensten /div/notam02/site/qt-x11-free-3.1.1 $ more /proc/asound/card0/pcm0p/sub0/hw_params access: RW_INTERLEAVED format: S32_LE subformat: STD channels: 10 rate: 44100 (44100/1) period_size: 64 buffer_size: 1728 tick_time: 1953 kjetism@hensten /div/notam02/site/qt-x11-free-3.1.1 $ more /proc/asound/card0/pcm0p/sub0/sw_params tstamp_mode: NONE period_step: 1 sleep_min: 0 avail_min: 64 xfer_align: 64 start_threshold: 1811939328 stop_threshold: 1811939328 silence_threshold: 0 silence_size: 0 boundary: 1811939328 > > kjetism@hensten /proc/asound/card0/pcm0c/sub0 $ more hw_params > [...] > > period_size: 64 > > buffer_size: 1728 > > So I guess this explains a lot. This equals to running jackd > with "-p 64 -n 27" (and not as root or otherwise it will throw clients > out if they miss one 64 frame deadline). > > I'm quite sure you get much more reliable performance this way, although > JACK doesn't take advantage of multip-period buffer configurations very > well. And this has its reasons. With a setup like shown above, you either > get a huge latency (64*1728/44100*1000=2500ms), or you get latency jitter > (latency varies between 1.45ms->2500ms). Both are something we'd _really_ > want to avoid. > > Because of the above reasons, JACK is designed for two or three > period operation (-n 2 or -n 3). This way we can achieve both low > latency and avoid latency jitter. We could improve reliability by > sacrificing one or both of these goals, but for many of the use scenarios > we are aiming at, this is simply not acceptable. > Pd does not run with 2500ms standard latency, thats for sure. So if your theory is correct, and it probably gives latency jitter, it must do a pretty good job at making it unhearable. Wouldnt it be a good idea to have an option for jack to hide latency jitter? Or is it to much work (hacking) with the design model? --