Follow

Yay for audio plugins under Wayland.

Non-embedded type for now, but one step at a time we will get there.

Also, today I answered a question I had for a long time...
If an X11 host running under XWayland calls Wayland-native APIs manually, would it be able to load Wayland-UI based plugins?
The answer is yes - Carla running under Qt xcb "platform" can still show Wayland UIs.

The reverse is also true (Qt wayland "platform" with X11 UIs through XWayland)

Future is bright 🌄

@falktx ooh. I think plugins that just display xdg windows can be trivially embedded using an embedded compositor like Casilda for Gtk!

Probably would make a lot of sense to start defining a new shell protocol for embedded plug-in type things tho?.. Like fullscreen-shell but instead of outputs it would have.. present_surface_for_slot with slots being defined out of band by the host and identified by id/token?

@valpackett why complicate things? my idea is just to use subsurfaces

my tests on github.com/falkTX/wayland-audi show its possible and works.

but now begins the long process of turning hacky tests into usable things.

@falktx ..oh, I forgot that audio plugins so far have been libraries dlopen()ed in-process!! I was thinking entirely in plugins-as-separate-binaries. :D which is a thing I have a non-audio use case for.

@falktx great achievement 🙌
I do not know a lot about this, but might this solve the scaling issues of plugin windows in x11 hosts such as Ardour? A specific example would be the Surge XT utility windows. Once detached, they no longer respect the scaling.

@falktx Very interesting!

We tried to answer a related question for the @linuxaudioplugindevelopment #faq at linuxmusicians.com/viewtopic.p.

This is what we came up with:
linuxaudio.dev/#pipewire-and-w

Do you mind having a look and telling me if you think that could/should be phrased differently?

Thanks for your help in advance! 🙌

@amadeus @linuxaudioplugindevelopment yeah that is not quite correct...

> X11 applications and plugins work flawlessly on Wayland

add a "mostly flawlessly". the compatibility is not 100%, there are cases where it breaks.

> none of the popular plugin frameworks support Wayland directly

true-ish, not officially yet, but best to say its WIP. I am working on it for DPF and JUCE has unofficial implementation forum.juce.com/t/wayland-imple

(more on next message)

@amadeus @linuxaudioplugindevelopment

> This means that if a DAW does not offer X11 support (...) it neither can be run on X11 nor will X11 plugins work inside such a DAW

This is false, the 2nd part.

A wayland-only application cannot run under X11
But! a native wayland application can 100% load X11 plugin UIs without trouble, assuming XWayland is present.
Try it! If you have Carla and Wayland, run "carla -platform wayland" (ignore project file warning)

If the host calls into X11, it works

@falktx @linuxaudioplugindevelopment Thank you very much for these insightful explanations. 🤓
I will correct the FAQ item accordingly.

Sign in to participate in the conversation
falkTX Mastodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!