Calf plugin doesn't look the same

Hi,

Wonder why “my” calf plugin doesn’t looks like they to on their website - the gui isn’t the same. And I’m missing the Analyzer plugin.

http://calf.sourceforge.net/

//Tobbe

Hi,

“however Tobbe will probably be disappointed to find out that even if he gets a package with the newer GUI’s shown on the Calf website they will still incorrectly display in Harrison Mixbus 2.2”

Guess I have to live with it then. If the plugin is working it’s good enough for me, but it would be nice to have a good looking GUI to work with. I like Nomad Factory’s GUI, I think they are excellent. And of cource linuxdsp - they are top notch.

//Tobbe

@jamiejessup: can you get on IRC to discuss this sometime?

Definitely! We’ll keep this PG-13 for the forums ;).

@GMaq

An interesting behaiviour that I noticed was that if I didn’t “make install” Ardour when I was building it on my system the GUIs were showing up nicely apart from fader movement (faders became horizontal lines once clicked, then back to normal once released). Then once I did “make install” I started getting the GUIs from your screenshots. Perhaps a path issue? Even the Ardour 3 GUIs looked different after doing make install.

As an aside, I am using DreamStudio 12.04 (64-bit)

I had a issue report in on Mantis for this, but I thought it was most likely my system that was causing the trouble. Interesting to see that this is not just my system. Perhaps it should go back ;). Although, given that the version of Ardour2 that I am using from what ever repository DS uses, renders calf GUIs just fine, I beleive (perhaps naively) that the whoever is doing the building will get things working out as they did with Ardour 2.

@the C.L.A.

Good eye there! You are probably right if the Calf Package in Ubuntu Studio 12.10 is still at 0.0.18.6 then they will definitely have the older more GTK-like GUI’s and that will be a different issue, however Tobbe will probably be disappointed to find out that even if he gets a package with the newer GUI’s shown on the Calf website they will still incorrectly display in Harrison Mixbus 2.2 like this:

Normal Calf GUI (as seen in most Distro packages):
http://bandshed.net/images/screenshots/Organ.png

Calf GUI with Ardour 3 or Mixbus 2.2 Bundle:
http://bandshed.net/images/screenshots/OrganA3.png

Hi guys,

To make everything clear. I typed my Ubuntu distro wrong. I have Ubuntu Studio 12.10 installed (I forgot that I installed it couple of weeks ago). Maybe that causing some problems.

Thanks for you time and support.

//Tobbe

@the C.L.A. Perhaps this is one of those cases where there is after all a much simpler explanation to the problem :slight_smile:

However, the original post mentioned http://calf.sourceforge.net/
which implied they were built from source (I see that Ubuntu 12.10 is mentioned later) and I guess if Paul’s original comment is still correct then there could still be an underlying issue with the GUI and compatibility with some builds of ardour etc

The problem here seems to be more…

I'm using Ubuntu 12.10 ... I installed the calf plugin from synaptic or maybe it was via terminal: sudo apt-get install.
...wich according to packages.ubuntu.com are at version 0.0.18.6 and AFAIK still used the old GUIs. The new GUIs (shown on the website) and some additional plugins just started in the newest release (0.0.19) series.

@GMaq: I hope I’m not being critical of any developer specifically, other than to say that (from your description of the problem) it seemed that a ‘less optimal’ design methodology had been used. My approach isn’t 100% ideal either (but as I mentioned before, linux has its own special set of complexities with plugin UIs etc). One of my concerns (sometimes frustrations) with linux is that some things get so many work-arounds and tweaks layered upon them that we end up with a terrible convoluted ‘solution’ (there are some that would argue X11 is a bit like this under the lid) instead of just looking at the design and saying ‘perhaps we should do it differently’
I confess I haven’t studied the calf plugins code, but from your description it seemed as if they were using the theme engine to render the GUI control bitmaps and if true, I would say that is definitely the wrong approach (in this case) and there are far better, simpler and more reliable ways to accomplish the same thing for a plugin UI.

linuxDSP

Couldn’t agree more with your ‘lowest common denominator’ methodology and as both a user and distributor your plugins have always been a joy to work with in every host that supports them.

I would like to clarify that I'm not here to point any fingers and am just trying to give Ardour users a better explanation of why this issue exists as I have been grappling with it for quite some time. I don't mean to say and I am certainly not qualified to say anyone is at 'fault' because whether or not GTK is a viable choice for plugin UI's (it seems to be the general consensus that it isn't) the Calf developers would have no way of knowing about the bundle structure not working until it became apparent since Calf plugins work just fine on all Linux distros with Ardour versions built against the existing Syslibs within the various distros. My point is if the Calf devs made a mistake it was an 'honest mistake' and I think people using their plugins should be aware of that.

You also illustrate some important reasons and key differences why a commercial product and a FOSS project obviously have some major differences behind the scenes and also the kind of foundational development ‘infrastructure’ you are getting with a paid product.

