[ANN] yabridge 3.5.0, with lots of small fixes and a rewritten embedding implementation

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

Moderators: khz, MattKingUSA

luciorgomes
Established Member
Posts: 91
Joined: Wed Feb 04, 2015 11:29 pm

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by luciorgomes »

robbert-vdh wrote: Sun Jul 18, 2021 4:37 pm It's definitely not just related to KDE Plasma. I've been using KDE Plasma since way before I started work on yabridge, and I've never seen this (nor has it happened for anyone else). So something else must be at play here. What Wine version are you using, and does this also happen with a clean Wine prefix (to account for things like the virtual desktop option being enabled, although it still works just fine for me even with that option enabled)?
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
Attachments
GRig6Ardour.png
GRig6Ardour.png (139.34 KiB) Viewed 293 times
GRig6.png
GRig6.png (212.41 KiB) Viewed 293 times
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by robbert-vdh »

luciorgomes wrote: Sun Jul 18, 2021 9:43 pm
robbert-vdh wrote: Sun Jul 18, 2021 4:37 pm It's definitely not just related to KDE Plasma. I've been using KDE Plasma since way before I started work on yabridge, and I've never seen this (nor has it happened for anyone else). So something else must be at play here. What Wine version are you using, and does this also happen with a clean Wine prefix (to account for things like the virtual desktop option being enabled, although it still works just fine for me even with that option enabled)?
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
Just so we know if it's an Ardour issue or something else, do you have access to any other DAW to test this in? For instance, REAPER, Bitwig, or Qtractor. Does it also happen there? If not, what happens when you reset your Ardour configuration? (rename ~/.config/ardour6 so you can rename it back later) And we will be able to tell if it's somehow the plugin returning a wrong size or if it's Ardour setting the wrong size for the window from the VST2 function calls Ardour is making. If you launch Ardour from the terminal with:

Code: Select all

env YABRIDGE_DEBUG_FILE=/tmp/yabridge.log YABRIDGE_DEBUG_LEVEL=1 ardour6
And then open Ardour, load the plugin, and close Ardour again, /tmp/yabridge.log will contain a log file with a bunch of information. Could you upload that file somewhere? (either here, or on a pastebin, or somewhere else)
luciorgomes
Established Member
Posts: 91
Joined: Wed Feb 04, 2015 11:29 pm

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by luciorgomes »

robbert-vdh wrote: Sun Jul 18, 2021 10:07 pm
luciorgomes wrote: Sun Jul 18, 2021 9:43 pm
robbert-vdh wrote: Sun Jul 18, 2021 4:37 pm It's definitely not just related to KDE Plasma. I've been using KDE Plasma since way before I started work on yabridge, and I've never seen this (nor has it happened for anyone else). So something else must be at play here. What Wine version are you using, and does this also happen with a clean Wine prefix (to account for things like the virtual desktop option being enabled, although it still works just fine for me even with that option enabled)?
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
Just so we know if it's an Ardour issue or something else, do you have access to any other DAW to test this in? For instance, REAPER, Bitwig, or Qtractor. Does it also happen there? If not, what happens when you reset your Ardour configuration? (rename ~/.config/ardour6 so you can rename it back later) And we will be able to tell if it's somehow the plugin returning a wrong size or if it's Ardour setting the wrong size for the window from the VST2 function calls Ardour is making. If you launch Ardour from the terminal with:

Code: Select all

env YABRIDGE_DEBUG_FILE=/tmp/yabridge.log YABRIDGE_DEBUG_LEVEL=1 ardour6
And then open Ardour, load the plugin, and close Ardour again, /tmp/yabridge.log will contain a log file with a bunch of information. Could you upload that file somewhere? (either here, or on a pastebin, or somewhere else)
On Reaper it runs fine.
I reseted the Ardour config. The same result.
Here comes the log...
Attachments
yabridge.tar.gz
(29.41 KiB) Downloaded 4 times
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by robbert-vdh »

luciorgomes wrote: Mon Jul 19, 2021 2:21 am
robbert-vdh wrote: Sun Jul 18, 2021 10:07 pm
luciorgomes wrote: Sun Jul 18, 2021 9:43 pm
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
Just so we know if it's an Ardour issue or something else, do you have access to any other DAW to test this in? For instance, REAPER, Bitwig, or Qtractor. Does it also happen there? If not, what happens when you reset your Ardour configuration? (rename ~/.config/ardour6 so you can rename it back later) And we will be able to tell if it's somehow the plugin returning a wrong size or if it's Ardour setting the wrong size for the window from the VST2 function calls Ardour is making. If you launch Ardour from the terminal with:

Code: Select all

env YABRIDGE_DEBUG_FILE=/tmp/yabridge.log YABRIDGE_DEBUG_LEVEL=1 ardour6
And then open Ardour, load the plugin, and close Ardour again, /tmp/yabridge.log will contain a log file with a bunch of information. Could you upload that file somewhere? (either here, or on a pastebin, or somewhere else)
On Reaper it runs fine.
I reseted the Ardour config. The same result.
Here comes the log...
The log is bit difficult to read because Ardour will always call effProcessEvents() every processing cycle, even if there are no events to process, but on line 9553 the plugin returns the correct size for the window. So Ardour is somehow ignoring the size reported by the plugin, and it's coming up with its own all by itself. Which version of Ardour are you using, and where did you get that Ardour build? Does this also happen when you use a nightly build of Ardour, downloaded from https://nightly.ardour.org? If it also happens there, then I'll have to ask the Ardour devs on IRC if they know why Ardour could be ignoring the plugin's reported size this way.
luciorgomes
Established Member
Posts: 91
Joined: Wed Feb 04, 2015 11:29 pm

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by luciorgomes »

robbert-vdh wrote: Mon Jul 19, 2021 10:01 am
luciorgomes wrote: Mon Jul 19, 2021 2:21 am
robbert-vdh wrote: Sun Jul 18, 2021 10:07 pm

Just so we know if it's an Ardour issue or something else, do you have access to any other DAW to test this in? For instance, REAPER, Bitwig, or Qtractor. Does it also happen there? If not, what happens when you reset your Ardour configuration? (rename ~/.config/ardour6 so you can rename it back later) And we will be able to tell if it's somehow the plugin returning a wrong size or if it's Ardour setting the wrong size for the window from the VST2 function calls Ardour is making. If you launch Ardour from the terminal with:

Code: Select all

env YABRIDGE_DEBUG_FILE=/tmp/yabridge.log YABRIDGE_DEBUG_LEVEL=1 ardour6
And then open Ardour, load the plugin, and close Ardour again, /tmp/yabridge.log will contain a log file with a bunch of information. Could you upload that file somewhere? (either here, or on a pastebin, or somewhere else)
On Reaper it runs fine.
I reseted the Ardour config. The same result.
Here comes the log...
The log is bit difficult to read because Ardour will always call effProcessEvents() every processing cycle, even if there are no events to process, but on line 9553 the plugin returns the correct size for the window. So Ardour is somehow ignoring the size reported by the plugin, and it's coming up with its own all by itself. Which version of Ardour are you using, and where did you get that Ardour build? Does this also happen when you use a nightly build of Ardour, downloaded from https://nightly.ardour.org? If it also happens there, then I'll have to ask the Ardour devs on IRC if they know why Ardour could be ignoring the plugin's reported size this way.
Ardour 6.8 built in my machine (the 'stable' version, not nightly build). It also happens in Mixbus (6.2.70 - binaries from Mixbus).
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by robbert-vdh »

luciorgomes wrote: Tue Jul 20, 2021 1:37 am
robbert-vdh wrote: Mon Jul 19, 2021 10:01 am The log is bit difficult to read because Ardour will always call effProcessEvents() every processing cycle, even if there are no events to process, but on line 9553 the plugin returns the correct size for the window. So Ardour is somehow ignoring the size reported by the plugin, and it's coming up with its own all by itself. Which version of Ardour are you using, and where did you get that Ardour build? Does this also happen when you use a nightly build of Ardour, downloaded from https://nightly.ardour.org? If it also happens there, then I'll have to ask the Ardour devs on IRC if they know why Ardour could be ignoring the plugin's reported size this way.
Ardour 6.8 built in my machine (the 'stable' version, not nightly build). It also happens in Mixbus (6.2.70 - binaries from Mixbus).
Did you try that latest nightly? And does it also happen with other WMs/DEs?
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by robbert-vdh »

luciorgomes wrote: Sun Jul 18, 2021 9:43 pm
robbert-vdh wrote: Sun Jul 18, 2021 4:37 pm It's definitely not just related to KDE Plasma. I've been using KDE Plasma since way before I started work on yabridge, and I've never seen this (nor has it happened for anyone else). So something else must be at play here. What Wine version are you using, and does this also happen with a clean Wine prefix (to account for things like the virtual desktop option being enabled, although it still works just fine for me even with that option enabled)?
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
I don't know why your Ardour was doing this, but I've rewritten how the embedding works and now DAWs should no longer be able to get confused about the window's size (for some reason on your computer Ardour resizes the window to the Wine window's size, instead of to size reported by the plugin). Could you give this a try? You can find the latest build on the automated builds page. Log into GitHub, select the latest build from that page, scroll down the build page, and then download the yabridge and yabridgectl binaries for your system. You'll need to replace the existing files in `~/.local/share/yabridge` with the ones from the archive (it's a zipped tarball, thanks Microsoft), and also place the yabridgectl binary in `~/.local/share/yabridge`. Then rerun `~/.local/share/yabridge/yabridgectl sync` to finish the upgrade.

