-
-
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
Feature: Carla automation #5846
Conversation
🤖 Hey, I'm @LmmsBot from github.com/lmms/bot and I made downloads for this pull request, click me to make them magically appear! 🎩
Windows
Linux
macOS🤖{"platform_name_to_artifacts": {"Windows": [{"artifact": {"title": {"title": "64-bit", "platform_name": "Windows"}, "link": {"link": "https://14088-15778896-gh.circle-artifacts.com/0/lmms-1.3.0-alpha.1.139%2Bg714e19972-mingw-win64.exe"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/14088?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}, {"artifact": {"title": {"title": "32-bit", "platform_name": "Windows"}, "link": {"link": "https://14087-15778896-gh.circle-artifacts.com/0/lmms-1.3.0-alpha.1.139%2Bg714e19972-mingw-win32.exe"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/14087?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}, {"artifact": {"title": {"title": "32-bit", "platform_name": "Windows"}, "link": {"link": "https://ci.appveyor.com/api/buildjobs/02fyitfeo8kkj54v/artifacts/build/lmms-1.3.0-alpha-msvc2017-win32.exe"}}, "build_link": "https://ci.appveyor.com/project/Lukas-W/lmms/builds/39706821"}, {"artifact": {"title": {"title": "64-bit", "platform_name": "Windows"}, "link": {"link": "https://ci.appveyor.com/api/buildjobs/2jay67faltly3tra/artifacts/build/lmms-1.3.0-alpha-msvc2017-win64.exe"}}, "build_link": "https://ci.appveyor.com/project/Lukas-W/lmms/builds/39706821"}], "Linux": [{"artifact": {"title": {"title": "(AppImage)", "platform_name": "Linux"}, "link": {"link": "https://14089-15778896-gh.circle-artifacts.com/0/lmms-1.3.0-alpha.1.139%2Bg714e199-linux-x86_64.AppImage"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/14089?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}], "macOS": [{"artifact": {"title": {"title": "", "platform_name": "macOS"}, "link": {"link": "https://14086-15778896-gh.circle-artifacts.com/0/lmms-1.3.0-alpha.1.139%2Bg714e19972-mac10.14.dmg"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/14086?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}]}, "commit_sha": "ffd4662e59122de12fb4cf73f9c31cd73ca83d0b"} |
@falkTX Could you check if interactions with Carla are correct? |
pre-built version based on ca17641 with this PR applied i would make a appimage but the script doenst work on my machine |
Yeah, I would also like to get an appimage to test out, but that build has expired and my dependencies are a mess... |
(Finally) managed to build an Appimage based on From my limited testing so far, Carla automation and everything seems to work fine. For anyone else who may want to test out and/or access this feature early, here it is: lmms-1.3.0-alpha.1.44+g97114fb-linux-x86_64.AppImage also for some reason, this PR doesn't really show up on google when you search for 'lmms carla automation'... *annoying* |
Just a few minor niggles after playing around with it (#5846 (comment)):
Other than that this seems really solid! and it makes Carla an absolute joy to use! Great work 👍🎉🎉 |
@tinkerlevu thanks for testing!
1. Good find, it Isn't intentional; I simply forgot about that case, will fix it.
|
@cyber-bridge It's the least I could do... (^u^) Really hope this gets merged man... |
@PhysSong
Moved those members to CarlaInstrumentView, also gave them better names.
|
@PhysSong thanks! I don't know how I managed that :') normally I compile before pushing, must have forgotten.
|
I've just finished reviewing the code and found some issues, feel free to comment. Will address those issues soon. |
- Removed unused function modelChanged().
…LL to nullptr. Removed unnescerarry check.
+ Renamed 'maxWidth' to 'maxKnobWidth' 'cause that's what it is.
…stency. Methods: - CarlaInstrument::clearKnobModels() to CarlaInstrument::clearParamModels() - CarlaInstrument::knobModelChanged() to CarlaInstrument::paramModelChanged() - CarlaInstrument::updateKnobModel() to CarlaInstrument::updateParamModel() Members: - m_knobGroupCount to m_paramGroupCount
@cyber-bridge Do you think this can be merged without further review? I ask because because this is one of the latest pre-refactor branches. But if you think more review is required, that's also OK. |
@JohannesLorenz , yes I think merging would be a good thing; I'll be available for bug review/fixing when they get reported. "Save/load params window state." is still TODO but could be added later. There is also this #5846 (comment) (issue 1.) ; I've looked into the issue but there isn't a easy fix I'm aware of and I'll think it will need some code changes in LMMS itself to get notified when a model gets disconnected. The other two issues (2. and 3.) mentioned in that comment I could not reproduce and are probably unrelated as also mentioned in the comment. |
OK, thanks. These seem all minor things to me, I'm happy to merge this. |
Oh, should I squash all into one commit @cyber-bridge ? Do you have a descriptive commit message? |
@JohannesLorenz yeah squashing will be good 👍
|
Merged. Thanks a lot for the contribution 👍 |
A new button called "Params" is added to the Carla instrument window; on press it will open a new sub-window where Carla parameters can be found, ready for connecting to a automation-track or controller. The exposed parameters in the sub-window can be filtered by text and there is the ability to display only parameters that are connected to a automation-track or controller. When there are multiple plugins loaded inside Carla, the combo-box inside the (LMMS) parameters sub-window can be used to switch between parameters of a specific plugin (Carla). Notes: - Available when compiled with Carla version 2.1 and up. - Currently Carla (2.1) will expose a maximum of 110 parameters. - The param window state isn't stored yet in a LMMS project, this is still TODO. - Connected paramters will NOT instantly disappear when they are disconnected with the "Show only knobs with a connection" filter enabled. See LMMS#5846 (comment)
Continuation of #4571
What has changed since #4571:
TODO:
Remove debug codeCode style