Unfortunately I know too much about this whole subject and initially brought it to the attention of the Calf developers and the Ardour team, however it seems that there has there has been very little communication beyond that. Since Calf is a part-time FOSS project perhaps they have not had sufficient available time to dig into the issue and get the necessary changes in place, all I know is with Ardour 3’s imminent release and the growing number of Linux Mixbus users this issue has potential to create a great of misunderstanding and create a poor public impression for all parties involved regardless of the underlying causes.

If you are an Ardour or Mixbus user affected by this issue with Calf GUI’s I suggest dropping them an email OR file a bug on their sourceforge page. I have a feeling that it may not be obvious to the Calf devs just how many users are affected by this issue since at this point in time the bundles account for a relatively small percentage of working Ardour installs but as the popularity of the bundles increases this problem will become much more prominent.

Ops,

I forgot most information possible :slight_smile: sorry about that

I’m using Ubuntu 12.10 and Harrison Mixbus 2.2 the latest version I guess. I installed the calf plugin from synaptic or maybe it was via terminal: sudo apt-get install

//Tobbe

Hi,

To clarify this Calf GUI issue a bit, it affects the Ardour 2, 3 and Mixbus bundles because they have their own native GTK stacks in them with less optional ‘gtk-engines’ than usual Linux distributions have, specifically to display their GUI’s properly Calf plugins require the ‘gtk-pixbuf-engines’ because the knobs and faders etc used in the Calf GUI’s are pixmaps and can only currently be rendered properly with the pixbuf engine.

This is a tricky issue because Ardour should not have to provide custom gtk engines at all to simply provide plugin GUI’s, if one plugin developer uses gtk-engines-murrine and the next uses ‘gtk-engines-blahblah’ then this is just madness for both the Ardour developers and Ardour users. Calf is probably the number one collection of FOSS LV2’s available so they are very popular however they probably shouldn’t require any specific gtk-engine to work properly on all hosts, on the other hand this is not the fault of the Calf developers because their plugins have been in existence before Ardour and Mixbus went to bundled packaging so this issue was masked by the readily available variety of various gtk-engines in most Linux Distros.

Unfortunately this issue will require a fair bit of movement from one side or the other and will be somewhat disappointing for current users of Ardour/Mixbus bundles, I personally have had to go back to custom packaging of Ardour to avoid this and other LV2 GUI issues.

I don’t know all the technical details, but this just makes me think some fundamental design decisions went wrong, and therefore I don’t quite understand why there should ever be these kinds of problems. For example:

When I considered making plugins for linux, one of the key things had to be that they worked on all hosts which claimed to support the LV2 standard as it was at the time, that meant, any host (regardless of any LV2 this or that or whatever custom API extension the host may or may not support) and specifically, with any host UI toolkit (GTK, Qt, SDL, FLTK, Xlib, and many others I haven’t mentioned) and it must look the same on all hosts.

That leads to a very simple conclusion. You have to construct the UI from the ‘lowest common denominator’ e.g. what UI library has to be available on just about all linux systems. And that means Xlib (ok so its not too friendly for some GUI objects etc, but that’s why I spent a lot of time building a GUI engine, which could handle all that stuff and which could be portable… that’s the kind of stuff which as a developer you (expect to) get paid for… Plugin development or anything else of this nature isn’t easy and no-one should expect it to be)

The useful outcome of this is that Xlib based GUIs port very nicely to linuxVST so we can also integrate with commercial host applications such as renoise, energyXT (and, who knows, maybe even Bitwig etc) and the UI engine has also been ported successfully to Windows (GDI / GDI+), and even into Mac OSX using cocoa (objective C) or carbon frameworks. Which means the same plugins run on linux, and (thankfully sometimes…) Windows and Mac without too much extra effort.

If this is possible, surely we shouldn’t be having problems where the same plugin won’t even run the same on two different variants of linux (or even different hosts? )

…Welcome to the ‘art’ of plugin development - getting stuff to ‘just work’ across many distributions, hosts, plugin formats etc is what takes about 90% of the development and testing time and (contrary to what a lot of people seem to think) it is not easy. This is not just an issue with linux, although linux does have its own (in some ways masochistically, self inflicted) problems when it comes to making plugins - especially with reliable GUIs.

What version of the plugins do you have? Many distributions IIRC have a quite old version packaged, it may be that they changed around their GUI and your distribution doesn’t have it packaged in a recent enough version.

    Seablade

you also didn’t say what version of ardour you are using them with.

the current versions of the CALF plugins rely on loading a specific library to get the full appearance intended by their developer but this does not work when they are used with bundled versions of Ardour downloaded from this site. we are (trying to) work with CALF’s developer to come up with a fix for this.

I think the problem is fixed - I tested that with an Ardour Version 2.8.16 - the Calf Plugins work with the GUI very fine and with the new Ardour 3 - Version 3.5.74 - look pic -> http://www.imagebanana.com/view/yhs5yv1y/ardourcalf.jpg

I found an old Forum with that problem and they found this solution http://www.remastersys.com/forums/index.php?topic=2834.0