yabridge icon indicating copy to clipboard operation
yabridge copied to clipboard

Yabridge doesn't work in Kubuntu 24.10 in Ardour, Bitwig Studio and Presonus Studio One

Open Skygge666 opened this issue 1 year ago • 2 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

In the new (K)ubuntu 24.10 (Oracular oriole) all plugins I have (MTPower Drumkit, EZDrummer 3) cause these DAWs to crash: Ardour, Bitwig Studio and Studio One. Before system upgrade, under 24.04 everything was fine. Now If I add one of these plugins or try to rescan plugins, these DAWs take whole RAM (32G in my case) then crash. What's strange, under Reaper or Tracktion Waveform the plugins are working ok. Idk what happened. I waited for new wine release and proper Oracular repo, what happened today, but it changed nothing. Attached screenshot from Studio One but it looks the same for Ardour and Bitwig Studio.

obraz

What did you expect to happen?

I expected to load and run the plugins

What actually happened?

Ardour, Bitwig and Studio One start to consume all RAM available then crash.

Operating system

Kubuntu 24.10 (Oracular oriole)

How did you install yabridge?

binary from releases page

yabridge version

5.1.0

yabridgectl version

5.1.0

Wine version

winehq-staging 9.20~oracular-1

Plugin

MT Power Drumkit, EZDrummer 3 (demo)

Plugin type

VST3

Plugin architecture

64-bit

Host

Bitwig Studio, Ardour 8.10, Presonus Studio One 6.6

Desktop environment or WM

KDE Plasma 6.1 (Wayland)

GPU model

NVidia RTX 3060

GPU drivers and kernel

Nvidia drivers 555, Kernel 6.11-lowlatency

Debug log

No response

Anything else?

No response

Skygge666 avatar Oct 20 '24 22:10 Skygge666

Same problem here, in ubuntu 24.10.

I have just updated last night.. The wine-hq repositories (for oracular, the name of ubuntu24.10) installs winehq-9.20. I tried to downgrade winehq but it does not repair the problem.

In my case when i launch Ardour (with any yabridge plugin) it keep freezie. If i launch a new ardour project, ir works fine. In any moment I load a yabridge plugin, Ardour freezie.

I tried Ardour 8.6 and ardour 8.10, same issue

vudone avatar Oct 21 '24 07:10 vudone

I tried to debug the code with gdb. This is whats gdb shows when the software keep Freezie. Seems like is the moment when i load Melodyne with yabridge. I dont know if this screenshots are usefull.

Captura desde 2024-10-21 10-12-56

Captura desde 2024-10-21 10-15-21

Captura desde 2024-10-21 10-16-16

vudone avatar Oct 21 '24 08:10 vudone

The yabridge binary release didnt work in my ubuntu 24.10. I have compiled it in my computer (with winehq-9.20) and now seems to work

vudone avatar Oct 23 '24 18:10 vudone

Self-compiled Yabridge seems to work. Thanks @vudone for your tip.

Skygge666 avatar Oct 23 '24 18:10 Skygge666

Also just updated to Ubuntu 24.10, with the same problem under Ardour.

Another interesting note: Everything seemed fine using Carla as the plugin host. Memory bloat and scanning timeouts in Ardour.

Building yabridge from source, all good in both environments.

mahlonsmith avatar Oct 23 '24 19:10 mahlonsmith

I confirm the bug in Ubuntu 24.10. The problem does not occur on Carla, Reaper, Muse, Waveform13 or even Audacity. It happens with Ardour and Mixbus. When you try to load the plugin, Yabridge isn't even called. Ardour is probably in a loop trying to load somehow, which increases memory and CPU use. That also happens when you try to scan the plugin as a new one to add to the Ardour cache list. But there's one more piece of information about it: if you try to scan the same plugin in the command line with ardour-vst-scanner it adds to the Ardour cache with no issues. So maybe it's something about the shell environment?

paulopinheiro avatar Oct 23 '24 23:10 paulopinheiro

Unfortunately, I was unable to compile yabridge from source. The process ends without errors, but at the end I don't have all the expected generated files (there is no yabridgectl, for example).

paulopinheiro avatar Oct 24 '24 01:10 paulopinheiro

Hi @paulopinheiro. Im not in home now, but i think that yabridge works for u. Yesterday when I compiled yabridge i had to compile 2 packages really.

In the root folder, with meson and ninja, u compile some files. thats ok, its part of the project.

In order to compile the yabridgectl bin u need to access to the YABDRIGEFOLDER/tools/yabridgectl folder.

and there launch:

$ cargo run --release

yabdrigectl will be compiled. Copy it with the rest of yabridge files (probably ~/.local/share/yabridge)

And thats all.

vudone avatar Oct 24 '24 06:10 vudone

I hope the developer provides us with a new ubuntu binary package soon. There isn't one for the latest released version and compiling it from source is a big complicated on my system.

eugenialoli avatar Oct 24 '24 10:10 eugenialoli

As a temporary workaround you can download from my homepage working Yabridge for 24.10 (64-bit only!) compiled by me. I will remove this link as soon as developer makes new release.

I removed the download link since version 5.1.1 (and hopefully all newer) seems to work fine.

Skygge666 avatar Oct 24 '24 10:10 Skygge666

List of files included:


libyabridge-chainloader-clap.so
libyabridge-chainloader-vst2.so
libyabridge-chainloader-vst3.so
libyabridge-clap.so
libyabridge-vst2.so
libyabridge-vst3.so
README.md
yabridgectl
yabridge-host.exe
yabridge-host.exe.so

You can install this the same way as usual binary release. If you have installed yabridge already - just replace these files and run yabridgectl sync

Skygge666 avatar Oct 24 '24 12:10 Skygge666

Hi @paulopinheiro. Im not in home now, but i think that yabridge works for u. Yesterday when I compiled yabridge i had to compile 2 packages really.

In the root folder, with meson and ninja, u compile some files. thats ok, its part of the project.

In order to compile the yabridgectl bin u need to access to the YABDRIGEFOLDER/tools/yabridgectl folder.

and there launch:

$ cargo run --release

yabdrigectl will be compiled. Copy it with the rest of yabridge files (probably ~/.local/share/yabridge)

And thats all.

Thank you very much. That's the missing part. I didn't find those steps on README. I'll still have to compile the 32 bits modules but the 64 bits based plugins are already working.

paulopinheiro avatar Oct 24 '24 12:10 paulopinheiro

Skygge's version isn't compiled against libdl, librt and libpthreads. Maybe that's why it works.

ldd .local/share/yabridge-skygge/libyabridge-vst3.so  :
	linux-vdso.so.1 (0x00007874de582000)
	libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007874de000000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007874de2db000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007874de2ad000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007874ddc00000)
	/lib64/ld-linux-x86-64.so.2 (0x00007874de584000)

ldd .local/share/yabridge-org/libyabridge-vst3.so :
	linux-vdso.so.1 (0x000070317c53b000)
	libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000070317c000000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000070317c28c000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000070317bfd2000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000070317bc00000)
	/lib64/ld-linux-x86-64.so.2 (0x000070317c53d000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x000070317c37e000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x000070317c379000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x000070317c285000)

gitterdude avatar Oct 30 '24 14:10 gitterdude

List of files included:


libyabridge-chainloader-clap.so
libyabridge-chainloader-vst2.so
libyabridge-chainloader-vst3.so
libyabridge-clap.so
libyabridge-vst2.so
libyabridge-vst3.so
README.md
yabridgectl
yabridge-host.exe
yabridge-host.exe.so

You can install this the same way as usual binary release. If you have installed yabridge already - just replace these files and run yabridgectl sync

I love you!

PS, Renoise is also another DAW where plugins work without any issues after an update to 24.10, even when adding new VST2 and VST3 plugins.

erroreyes avatar Nov 11 '24 04:11 erroreyes

I built yabridge on my laptop, including the 32-bit host, updated all my plugins, and everything seems to be working fine.

yabridge-error.eyes.zip

erroreyes avatar Nov 11 '24 18:11 erroreyes

