mod-desktop
mod-desktop copied to clipboard
Discussion and Issues around MOD Desktop as Plugin
This is a meta-ticket to discuss all things around MOD Desktop as an audio plugin, currently supporting AU, CLAP, LV2, VST2 and VST3.
NOTE: If you come here from an external link please notice this is still very early days and mostly looking for initial testers, it far from production-ready state! That said, if you are technically-minded and want to help out to get the plugin version into shape, read on.
Things you should know before continuing:
- how to get the latest builds from github (in the actions tab)
- how to start things from the command-line if needed
So with that in mind, go get the latest build and install them. Some notes
- For Linux you need to have the standalone be available on some location on disk, and run it at least once (this last used location is saved on disk and used for next time the plugin is run)
- The win64 zip does not include the plugins, only the installer (the plugin requires knowing where the MOD Desktop standalone tools are, so needs installation)
- If the UI does not work for some reason, you can click the "open web browser" button to open the web gui externally
Items still do be done:
- [x] windows build is broken, either crashes or is unusable (loads under linux+wine though, somehow)
- [x] handle dynamic buffer size (right now it only works if host provides fixed-size buffers)
- [ ] check if TCP ports for mod-host and mod-ui are available before use
- [x] implement web view on windows (the "open web browser" button still works though)
- [ ] trigger pedalboard save when host saves
- [ ] map host state to active pedalboard
- [x] add missing dialogs on macOS (this blocks using mod-ui in a proper way for now)
- [ ] implement time position sync
- [x] report latency to host
- [ ] fix jackd shutdown on windows (crashes when trying to close)
- [ ] linux xdg-user-dirs is not respected on the plugin variant for now
Testing in general is useful, if you do so please provide information regarding:
- OS you use, and which version it is
- The build/version of mod-desktop that you tried
- Which host you used for testing
- Overall experience and any oddities
If you can, also provide a screenshot of the embed web view, some browser implementations will show slightly different things, it is handy to try to spot any oddities with specific engines so we know what to watch out for and try to work around.
Some testing of my own on macOS 14.2, Apple sillicon on a mac mini M1:
Renoise does not work under normal operation:
- UI shows but pedalboard does not show any IO jacks
- No sound output
Need to pick 2 options to make it run proper:
- enable static buffers
- disable auto-suspend
FL Studio does not work under normal operation, needs the option for static buffers to be enabled, then works
VST2 does not allow resize as per spec, but VST3 does which is nice for making the browser view bigger.
GarageBand loads UI but has no IO jacks, needs auto-suspend option disabled somewhere?? It is obviously loading AU version since that is the only supported plugin format there
Testing on Windows 10 64bit, with Carla it just crashes right away
on the 1 time I got it to load, it printed this
will start process with args '"C:\Program Files\MOD Desktop\jackd.exe" -R -S -n mod-desktop-5 -C "C:\Program Files\MOD Desktop\jack\jack-session.conf" -d mod-desktop -r 48000'
will start process with args '"C:\Program Files\MOD Desktop\mod-ui.exe"'
shm processing failed
On FL Studio it loads but uses all CPU.
On Ubuntu 22.04 64bit, under KDE.
LV2 Crashes under Ardour 6.9
jalv works fine, being LV2 the window is resizable which is nice, though a bit glitchy on the resize part but it does work
Also works in Carla. Detected an issue with it, if 2 instances load very closely together (as part of a project for example) the 2nd one fails to startup properly. If loading 1 instance at a time it works.
Renoise works, but needs that auto-suspend option to be off first.
vst2 running inside ildaeil module in cardinal, amd64 linux:
Have to use separate browser to open the UI (atm it's not clear which port the instance is using)
Plugin state does not seem to be restored with the cardinal patch.
Trying latest builds on Windows. no more crashes, but still does not work, same issue with overuse of CPU, while it is working correctly in linux + wine. Need to investigate it later.
The LV2 plugin in Ardour 8.4.0 with jack2
and Xfce4 on Arch Linux rocks! :guitar:
Many thanks for working on this, @falkTX
Now working on Windows too, needing an updated Windows 10 or Windows 11 for the Webview2 runtime
Same limitations regarding needing fixed-size buffers still apply.
The most recent VST3 plug-in seems to work fine with Piepewire, Arch Linux and Reaper. It was expecting user files in different location than 0.0.12 stand-alone but I just linked the directory.
When plug-in is launched it opens webview browser. If I close that and click 'open in web browser' it loads in my default desktop browser. In webview version, to load NAM profile I have to go through plugin settings otherwise I can't click on that field where amps can be changed.
the user-files needs some adjustment to work without relying on Qt, as we dont want that dependency on the plugin side.
I am even surprised this is working under wayland, though sadly the embed part did not work. I will have to try this myself and see what is needed, though I have some suspicions already..
but can you clarify this please:
I have to go through plugin settings otherwise I can't click on that field where amps can be changed.
is the combo-box that does not appear? does it work for the die-fluidsynth plugin that loads sf2 files or does it have the same issue?
Yes, it's a combo box that doesn't load. I checked and it works with die-fluid plugin.
I took a picture with phone to show what's happening with NAM plugin, as screenshot didn't capture the cursor: