Re: Jack Problems

Robin Gareus <[email protected]> Tue, 26 Mar 2019 23:02:54 +0100
Newsgroups gmane.comp.audio.jackit
Message-ID <[email protected]>
On 3/26/19 11:33 PM, John Rigg wrote:
> On Tue, Mar 26, 2019 at 10:12:32PM +0100, Kjetil Matheussen wrote:
>> On Tue, Mar 26, 2019 at 10:01 PM Fons Adriaensen <[email protected]> wrote:
>>>
>>> The VERY LAST thing I'd want in such a system is a gain control
>>> on each Jack connection. One very big advantage of digital
>>> connections, be they MADI, ADAT, Jack, or Dante, is that signal
>>> levels at all inputs and outputs are exactly defined and can't
>>> change. Setting up a a similar system using analog connections
>>> with variable gains would be a real nightmare.
>>>
>>
>> Sure, I'm just saying that extending jack with a volume control for
>> each connection would be a good thing, for those who need it, which I
>> guess would be the most of us. You are of course free not to use it if
>> you don't need it.
> 
> If anyone does this please make turning it off a compile option.
> I can see it causing big problems in a complex setup.
> 

and disable it by default and add excessive warnings to not enabled it :)


When this is implemented there are no zero-copy shared buffers anymore.
Port buffers have to pass through a gain-stage first.

Also, direct client-to-client wakeup will not be possible anymore. A
client first has to call some gain-stage or return execution to jackd to
apply the gain. This adds an extra context switch.

Last but not least, gain-changes should be gradual, free of zipper
noise, so there's more complexity.

One of JACK's main concepts was that it provides a mechanism (not
policy). That's also why ports don't include delaylines to compensate
for latency. JACK is supposed to just pass data around and make
information available, not process data.


That being said, you can probably achieve what you want using an
internal-client that implements a gain-stage. Then insert that in
strategic places. Perhaps use the meta-data API to configure it, that
would also get around the issue with port-ownership to control it.

2c,
robin

_______________________________________________
Jack-Devel mailing list
[email protected]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEwak9kdzQUxfAUWyqoJC84Cz1fwQFAlyaoY4ACgkQoJC84Cz1
fwSi3w//fMLZktncJjOe0TjYepfX6FFdA8rmAQl6PCcWBnI+iufpEstztY5j/ltc
/FBv/dZo/aJFRl2AM5nCAtfLmfOGCg4GPPNkEkKdaO/DBsldiI3xPayNjry8Oddx
dEaJcAEoE/PdTV9SrxkOarZu/iJ0ikMS+lZ2Ein9zjyDjIheAqSVSrxTF8h5bD8c
EsKfNZWih/855R3XL9sHfTAIBuTmj8D4uzYuk7jePdrh1gR1qe6hj1uXJx6yjkZY
rb1Wq0pVLtIQIyICz1MZ5PN6kU8O9meA090EUTWi5a24OkLR1cTyuvCixcz83Vq2
I6emwmCkKZGwHafUrlLhF+VrS5M05IfLLL9n5x8YsbkruC9syyEoAVtzhkOnOSPs
XR/dz9+2zgC0iH5N/HnYT383onOk0SJfhsqJi1gIq8znV8t9StNPI7FIm65z10VV
ggAzkM/R2ApTQ28zhkWEenO5jFYmK3d30V+PfwRp7Y7/1HZ4+3DnxgzNaOHcaePA
qyj+N9VGsHNs9zfjZQikTkqh9oOkNgjA/1DKG+9D7eaQ7T2Ba0Hx0q1vxGmUg2DI
FPgOsbjHoQhts3XLkRlrawK4nHBaTiUuW7CKHQc6Nq4ZQN95YHgLGJdUTiByMoJp
Fh64uC7LKZGXy37b14VwLHJvdzcQcI4EZAzupFtdZj/2kLWzqRo=
=ZccG
-----END PGP SIGNATURE-----