Tried the builds of both @erroreyes and @Skygge666, neither worked on my system for Auto-Tune pro (please don't suggest alternatives, they do not function in the same way I misuse the plugin)

Wine: wine-9.21 (Staging) Daw: Bitwig Studio producer 5.2.5 OS: Kubuntu 24.04.1 LTS x86_64

Bitwig logs: engine.log BitwigStudio.log

duncte123 avatar Nov 12 '24 17:11 duncte123

When you try to load the plugin, Yabridge isn't even called. Ardour is probably in a loop trying to load somehow, which increases memory and CPU use.

@paulopinheiro Could you check if that's what's happening? Since the yabridge host application seems to be launching just fine, can you run Ardour from the command line with YABRIDGE_DEBUG_FILE=/tmp/yabridge.log set and then check in /tmp/yabridge.log to see if the host is starting multiple times? Also, does this only happen with the Ardour binaries from ardour.org or also with Ardour 8.6 installed through Ubuntu's repos?

robbert-vdh avatar Nov 12 '24 19:11 robbert-vdh

The problem is likely indeed the line from the backtrace. Weirdly enough there's no problem if you run Ardour's plugin scanner standalone. But when run from Ardour, the posix_spawn_file_actions_addclose() calls seem to somehow be both a lot slower then usual, and they somehow leak memory. The reason why a version compiled on Ubuntu 24.10 (or anything else that has glibc 2.34 or newer, like Ubuntu 22.04) is that when yabridge is compiled on one of those distros, it uses a more efficient way to close file descriptors:

https://github.com/robbert-vdh/yabridge/blob/d9286758c05ae4a1d1385c36b5d041dc84b21b76/src/common/process.cpp#L352-L364

I don't know what's changed in Ubuntu 24.10 that's causing posix_spawn_file_actions_addclose() to leak memory in the way it does, but the workaround for this would be to move the check if posix_spawn_file_actions_addclosefrom_np() is available at runtime and use that if it is. I'll try to find some time to work on that soon.

robbert-vdh avatar Nov 12 '24 20:11 robbert-vdh

Hi, the 5.1.1 seems to be fixed. Thanks!

Skygge666 avatar Nov 14 '24 23:11 Skygge666

Note that I did first encounter this issue with 5.11 in Bitwig.

On Thu, Nov 14, 2024, 15:12 Skygge666 @.***> wrote:

Hi, the 5.1.1 seems to be fixed. Thanks!

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

erroreyes avatar Nov 14 '24 23:11 erroreyes

5.1.1 works for me also in Bitwig. 5.1.1 was released last week. Maybe you mean 5.1.0? obraz

Skygge666 avatar Nov 14 '24 23:11 Skygge666

Not for me. My timeline is that I had 5.1.0 installed on Kubuntu 24.04. I installed 5.1.1 and it worked. I then upgraded to Kubuntu 24.10 and my Windows plugins stopped working on Bitwig. I downgraded to 5.1.0 and still did not work. I built the latest on my laptop under Kubuntu 24.10 and that worked.

On Thu, Nov 14, 2024, 15:36 Skygge666 @.***> wrote:

5.1.1 works for me also in Bitwig. 5.1.1 was released last week. Maybe you mean 5.1.0? obraz.png (view on web) https://github.com/user-attachments/assets/83e93d7a-d8ec-46ae-8e65-e882d69c1d71

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

erroreyes avatar Nov 15 '24 01:11 erroreyes

5.1.1 still doesn't work here in Ardour on Xubuntu 24.10. Neither the official release nor the one I compiled myself in Ubuntu 20.04

The self-compiled version from Ubuntu 24.04 works, as 5.1.0 also did.

gitterdude avatar Nov 15 '24 07:11 gitterdude

I built yabridge on my laptop, including the 32-bit host, updated all my plugins, and everything seems to be working fine.

yabridge-error.eyes.zip

This one works for me on UbuntuStudio 24.10 Thank you very much.

paulopinheiro avatar Nov 15 '24 17:11 paulopinheiro

Could anyone here try the a master branch build? This now does runtime feature detection for the thing I mentioned above, this should mean that yabridge build on Ubuntu 20.04 (e.g. the builds here on GitHub) should now work again with Ardour on Ubuntu 24.10. Why this is even an issue I still don't know. I feel like this has to be some obscure issue with glibc or another part of the OS.

Also keep in mind that apparently Wine 9.22 also changed something to broke GUI interaction. This build will not yet fix that issue.

https://github.com/robbert-vdh/yabridge?tab=readme-ov-file#installing-a-development-build

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

It works for me, thanks a lot! (Of course under wine-staging max 9.21, 9.22 is broken.)

Skygge666 avatar Nov 27 '24 23:11 Skygge666

Works here as well. I compiled it with gcc-11 on Ubuntu 20.04, transferred the binaries to 24.10 and the VST plugins load in Ardour there.

gitterdude avatar Nov 28 '24 07:11 gitterdude

I can confirm that most of my plugins work fine again with this version

duncte123 avatar Dec 01 '24 14:12 duncte123

Closing. Issue resolved.

Skygge666 avatar Dec 07 '24 20:12 Skygge666

@robbert-vdh I also bumped into this issue and I confirm that it's fixed by development build 5.1.1-7-gca534308 as you pointed in https://github.com/robbert-vdh/yabridge/issues/377#issuecomment-2504933823

amarandon avatar Jan 01 '25 16:01 amarandon