[ANN] yabridge 5.1.0, a long-awaited maintenance release

Discuss running non-Linux applications and plugins on Linux, for example via wine

Moderators: MattKingUSA, khz

robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

Re: [ANN] yabridge 3.2.0, with greatly reduced VST2 bridging overhead and a lot of fixes

Post by robbert-vdh »

Haha yeah that's very true. Having the bits in place to make plugin bridging work out of the box seems much more important than actually having some plugins preinstalled. And if you ask ten mixing engineers what the best compressor plugin is, you'll get ten different answers. :D
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.2.0, with greatly reduced VST2 bridging overhead and a lot of fixes

Post by GMaq »

I think I will put this on my todo list for the next actual full version (probably after bullseye is released), thanks for your answers and insights..
User avatar
sunrat
Established Member
Posts: 915
Joined: Wed Jul 22, 2020 2:08 pm
Has thanked: 151 times
Been thanked: 242 times

Re: [ANN] yabridge 3.2.0, with greatly reduced VST2 bridging overhead and a lot of fixes

Post by sunrat »

GMaq wrote: Tue May 04, 2021 8:49 pmI really should get out of the Plugin business completely... have Wine-Staging there... have the bridging there and let the User place their own plugins in their home folder and just let your stuff work like it defaults.. Sometimes we start things to make it easier and down the road it becomes a pretzel..
I like this idea. As you know I have great respect for you and AVL, but the sheer overwhelming number of preinstalled plugins was one of the reasons I decided to roll my own distro with a subset including only the ones I use (although DE was the main reason). On the flipside, if it weren't for AVL I wouldn't have had a showcase to decide which ones I liked. What you lose on the swings you gain on the roundabouts. :lol: Maybe a standard base version and a showcase version similar to current would fit both use cases?
Sorry, a bit OT for this thread.
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.2.0, with greatly reduced VST2 bridging overhead and a lot of fixes

Post by GMaq »

sunrat wrote: Tue May 04, 2021 11:41 pm
GMaq wrote: Tue May 04, 2021 8:49 pmI really should get out of the Plugin business completely... have Wine-Staging there... have the bridging there and let the User place their own plugins in their home folder and just let your stuff work like it defaults.. Sometimes we start things to make it easier and down the road it becomes a pretzel..
I like this idea. As you know I have great respect for you and AVL, but the sheer overwhelming number of preinstalled plugins was one of the reasons I decided to roll my own distro with a subset including only the ones I use (although DE was the main reason). On the flipside, if it weren't for AVL I wouldn't have had a showcase to decide which ones I liked. What you lose on the swings you gain on the roundabouts. :lol: Maybe a standard base version and a showcase version similar to current would fit both use cases?
Sorry, a bit OT for this thread.
What is really ironic is I personally use Ardour and about 12 Plugins (half are u-he and old linuxDSP or the new ACM).. I very rarely use WIndows VSTs anymore and I also annoy myself with the lists and lists and lists of Plugins... :lol:

I can't really change everything mid-stream but my girlfriend and I are doing Keto right now, maybe it's time to put AVL-MXE on Keto too!

Anyway... apologies to robbert-vdh... we now return our scheduled programming to the actual topic of this thread!
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

[ANN] yabridge 3.3.0, gotta go fast edition

Post by robbert-vdh »

This is the gotta go fast edition. Yabridge's priorities have always been user experience, compatibility, and then performance. In that order. Now that the first two are in a decent place, it was time to take a closer look at improving performance. This new update considerably reduces the overhead of bridging Windows VST2 and VST3 plugins with yabridge. More importantly, all of these optimizations should make this overhead much more stable and reliable, meaning that you will be less likely to run into xruns. In addition, this update also fixes a few important edge cases issues. Most notably, it is now possible to use ujam and LoopCloud plugins through a new yabridge.toml option, and crashes can no longer leave JACK and Ardour in unusable states.

A full changelog with an exhaustive list of changes, improvements and fixes can be found here:

https://github.com/robbert-vdh/yabridge ... /tag/3.3.0
Last edited by robbert-vdh on Wed Jun 09, 2021 3:03 pm, edited 1 time in total.
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

[ANN] yabridge 3.3.1

Post by robbert-vdh »

This is just a small bugfix release. The most important fixes in this release are for compatibility issues with Shattered Glass Audio plugins, as well as mouse clicks being offset vertically for VST2 plugins in Tracktion Waveform.

A full list of changes and fixes can be found here:

https://github.com/robbert-vdh/yabridge ... /tag/3.3.1
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

Re: [ANN] yabridge 3.3.1

Post by robbert-vdh »

@GMaq Since you asked about this, here is a 64-bit Windows VST2 plugin, running through a 32-bit version of yabridge's VST2 plugin bridge, in a 32-bit Bitwig plugin host process, in 64-bit Bitwig Studio! As it turned out it actually only took one tiny change to get this to build (Meson really doesn't want to link to a 32-bit version of Boost on a 64-bit system). I'm not planning on actively supporting these builds in the releases and on the CI since there aren't any 'normal' circumstances where you'd still need 32-bit plugins, but it's super easy to build this for any distro from a Docker container. Oh and 64-bit Windows plugins will obviously only work on a 64-bit Linux system. On an actual 32-bit Linux system only the 32-bit Wine plugin host applications will be able to run.

I couldn't find any 32-bit Linux plugin hosts that support VST3, but that should also work perfectly fine!

Image
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.3.1

Post by GMaq »

Whoa genius much?!

OK so if I were foolhardy enough to try this out are you telling me?:

If I run a 32bit Linux DAW host (no secret... energyXT) on a 64bit distro I can run 32 and 64bit Windows VST 2/3 on a 64bit Linux system?

I'm not exactly Docker savvy (I obviously know what it is) would you mind PM'ing me (or correspondence of your choice) with some tips or is it possible to get a one-time build for testing? I would never expect something this niche to be maintained of course. Unfortunately my VPN seems to not agree with Discord for some stupid reason.. :roll:
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

Re: [ANN] yabridge 3.3.1

Post by robbert-vdh »

GMaq wrote: Thu Jun 24, 2021 4:13 pm Whoa genius much?!

OK so if I were foolhardy enough to try this out are you telling me?:

If I run a 32bit Linux DAW host (no secret... energyXT) on a 64bit distro I can run 32 and 64bit Windows VST 2/3 on a 64bit Linux system?

I'm not exactly Docker savvy (I obviously know what it is) would you mind PM'ing me (or correspondence of your choice) with some tips or is it possible to get a one-time build for testing? I would never expect something this niche to be maintained of course. Unfortunately my VPN seems to not agree with Discord for some stupid reason.. :roll:
Yeah this will let you use both 32-bit and 64-bit Windows VST2 plugins within EnergyXT! I just built these binaries from git HEAD on Ubuntu 18.04 (so they should work just fine on anything Debian Buster based). Just extract the attached files to ~/.local/share and use yabridgectl to set up the plugins as normal. It wouldn't really be possible to have both the regular 64-bit and this 32-bit version of yabridge installed side by side, but you can just swap out the files and rerun `~/.local/share/yabridge/yabridgectl sync`. The version of yabridgectl included is 64-bit, so for an actual 32-bit distro I'd need to cross-compile a 32-bit one. For future reference, I did this to compile a statically linked version of yabridge with 32-bit libraries and bitbridging enabled:

Code: Select all

docker run -it --rm  --user=$(id -u):$(id -g) --volume=$HOME/Documenten/projecten/yabridge:/repo robbert/docker-yabridge:bionic

cd /repo
meson setup build-32 --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dwith-static-boost=true -Dwith-bitbridge=true -Dcpp_link_args='-mwindows -static-libstdc++' -Dbuild.cpp_args='-m32' -Dbuild.cpp_link_args='-m32 -static-libstdc++'
ninja -C build-32

mkdir yabridge
cp build-32/libyabridge-{vst2,vst3}.so build-32/yabridge-{host,group}{,-32}.exe{,.so} yabridge
cp CHANGELOG.md README.md yabridge

