[Jack-Devel] Adjustable port alias limit
swansong.tech at gmail.com
Mon Jan 28 16:54:31 CET 2019
Greetings! I attempted to see if there was any work or discussion on this,
but brought up nothing, I hope I am not duplicating some effort/thought
I recently developed a small script allowing me to assign ports to groups,
using aliases, so that I may autoconnect these groups to ardour buses.
However, I quickly discovered there is a limit of two aliases per port,
which is admittedly workable, but not pleasantly so. perhaps there is a
better method of achieving this functionality? but I wanted to continue
So I've patched a local copy of jack2 to allocate an array for aliases per
port, and allow its size to be specified via the compile time flag
--aliases-per-port. However, the implementation is not the best, I needed
to introduce a seperate version of jack_port_get_aliases, suffixed with _b,
which can be used in conjunction a new function, jack_port_max_aliases, to
safely retrieve aliases beyond the first two. applications using the old
jack_port_get_aliases will still be shown only the first two aliases in the
list. however the matching functions will match against all aliases.
Additionally there is what looks like serialization&matching code in
JackDriver, which i have not yet attempted to patch.
I've also patched copys of jack-matchmaker and luajack to make use of this.
I dont imagine such functionality would be accepted into jack in its
current state? it seems there is sort of a bind here regarding external api
design. I would love to contribute this to jack, so i'm emailing to see
what the possibility of that is, and if anyone has any ideas about how to
go about it. I am willing to patch jack1 as well for it, the relevant code
looks near identical. I would also like to dynamically manage the array
size or string memory allocation, perhaps within the limit, as statically
allocating even port_num*(alias_limit=8)*name_size to store mostly unused
aliases seems rather heavy, but it looked like everything regarding ports
is statically allocated for a reason?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Jackaudio