[Ardour-Users] GUI toolkit support
Will J Godfrey
WillGodfrey at musically.me.uk
Fri Nov 16 09:29:12 PST 2018
On Fri, 16 Nov 2018 17:56:23 +0100
Robin Gareus <robin at gareus.org> wrote:
>On 11/16/2018 05:40 PM, m.eik michalke wrote:
>> Am Freitag, 16. November 2018, 16:13:31 CET schrieb Lukas Pirl:
>>> If one likes fancy or generic interfaces is another discussion and
>>> personal preferences.
>>
>> thank you. you're right: i actually didn't ask who likes those plugins, but i
>> wanted to know if they will no longer work.
>
>calf is actually moving away from gtk towards their own toolkit CTK:
>https://github.com/calf-studio-gear/ -- guitarix may indirectly
>benefit from this, too.
>
>> if so, isn't it ironic that ardour is planning to drop support for plugins
>> that work well in some environments, because it wants more plugins for all
>> environments? i don't see where the one prevents the other.
>
>Ardour is not planning anything like this.
>
>That restriction has always been there, so far most users were just
>lucky to not be affected by it. It is a technical issue:
>
>Plugins cannot know about each other, and hence must be self-contained.
>
>Say you write a plugin that needs ffmpeg and uses the newer
>libswresample2 interface, and another author writes a plugin that uses
>the older libswresample1 API. Now you dynamically link both.
>
>Distros may even package both library versions, and you can compile and
>link, but if you load both at the same time in the same host, there is a
>conflict.
>
>It is the same for QT4/QT5, gtk2/3: They can be installed at the same
>time, but cannot co-exist in a single application.
>
>You may also remember https://github.com/FFTW/fftw3/issues/16 which
>caused crashes when multiple plugins that do not know about each other
>used it fftw as shared library (static builds were not affected).
>
>The only way to ensure reliable operation is to statically link and make
>plugins self-contained (or process-separate plugins, but then you get
>context switches which are very expensive, even on modern machines).
>
>
>Some pro-audio distros (AVLinux, KXStdio) went to great length to
>statically link plugins whenever possible, even if upstream and other
>GNU/Linux distros don't not directly support it. Toolkits like falktx'
>DPF also facilitate that.
>
>
>However what Ardour will likely to only support wrapping native Window
>types: X11 (perhaps also wayland) on Linux, NSView on Mac, HWND on
>Windows. That is orthogonal though. All Linux Plugins do currently use
>X11, regardless of toolkit.
>
>I hope that clarifies things.
>Cheers!
>robin
OK, I see the problem. However I guess it gives plugin developers two
unfortunate options.
1/ Re-invent the wheel and design your own toolkit (bug free).
2/ Find the smallest statically linkable toolkit you can and swallow the extra
footprint.
--
It wasn't me! (Well actually, it probably was)
... the hard part is not dodging what life throws at you,
but trying to catch the good bits.
More information about the Ardour-Users
mailing list