Please let me know if this works for you!

You can find an in-progress changelog here: https://github.com/robbert-vdh/yabridge ... ANGELOG.md
luciorgomes
Established Member
Posts: 91
Joined: Wed Feb 04, 2015 11:29 pm

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by luciorgomes »

robbert-vdh wrote: Wed Jul 21, 2021 3:26 pm
luciorgomes wrote: Sun Jul 18, 2021 9:43 pm
robbert-vdh wrote: Sun Jul 18, 2021 4:37 pm It's definitely not just related to KDE Plasma. I've been using KDE Plasma since way before I started work on yabridge, and I've never seen this (nor has it happened for anyone else). So something else must be at play here. What Wine version are you using, and does this also happen with a clean Wine prefix (to account for things like the virtual desktop option being enabled, although it still works just fine for me even with that option enabled)?
I'm on wine-staging 6.12, Kubuntu 20.04.
When I load as stand alone the plugins get the right size. When in Ardour/Mixbus it runs in fullscreen unresizeble window (see pictures)
I don't know why your Ardour was doing this, but I've rewritten how the embedding works and now DAWs should no longer be able to get confused about the window's size (for some reason on your computer Ardour resizes the window to the Wine window's size, instead of to size reported by the plugin). Could you give this a try? You can find the latest build on the automated builds page. Log into GitHub, select the latest build from that page, scroll down the build page, and then download the yabridge and yabridgectl binaries for your system. You'll need to replace the existing files in `~/.local/share/yabridge` with the ones from the archive (it's a zipped tarball, thanks Microsoft), and also place the yabridgectl binary in `~/.local/share/yabridge`. Then rerun `~/.local/share/yabridge/yabridgectl sync` to finish the upgrade.

Please let me know if this works for you!

You can find an in-progress changelog here: https://github.com/robbert-vdh/yabridge ... ANGELOG.md
Yeah!! :D

Now the window size is correct. I've got the build 1191.

Thanks!!!!
Attachments
yabridge20210722.png
yabridge20210722.png (226.27 KiB) Viewed 91 times
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

Re: [ANN] yabridge 3.4.0, with the first-ever Wine->X11 drag-and-drop support, a complete audio rewrite, and much more

Post by robbert-vdh »

luciorgomes wrote: Thu Jul 22, 2021 10:42 pm Yeah!! :D

Now the size of the window is correct. I've got the build 1191.

Thanks!!!!
Awesome! I'll spend a few more days testing for regressions (since the entire way editor embedding works has been reworked now), and then I'll make a release with this change and the other regression fixes and small new features.
robbert-vdh
Established Member
Posts: 110
Joined: Mon Mar 01, 2021 10:56 pm
Has thanked: 40 times
Been thanked: 29 times
Contact:

[ANN] yabridge 3.5.0, with lots of small fixes and a rewritten embedding implementation

Post by robbert-vdh »

This is mostly a bug fix update. I was going to do a quick 3.4.1 patch with a couple of fixes for regressions people had reported for yabridge 3.4.0, but then I got reports that with certain setups (I wasn't able to replicate it), Ardour might resize plugin editor windows to an incorrect size when using Ardour 6.8 in combination with an older version of XFCE. So I decided to take this opportunity to rewrite the editor embedding implementation to make sure that hosts that somehow ignore the editor size reported by the plugin can never guess the wrong size by themselves. And we also need to get to yabridge 3.11 for Workgroups somehow, right? This change should fix rare editor size issues with Ardour, a similar issue with Carla 2.3.1 (older and newer versions aren't affected), and also fixes another Ardour issue where resizing a VST3 editor past its original size might leave behind gray borders. I haven't been able to find any regressions during my testing in any of the VST2 and VST3 hosts listed in the readme, but please let me know if you do run into any new issues after these changes!

The other changes are mostly bug fixes and small quality of life improvements, like extra debugging options for GUI related issues, and additional warnings in case the system is configured in a way that might cause yabridge to crash. The full changelog with an exhaustive list of fixes and improvements can be found here:

https://github.com/robbert-vdh/yabridge ... /tag/3.5.0
Post Reply