-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Carla support for windows #4654
Comments
Since fd77c79 (1.2.2 and higher) we have unofficial Carla library building for Windows which we intentionally place into If moved to Looking at the plugin code, we normally configure the What I'm even more confused about is which
... both of which contain copies of @falkTX does the Windows Carla build contain what we'd need or is there some additional support built into the MacOS and Linux builds that isn't yet available in the Windows version of Carla? |
The Carla.exe is a zip file, it contains the full things inside. |
@falkTX are you saying that the only thing preventing this from working is adding a reliable search path on Windows to |
I am saying that carla has no reliable path where it will be installed, because there is no installer. On the future v2.3 a new library is built that hides away the standalone stuff from carla (mainly device handling), leading to possible less symbol conflicts. |
I'm sure many users would love this although it would drastically increase the LMMS download file size (from ~35 MB to ~280 MB) so this is probably a better conversation for Discord. |
not 280Mb, carla has duplicated files in the windows download because of the lack of symlink support in windows. so the resources are duplicated for standalone, lv2 and vst. the real best would be to build carla together with lmms, but pyqt will make that a challenge. |
We have this issue on MacOS as well. At runtime, we get the path to |
You can use the lv2 or vst resource folder, does not matter as they are exactly the same files. Carla will then use resources\carla-plugin[-patchbay].exe for the gui I think this ought to work... |
@falkTX it appears For comparison, the MacOS version is located at |
I think I found it as |
As of tresf@1cce006, I can get the plugin to load simply by adding
I have a feeling it's Python related, but I'm not sure where. |
That library is missing on the Windows builds simply because I did not think it would be useful to ship with. Why do you add the lv2 dir to the path? I think the issue here might be either that the new process does not look into the resources dir for the dlls (like qt stuff) or some dll is conflicting with LMMS provided ones. |
Because it allows LMMS on Windows to find |
Please pardon my ignorance, are you asking if I can load Carla using Vestige? If so, how? |
Thanks. If the library is the same as |
Yeah, that is what I am suggesting. do you get the same error when clicking show gui, or not? |
Not interactively, no although it may be erroring with it silently, Windows is sort of terrible at telling me those things. Wine's better, I could see if there's something on the terminal. |
I think that might be just LMMS not support vst shell plugins. Attaching here the non-shell plugin version. place it in the carla.vst folder and see if that works. |
See #5542. |
ah okay then it makes sense. btw, speaking of windows... LMMS does not enable JACK support under Windows, correct? |
We have a thread about it here. #2136 Probably doable, we use weakjack,
Hmm.. Ok. Assuming Carla as a VST is a no-go, I won't waste any more time on that endeavor. If that changes, let me know.
Back to this... Interestingly, Carla seems to fire up partially on Wine (The UI is black, so perhaps it's a DLL conflict as you suspect?). Ideas welcome. I can also test with MSYS2 on native Windows in hopes I'll get some form of console output. wine cmd
C:\>PATH=%PATH%;Z:\home\ubuntu\Desktop\Carla_2.2.0-win64\Carla.lv2
C:\>"C:\Program Files\LMMS\lmms.exe"
# Drag Carla from sidebar, click "Show GUI" button
C:\>Trying to start carla-plugin using "Z:/home/ubuntu/Desktop/Carla_2.2.0-win64/Carla.lv2/resources\carla-plugin-patchbay.exe"
Carla 2.2.0 started, status:
Python version: 3.7.4
Qt version: 5.13.1
PyQt version: 5.13.1
Binary dir: Z:\home\ubuntu\Desktop\Carla_2.2.0-win64\Carla.lv2
Resources dir: Z:\home\ubuntu\Desktop\Carla_2.2.0-win64\Carla.lv2\resources
ALL OK! |
It gets stranger... using msys2, Carla loads just fine. Ugh, why? :D owner@TRESFINOCCHDEE9 MSYS ~
$ PATH=$PATH:/c/Users/owner/Desktop/Carla_2.2.0-win64/Carla.lv2/
owner@TRESFINOCCHDEE9 MSYS ~
$ "c:\Program Files\LMMS\lmms.exe"
Trying to start carla-plugin using "C:/Users/owner/Desktop/Carla_2.2.0-win64/Carla.lv2/resources\carla-plugin-patchbay.exe"
ALL OK!
Trying to start carla-plugin using "C:/Users/owner/Desktop/Carla_2.2.0-win64/Carla.lv2/resources\carla-plugin.exe"
ALL OK! |
Carla grabs the pyqt dlls from msys2, that might be why :) |
Hmm... This is a fresh msys2 environment and I don't think msys2 ships with pyqt at all (I believe the installer's written with Qt Installer Framework, but I don't believe any Qt dlls are exposed to msys2 processes unless I explicitly |
you got a libgcc, libstdc++, libwinpthread from the start, correct? carla's current windows build still has those because of msys2. |
They're not on my path, but that's true for all environments (Wine, msys2, etc). If I use the same technique in CMD as I did with msys2, and use Is there anything you can think of in the carla executables that would be modifying the path?
|
maybe there is a way for windows to change the path where it loads libraries from? I have the same issue with carla-lv2 + ardour on windows, but there the error is more clear. |
It's the working directory. Hell, that was sneaky... You're right, DLL conflicts..
So the workaround is to wipe-out the "Start in" value from our shortcut (or better, find a way to clobber this when launching Carla). |
oh very interesting! an ugly hack for now just for testing is to change the CWD when showing carla gui (revert back after function is done) |
Would this be internal to Carla? I think LMMS sees it as the same process, so we have no easy way to modify the environment once LMMS is launched. If it were a remote process, I think we'd be able to control the environment via |
I mean in LMMS, for now. (I have to find a way to nicely do this in Carla yes, but while we are testing Carla+LMMS on Windows a small hack in LMMS is the fastest way) basically switch the current working directly (whatever the win32 API for that is..) before opening the carla ui. |
Yeah, that seems to work. I'll add it to the patch. |
PR opened. For anyone that wants to test it out, you can snag it here: https://github.com/tresf/lmms/releases/download/experimental/lmms-1.2.3-729+gb64fe8e7c-mingw-win64.exe |
In the update notes of lmms 1.2.0 rc7 mensiona that carla was implemented in mac systems. but I wonder if in the future it will also have support for windows ?, since lmms and carla have support for windows, and carla has a wide support for multiple plugins and soundfont. It would be quite useful to open sfz, vst files and play live. in windows I do not know a daw or a free plugin that imports archvos sfz, or emulate lv2 files like calf plugins (although I do not know if it would be possible to open lv2 files in windows), but for windows users having carla within lmms would be great .
I repeat my question:
Will lmms-carla support for windows?
The text was updated successfully, but these errors were encountered: