Hi Robin,
On 03/08/2012 02:25 PM, Robin Gareus wrote:
On 03/08/2012 11:59 AM, Giso Grimm wrote:
[..]
Hi Giso,
Getting off topic, but I'm curious: Earlier jack1 aka jack-0.X versions
can produce clicks or even x-runs when connecting ports. Is that still
an issue with 0.121.2 ?
Neither jack 0.121.2 nor jack 1.9.7 does produce xruns (like those
reported by jack when it is not fast enough to handle the sound card data).
jack 1.9.7
giso@helios:~$ time (for k in system:playback_{1..26}; do jack_connect
system:capture_1 "$k"; done)
real 0m3.729s
user 0m0.056s
sys 0m1.645s
..and how many audible clicks, xruns?
no audible click, no xrun
jack 0.121.2
giso@helios:~$ time (for k in system:playback_{1..26}; do jack_connect
system:capture_1 "$k"; done)
real 0m0.198s
user 0m0.031s
sys 0m0.107s
..and how many audible clicks, xruns?
sometimes one audible click, no xrun (sine test tone on an independent
signal graph)
btw, the time seems to scale with the fragment size:
1024 samples/fragment:
giso@helios:~$ time (for k in system:playback_{1..26}; do jack_connect
system:capture_1 "$k"; done)
real 0m2.419s
user 0m0.029s
sys 0m0.811s
4096 samples/fragment:
giso@helios:~$ time (for k in system:playback_{1..26}; do jack_connect
system:capture_1 "$k"; done)
real 0m9.677s
user 0m0.017s
sys 0m0.823s
Glitch-free connections are nice, but jack sessions with several hundred
ports/connections make jack2 nearly unusable in terms of connection time
:-( It looks as if it would take four cycles to complete a port
connection. I think here is some space for improvement (e.g. allow
asynchronous connections and return immediately from jack_connect), but
maybe this will come with all the session management solutions...
(actually both versions have their pros and cons, which is the reason
for me to switch often between them, depending on my actual needs).
Giso