yabridge icon indicating copy to clipboard operation
yabridge copied to clipboard

Incorrect mouse cursor offset with Wine 9.22+

Open cobe571 opened this issue 1 year ago • 99 comments

Thanks for giving yabridge a shot!

  • [X] I read through both the troubleshooting and the known issues sections, and my issue wasn't listed there

Problem description

Hello everyone, Today I update my Debian 12 (bookworm) with yabridge 5.1.1 to Kernel Linux 6.1.0-28-rt-amd64 x86_64 and Wine Staging 9.22

Just to be sure everything works fine in the end I follow these steps:

I delete the file: /home/patrizio/.config/yabridgectl/config.toml

And the two directories: /home/patrizio/.vst/yabridge/ /home/patrizio/.vst3/yabridge/

As usual I gave the commands:

:~$ /home/patrizio/.local/share/yabridge/yabridgectl add /home/patrizio/.vst/

:~$ /home/patrizio/.local/share/yabridge/yabridgectl add "$HOME/.wine/drive_c/Program Files/Common Files/VST3"

:~$ /home/patrizio/.local/share/yabridge/yabridgectl sync

Everything works fine! But...

All of the programs I use i.e. Carla Audio Plugin Host; Reaper and Ardour DAW recognize the plugins but when I open it in most cases they have a really strange behavior. Most of them don't show their GUI with controls and many others don't works at all.

I downgrade winehq-staging to version 9.21 and now everything works perfectly.

Note to remember. To downgrade Wine Staging version, all the files needed for the downgrade must be listed in the installation command:

:~$ sudo apt install winehq-staging=9.21~bookworm-1 wine-staging=9.21~bookworm-1 wine-staging-amd64=9.21~bookworm-1 wine-staging-i386=9.21~bookworm-1

Until it will be fixed I marked Wine Staging as blocked with:

:~$ sudo apt-mark hold winehq-staging

**

Hope it will be fixed very soon, cause I really like yabridge and I appreciate so very much I can finally use a full set of windows plugins into my Linux computers.

Thanks for the effort and please keep up with the good job!

~Patrizio.

What did you expect to happen?

That everything works as expected

What actually happened?

Loading plugins was a faliure: No GUI and most of the plugins not working at all

Operating system

Debian GNU/Linux 12 (bookworm)

How did you install yabridge?

github

yabridge version

5.1.1

yabridgectl version

5.1.1

Wine version

9.22

Plugin

Almost all of them

Plugin type

both VST2 and VST3

Plugin architecture

64-bit

Host

Carla; Reaper; Ardour 7

Desktop environment or WM

XFCE 4.18

GPU model

AMD PALM

GPU drivers and kernel

Mesa 22.3.6 on Kernel 6.1.0-28-rt-amd64

Debug log

No response

Anything else?

No response

cobe571 avatar Nov 25 '24 18:11 cobe571

Hello. I have this problem too. With wine-staging 9.22 i can't interact with the gui of the plugins. I have seen people mention this issue on winehq forum and on reddit too.

Abso793 avatar Nov 25 '24 19:11 Abso793

I reverted to 9.19 and the issues were resolved so there must be some regression or incompatibility in wine 9.22. It happens every now and then.

Very Best Regards,

Szymon Kosecki

On Mon, 25 Nov 2024 at 19:08, Abso793 @.***> wrote:

Hello. I have this problem too. With wine-staging 9.22 i can't interact with the gui of the plugins. I have seen people mention this issue on winehq forum and on reddit too.

— Reply to this email directly, view it on GitHub https://github.com/robbert-vdh/yabridge/issues/382#issuecomment-2498821972, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6NUWJ4GMRMKYSKCLOG732CNYRBAVCNFSM6AAAAABSOTYP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJYHAZDCOJXGI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

siborg avatar Nov 25 '24 19:11 siborg

Same. I thought it was a wine-tkg problem so I switched to vanilla but then I noticed Arch was actually a couple of wine versions behind so that explains it. I couldn't interact with Melodyne.

pablo-888 avatar Nov 26 '24 03:11 pablo-888

This perhaps due Wine in 9.22 going into Wayland by default. https://www.phoronix.com/news/Wine-9.22-Released

I have the same problem, but instead i can interact with the VST with wrong scaling? (i guess) i use 1360x768 on my native resolution, but the VST seems going into over more than my native resolution in 9.22. So i have the button pressed wrong location.

9.21 doesn't have this problem.

sandycorzeta avatar Nov 26 '24 07:11 sandycorzeta

Here are some video preview of what happened in my computer. It looks like the window coordinate initialization is not properly configured when the plugin being launched. Perhaps almost looks like the same bug from #368 .

My system is Fedora 41 using Wine 9.22 copr build from patrickl

https://github.com/user-attachments/assets/85c41591-80d5-48dd-8f68-c0509acdead9

sandycorzeta avatar Nov 26 '24 07:11 sandycorzeta

Thanks for letting me know about this! I'll probably need to dive into what actually changed between Wine 9.21 and 9.22 to figure out what's happening here. I'll try to find time for that this weekend. For now you'll have to downgrade to an earlier version of Wine.

This perhaps due Wine in 9.22 going into Wayland by default.

yabridge has been unsetting WAYLAND_DISPLAY since early 2023 in anticipation for that on its own should not be causing any problems

I have the same problem, but instead i can interact with the VST with wrong scaling? (i guess) i use 1360x768 on my native resolution, but the VST seems going into over more than my native resolution in 9.22. So i have the button pressed wrong location.

Are you using yabridge 5.1.1? Wine 9.17 changed how it handles DPI scaling, which did cause issues like this. Yabridge 5.1.1 should scale fine with all current Wine versions.

robbert-vdh avatar Nov 27 '24 22:11 robbert-vdh

I have same problem on wine 9.22, downgrading wine to 9.21 fixes it. yabridge compiled from a82bd51c2e8a9247349d1f0d89e15de15189a0c6 (with DPI scaling fix). I will try to test on latest master branch

bsedin avatar Nov 27 '24 23:11 bsedin

Are you using yabridge 5.1.1? Wine 9.17 changed how it handles DPI scaling, which did cause issues like this. Yabridge 5.1.1 should scale fine with all current Wine versions.

Yes i'm using yabridge 5.1.1 compiled from patrickl COPR when im testing this.

sandycorzeta avatar Nov 28 '24 01:11 sandycorzeta

For me, this also affects older wine versions. This started happening to me when I upgraded to 9.20. Downgrading to 9.17 only partially fixed it - on 9.20 I couldn't use the mouse to interact with the GUI at all, on 9.17 it would work on some plugins, but not others (Melodyne was still broken). The only version that works without issues currently for me is 9.21 (even with Melodyne).

Btw this is on Arch running the official packages for both yabridge and wine (switched to wine-staging to install 9.21 though). Don't think it matters, but just in case, my DAW is Reaper, my DE is GNOME on Wayland and I'm running it all through distrobox on Fedora Silverblue.

ArtikusHG avatar Nov 29 '24 07:11 ArtikusHG

I'm experiencing the same problem. Linux Mint, X11, Reaper, wine-devel 9.22, yabridgectl 5.1.1 The plugin UIs do not react to the mouse in any way whatsoever, every one I've tried appears completely frozen.

Downgrading to 9.21 fixed it for me too.

Nekkowe avatar Nov 30 '24 21:11 Nekkowe

I don't know if I still have the time to cook up a yabridge-side workaround for this today (and if that's possible to do in a reasonably sane manner) but for context, this is the Wine commit that introduced this issue's specific regression where GUI interaction just no longer works:

Patch: https://gitlab.winehq.org/wine/wine/-/merge_requests/6569 Specific commit causing the problem (through interaction with an earlier commit): https://github.com/wine-mirror/wine/commit/d8b5a3ae129e0971e71fcf6e95387d8d1e35e646

The ConfigureNotify events sent by yabridge are being ignored because of those new checks. These events are what tells Wine where on the screen the window actually is. You'll notice that if you move a plugin window around to align with the very top left corner of your screen, mouse interaction still works as expected with Wine 9.22. The same PR added the following line, which causes that wm_state_serial flag to no longer be cleared, causing the problem:

https://github.com/robbert-vdh/wine/blob/d8b5a3ae129e0971e71fcf6e95387d8d1e35e646/dlls/winex11.drv/window.c#L1442-L1443

robbert-vdh avatar Dec 01 '24 17:12 robbert-vdh

Because the problem is already bisected, I imagine a fix is coming in the next release. Nonetheless, Fedora users can use:

sudo dnf install --allow-downgrade winehq-staging-9.21
sudo dnf versionlock add winehq-staging

PennRobotics avatar Dec 02 '24 21:12 PennRobotics

Because the problem is already bisected, I imagine a fix is coming in the next release. Nonetheless, Fedora users can use:

sudo dnf install --allow-downgrade winehq-staging-9.21
sudo dnf versionlock add winehq-staging

Or alternatively just use the official Fedora 41 repo and install wine 9.15 which is apparently based off wine-staging.

chmaha avatar Dec 04 '24 23:12 chmaha

Side question about the Wayland: Is there Wayland support planned for Yabridge? I wonder if this could make the proper plugin GUI available in Presonus Studio One.... Thanks!

Skygge666 avatar Dec 06 '24 21:12 Skygge666

same here Bitwig 5.2.7 linux mint .debian

RustoMCSpit avatar Dec 07 '24 14:12 RustoMCSpit

Still issues after Wine 10. For lazy people on Debian Bookworm:

sudo apt install --allow-downgrades winehq-staging=9.21~bookworm-1 wine-staging=9.21~bookworm-1 wine-staging-amd64=9.21~bookworm-1 wine-staging-i386=9.21~bookworm-1 && sudo apt-mark hold winehq-staging wine-staging wine-staging-amd64 wine-staging-i386

Replace "hold" with "unhold" when (or even IF at this point) WINE fixes this

9.21 is the last working version.

0CCULTIST avatar Dec 07 '24 19:12 0CCULTIST

i think this is possibly related to a much older bug report made about neuralnote running through yabridge, not certain however https://bugs.winehq.org/show_bug.cgi?id=56774

RustoMCSpit avatar Dec 07 '24 19:12 RustoMCSpit

Confirmed same issue and downgrade to 9.21 and a reboot fixed it for me.

Lairizzle avatar Dec 12 '24 13:12 Lairizzle

@robbert-vdh any ideas how much effort it would be to work around this from the yabridge side? I'd prefer not to downgrade wine, and while moving all plugin windows to 0,0 works for now it's not exactly convenient 😄

cnschn avatar Dec 15 '24 07:12 cnschn

@cnschn That probably won't possible do to in a way that keeps the old behavior, and that won't break immediately again after the next Wine release. I briefly checked if I could get something to work by moving the window's position around and then compensating with negative translations but that didn't really work and is super janky.

I don't think the Wine people are going to change something on their side that would make this work again anytime soon though. Maybe they'll accept a patch from me that would make this work properly without any hacks, but I currently also don't really have the time to work on that.

robbert-vdh avatar Dec 15 '24 16:12 robbert-vdh

That's unfortunate, but understandable.

I really don't want to downgrade/pin wine to an older version, does anyone have any recommendations on how to manage prefixes using non-system versions of wine (on arch in my case)? I'm using Lutris for some games/applications already, maybe setting up a fixed version prefix for VSTs using that could be an option?

cnschn avatar Dec 16 '24 16:12 cnschn

Experiencing same issue on arch with 9.22 - does anyone know if there is an open issue in wine to address this?

cdunford avatar Dec 22 '24 13:12 cdunford

It is a known issue with 9.22 please downgrade to 9.21 - afaik no fix in wine for this. @robbert-vdh/yabridge @.***> was trying to get a workaround in place but if I remember correctly this is WiP at best - due to lack of time...

Very Best Regards,

Szymon Kosecki

On Sun, 22 Dec 2024 at 13:07, Craig Dunford @.***> wrote:

Experiencing same issue on arch with 9.22 - does anyone know if there is an open issue in wine to address this?

— Reply to this email directly, view it on GitHub https://github.com/robbert-vdh/yabridge/issues/382#issuecomment-2558450739, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6NUQZCOEHAQMQSY5QYZT2G22QZAVCNFSM6AAAAABSOTYP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJYGQ2TANZTHE . You are receiving this because you commented.Message ID: @.***>

siborg avatar Dec 22 '24 13:12 siborg

Yeah I'll see about downgrading - that's always a bit of a headache on arch. Would be stellar if someone was able to fix this at some point.

cdunford avatar Dec 22 '24 15:12 cdunford

you can probably go to /var/cache/pacman/pkg folder and install older package from there if it has not been emptied by yourself already.

Very Best Regards,

Szymon Kosecki

On Sun, 22 Dec 2024 at 15:08, Craig Dunford @.***> wrote:

Yeah I'll see about downgrading - that's always a bit of a headache on arch. Would be stellar if someone was able to fix this at some point.

— Reply to this email directly, view it on GitHub https://github.com/robbert-vdh/yabridge/issues/382#issuecomment-2558486664, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6NUQ4NBS43MVFXM74YO32G3IWXAVCNFSM6AAAAABSOTYP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJYGQ4DMNRWGQ . You are receiving this because you commented.Message ID: @.***>

siborg avatar Dec 22 '24 15:12 siborg

Ah, and do not forget to mask wine in /etc/pacman.conf with Ignore-pkg = wine . you can google doing it for just a specific version if you want.

Very Best Regards,

Szymon Kosecki

On Sun, 22 Dec 2024 at 15:38, Szymon Kosecki @.***> wrote:

you can probably go to /var/cache/pacman/pkg folder and install older package from there if it has not been emptied by yourself already.

Very Best Regards,

Szymon Kosecki

On Sun, 22 Dec 2024 at 15:08, Craig Dunford @.***> wrote:

Yeah I'll see about downgrading - that's always a bit of a headache on arch. Would be stellar if someone was able to fix this at some point.

— Reply to this email directly, view it on GitHub https://github.com/robbert-vdh/yabridge/issues/382#issuecomment-2558486664, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6NUQ4NBS43MVFXM74YO32G3IWXAVCNFSM6AAAAABSOTYP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJYGQ4DMNRWGQ . You are receiving this because you commented.Message ID: @.***>

siborg avatar Dec 22 '24 15:12 siborg

I think this problem with 9.22 is wider than just yabridge. Carla fails too plus the plugins in Photoshop CS2 (which was the last Adobe product I ever bought...think on Adobe! ) All fail to respond to mouse, or at least not know the coordinates of the pointer.

Lord-Formaldahyde-Brick avatar Dec 25 '24 11:12 Lord-Formaldahyde-Brick

@Lord-Formaldahyde-Brick maybe let them know about this. The more software is affected by this change, the more likely it is for them to reconsider.

Merge request is here: https://gitlab.winehq.org/wine/wine/-/merge_requests/6569
Discussion about the regression for audio plugins is here: https://gitlab.winehq.org/wine/wine/-/merge_requests/6569#note_89380

Schroedingers-Cat avatar Dec 25 '24 13:12 Schroedingers-Cat

I filed a bug report on: https://bugs.winehq.org/show_bug.cgi?id=57603

ManuLinares avatar Dec 27 '24 15:12 ManuLinares

Short confirmation for Manjaro Linux, KDE flavor: Same issue here with yabridge 5.1.1 + Wine-Staging 9.22 (both taken from Manjaro's official repos).

Currently no RT kernel in use; I think the issue independent of the kernel version.

Tested with some (free) 64-bit VSTi2, VSTi3 & CLAPi plugins on Rapper + Carla. Behaviour is the same for all of them:

  • sound works fine
  • also presets can be changed (by surrounding frame, not via GUI), Sound changes as well
  • GUI was drawn correctly every time (in contrast to the initial description by @cobe571 saying "no GUI"), but is (nearly) irresponsive, like shown in the video shared by @sandycorzeta
  • I was only sometimes(!) able to change a parameter by mouse with click+move one time (i.e. I had to restart the GUI before I was able to reproduce this effect), but also with a remarkable(!) offset to the right (i.e. the affected GUI element was to the right of the mouse cursor)
  • parameters can be changed when switched from the plugins' GUI to Reaper's/Carla's generic parameter editor (meaning this is indeed "only" a graphical issue)

Like for most of the others here, I was able to temporarily solve that issue by downgrading Wine-Staging from version 9.22 to 9.21. Hint: On Manjaro, this can easily done by using manjaro-downgrade; this tool additionally offers to put Wine-Staging to the list of packets not being upgraded anymore (as long as you don't take them out of the ignore list) after downgrading, like mentioned by @siborg .

BTW:

  • Thanks to @robbert-vdh for this really great tool, which was one of the most convincing arguments for me switching from Windows to Linux!
  • Also thanks to ask others here since that helped me a lot getting the Windows plugins up and running (this was my 1st try ;) )!

just-Nob avatar Dec 29 '24 14:12 just-Nob