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)
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:
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)
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:
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...
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:
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.
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:
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 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 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.
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.
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.
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:
Those .dll files likely all expose a function called `main`, which is the entry point for legacy VST<2.4 plugins. So to a VST2 host, those would be correctly identified as VST2 plugins! (if they actually aren't VST2 plugins, then loading them would of course cause the application to crash since the entry point's function signature doesn't match up)
It does crash the host, but in the case of reaper only once and then it gets blacklisted. I usually just restart or remove them manually if I don't forget. The yabridge blacklist function adds a path, but maybe it could also add specific dlls because some are in folders with valid VSTs by default like in the older version of Korg Legacy Collection. I guess that wouldn't happen natively on Windows. because there are no bridges for hosting involved.
Toejam76 wrote: ↑Wed Jul 28, 2021 4:20 pm
It does crash the host, but in the case of reaper only once and then it gets blacklisted. I usually just restart or remove them manually if I don't forget. The yabridge blacklist function adds a path, but maybe it could also add specific dlls because some are in folders with valid VSTs by default like in the older version of Korg Legacy Collection. I guess that wouldn't happen natively on Windows. because there are no bridges for hosting involved.
Yes you can use `yabridgectl blacklist add` to have yabridgectl ignore these files. You'll only encounter this with older 32-bit plugins because those tend to be a mess. And this would of course also happen on Windows. Any VST2 host capable of loading 32-bit plugins will try to load these files, since they look like older VST2 plugins.
./yabridgectl blacklist add '/home/plasma/.wine/drive_c/Program Files (x86)/Steinberg/Vstplugins/KORG/MidiFilter.dll'
error: Found argument '/home/plasma/.wine/drive_c/Program Files (x86)/Steinberg/Vstplugins/KORG/MidiFilter.dll' which wasn't expected, or isn't valid in this context
If you tried to supply `/home/plasma/.wine/drive_c/Program Files (x86)/Steinberg/Vstplugins/KORG/MidiFilter.dll` as a PATTERN use `-- /home/plasma/.wine/drive_c/Program Files (x86)/Steinberg/Vstplugins/KORG/MidiFilter.dll`