ARCHIVE_NAME=yabridge-$(git describe --always)-ubuntu-18.04-32bit.tar.gz
tar -caf "$ARCHIVE_NAME" yabridge
rm -rf yabridge build-32
You apparently can't attach files larger than 256 kB. I can't think of a convenient place to upload this where the file won't be deleted after a day or two, but this link should keep working: (this version wasn't packaged properly, try the link from a couple of posts down)

EDIT: Almost forgot, you'll also need an updated version of yabridgectl to have this work with VST3 plugins (that's probably not relevant here, but still). After logging in to GitHub, you can grab the latest version of yabridgectl from this page by selecting the latest build with a green checkmark next to it and downloading the yabridgectl archive near the bottom of the build page.
Last edited by robbert-vdh on Sat Jun 26, 2021 3:55 pm, edited 6 times in total.
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.3.1

Post by GMaq »

@robbert-vdh

Thanks so much for humoring my silly whim! I'm just walking by my desk right now but I will dive into this later today and assemble all the pieces and hopefully return with some cool screenies!

Again, I'm very grateful for your time!! *tips hat *bows low
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.3.1

Post by GMaq »

OK, so I installed the yabridge version and folders fresh and grabbed the latest automated build of yabridge control and placed it all in $HOME/.local/share/yabridge. This particular system is a Bullseye system not Buster, does that matter? Wine-Staging is version 6.2.. I completely uninstalled LinVST and moved the Windows VST Plugins into my home folder (they were previously in /usr/local/lib/vst)

On first run I ran into this:

Code: Select all

  /_\ \ / / |  ___|  \/  \ \/ / __|
  / _ \ V /| |_|___| |\/| |>  <| _| 
 /_/ \_\_/ |____|  |_|  |_/_/\_\___|
 AV Linux MX Edition
isotester@avlmx:~/.local/share/yabridge
$ ./yabridgectl add /home/isotester/.winvst32/
isotester@avlmx:~/.local/share/yabridge
$ ./yabridgectl sync
Setting up VST2 and VST3 plugins using:
- /home/isotester/.local/share/yabridge/libyabridge-vst2.so
- /home/isotester/.local/share/yabridge/libyabridge-vst3.so

Finished setting up 270 plugins using copies (148 new), skipped 0 non-plugin .dll files

Warning: Could not run 'yabridge-host.exe'. Wine reported the following error:
    
    00cc:err:process:exec_process L"Z:\\home\\isotester\\.local\\share\\yabridge\\yabridge-
    host.exe.so" not supported on this
    system
    
    Make sure that you have downloaded the correct version of yabridge for your distro.
    This can also happen when using a version of Wine that's not compatible with this version of
    yabridge, in which case you'll need to upgrade Wine. Your current Wine version is '6.2
    (Staging)'. See the link below for instructions on how to upgrade your installation of Wine.
    Finally, if the default Wine prefix over at ~/.wine is set to 32-bit only, this check
    will also fail as the 64-bit yabridge-host.exe won't be able to run.
                     
    https://github.com/robbert-vdh/yabridge#troubleshooting-common-issues
isotester@avlmx:~/.local/share/yabridge
So I guess first thing is to see what went wrong, for the record LinVST 3.1.5 was working as expected on this system so AFAIK my Wine install is good..
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

Re: [ANN] yabridge 3.3.1

Post by robbert-vdh »

GMaq wrote: Thu Jun 24, 2021 11:08 pm OK, so I installed the yabridge version and folders fresh and grabbed the latest automated build of yabridge control and placed it all in $HOME/.local/share. This particular system is a Bullseye system not Buster, does that matter? Wine-Staging is version 6.2.. I completely uninstalled LinVST and moved the Windows VST Plugins into my home folder..

On first run I ran into this:

Code: Select all

  /_\ \ / / |  ___|  \/  \ \/ / __|
  / _ \ V /| |_|___| |\/| |>  <| _| 
 /_/ \_\_/ |____|  |_|  |_/_/\_\___|
 AV Linux MX Edition
isotester@avlmx:~/.local/share/yabridge
$ ./yabridgectl add /home/isotester/.winvst32/
isotester@avlmx:~/.local/share/yabridge
$ ./yabridgectl sync
Setting up VST2 and VST3 plugins using:
- /home/isotester/.local/share/yabridge/libyabridge-vst2.so
- /home/isotester/.local/share/yabridge/libyabridge-vst3.so

