Linux Vst3 Reaper Bitwig

Linux Juce Vst3 plugins seem to work ok with Linux Reaper but seem to have problems with Linux Bitwig.

The Vst3 Window comes up on Bitwig but the Vst3 does not respond to mouse clicks.

I tested updating the Window with some timer delayed text and it did update.

Seeing that the Window text updated and that the Window does not respond to mouse clicks might suggest a focus/mouse problem.

Affects plugins such as KlangFalter https://github.com/HiFi-LoFi/KlangFalter and others.

Heya! I had a similar problem with both surge (which isn’t a juce plugin and where I hand rolled the Linux vst3 event loop) and our juce plugin.

I’ve been working with the bitwig team. The freeze I saw in both vst3s (which matches yours) is fixed in the dev version of bitwig I just ran and should be corrected in the upcoming 3.2 beta 4. They were happy for me to let you know this here in the forum too (I’m just an opensource programmer not a bitwig team member)

If you look in your bitwig log you may see something like warning unregister unknown handler. The innards of the vst3 runloop are painful but bitwig team has fixed the thing that makes that log message.

2 Likes

Thanks for the info.

Interesting, thanks! I was testing this with JUCE-based VST3s and noticed that the event handler wasn’t being called for the X11 fd and it sounds like this should fix it. Do you know when this beta will be available?

Yeah that’s exactly what I saw in surge and then also in our juce plugin. The problem (short version) was that the VST3 api (as you know) as registerHandler( handler *, fd ) and unregisterHandler( handler ), but bitwig was making one handler and then multiplexing internally, so if you did something that registered a new handler transiently (like initialize another xcb or something) it would unregister the same handler as for the main xcb loop. I also had some bugs in surge which had us confused for a bit but once i got those fixed with reaper and your (super duper useful) audiopluginhost we found it.

I got the impression that 3.2 beta 4 will be out ‘shortly’ but I don’t have a date.

So now the only thing left for me releasing vst3s of all our juce plugins automatically from our CI pipeline is Building my VST3 with Linux and JUCE6 - couple of tiny things which I know @reuk is looking at. I am very excited!

I added a fix for the Linux naming issue on the juce 6 branch, so VST3 plugins built with CMake on Linux should work as expected now. Please let me know if you run into any other issues.

Hi @reuk

Unfortunately I’m still seeing same. But it may be me!

Here’s my commands

git clone https://github.com/baconpaul/tuning-workbench-synth.git
cd tuning-workbench-synth
git checkout juce6
git submodule update --init --recursive
cmake -Bbuild
cmake --build build --config Release

That uses this mornings head of juce6 as a submodule

paul@ubuntu:~/dev/cb/tuning-workbench-synth$ (cd lib/JUCE; git log | head -3)
commit eeff1e61744114f9076882ceaafda30c9c684c53
Author: ed <eddavies95@gmail.com>
Date:   Wed Apr 29 09:42:11 2020 +0100

But when I look in the resulting VST3 the name of the resulting library in the package is still ‘.vst3’ not ‘.so’

paul@ubuntu:~/dev/cb/tuning-workbench-synth$ find build/tuning-workbench-synth_artefacts/TuningWorkbenchSynth.vst3/ -print
build/tuning-workbench-synth_artefacts/TuningWorkbenchSynth.vst3/
build/tuning-workbench-synth_artefacts/TuningWorkbenchSynth.vst3/Contents
build/tuning-workbench-synth_artefacts/TuningWorkbenchSynth.vst3/Contents/x86_64-linux
build/tuning-workbench-synth_artefacts/TuningWorkbenchSynth.vst3/Contents/x86_64-linux/TuningWorkbenchSynth.vst3

The last line is the problem. That file in Contents should be named .so. If I apply the patch in that other issue it gets fixed. But it may be me too. Am I doing something wrong?

You’re absolutely right, sorry! I added a fix on a testing branch but it looks like it hasn’t made its way to develop yet. I’ll add it now.

1 Like

awesome. i’ll pull the juce6 branch and try again later on today or this evening! Thanks

Everything worked great. Thank you!

1 Like

Bitwig 3.2 beta 4 came out and we confirmed that both surge (non juce) and tws (juce6) Linux vst3 work fine in it now

1 Like