Finished setting up 270 plugins using copies (148 new), skipped 0 non-plugin .dll files

Warning: Could not run 'yabridge-host.exe'. Wine reported the following error:
    
    00cc:err:process:exec_process L"Z:\\home\\isotester\\.local\\share\\yabridge\\yabridge-
    host.exe.so" not supported on this
    system
    
    Make sure that you have downloaded the correct version of yabridge for your distro.
    This can also happen when using a version of Wine that's not compatible with this version of
    yabridge, in which case you'll need to upgrade Wine. Your current Wine version is '6.2
    (Staging)'. See the link below for instructions on how to upgrade your installation of Wine.
    Finally, if the default Wine prefix over at ~/.wine is set to 32-bit only, this check
    will also fail as the 64-bit yabridge-host.exe won't be able to run.
                     
    https://github.com/robbert-vdh/yabridge#troubleshooting-common-issues
isotester@avlmx:~/.local/share/yabridge
So I guess first thing is to see what went wrong, for the record LinVST 3.1.5 was working as expected on this system so AFAIK my Wine install good..
This version will also run fine on any distro that's more recent than Ubuntu 18.04, like Debian Bullseye! It's just slightly larger because it has some library that normally aren't available on these older distros statically linked to it.

And you can safely ignore that `00cc:err:process:exec_process` error! Your main Wine prefix is set to 32-bit only (i.e. it was generated with WINEARCH=win32), which will mean that it's no longer possible to run any 64-bit applications in there. Yabridgectl tries to run yabridge-host.exe as a post-installation check, but since the default Wine prefix is set to 32-bit only that will not work Maybe I should make the post-installation check a bit smarter to always check what architecture ~/.wine was created with instead of assuming it's a normal 64-bit Wine prefix.
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.3.1

Post by GMaq »

Ok, thanks good to know!

Next question... For a first look I just ran a Plugin scan in Ardour (these are all 32bit WinVST that have all been tested to work in Ardour previously).. I completely dumped the existing cache and blacklists and ran a fresh scan which ran and completed but blacklisted all of the WinVST's... any reasons come to mind for that?
robbert-vdh
Established Member
Posts: 219
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 51 times
Been thanked: 92 times
Contact:

Re: [ANN] yabridge 3.3.1

Post by robbert-vdh »

GMaq wrote: Thu Jun 24, 2021 11:26 pm Ok, thanks good to know!

Next question... For a first look I just ran a Plugin scan in Ardour (these are all 32bit WinVST that have all been tested to work in Ardour previously).. I completely dumped the existing cache and blacklists and ran a fresh scan which ran and completed but blacklisted all of the WinVST's... any reasons come to mind for that?
Are you running a 32-bit version of Ardour? Since the libraries in this build of yabridge are 32-bit, the plugins will only work in 32-bit hosts.
User avatar
GMaq
Established Member
Posts: 2774
Joined: Fri Sep 25, 2009 1:42 pm
Has thanked: 520 times
Been thanked: 555 times

Re: [ANN] yabridge 3.3.1

Post by GMaq »

robbert-vdh wrote: Thu Jun 24, 2021 11:40 pm
GMaq wrote: Thu Jun 24, 2021 11:26 pm Ok, thanks good to know!

Next question... For a first look I just ran a Plugin scan in Ardour (these are all 32bit WinVST that have all been tested to work in Ardour previously).. I completely dumped the existing cache and blacklists and ran a fresh scan which ran and completed but blacklisted all of the WinVST's... any reasons come to mind for that?
Are you running a 32-bit version of Ardour? Since the libraries in this build of yabridge are 32-bit, the plugins will only work in 32-bit hosts.
OK sorry I had misunderstood, yes it is a 64bit Ardour so that makes sense... I have band rehearsal for the rest of the night so will have to let it go until tomorrow... An annoyance is that EnergyXT's file browser doesn't have a hidden files option I just discovered... not insurmountable but I'll have to reorganize..
Post Reply