Skip to content
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

FR: CLAP plugin support #13967

Open
dmt-hub opened this issue Dec 3, 2024 · 17 comments
Open

FR: CLAP plugin support #13967

dmt-hub opened this issue Dec 3, 2024 · 17 comments

Comments

@dmt-hub
Copy link

dmt-hub commented Dec 3, 2024

Feature Description

Support for loading CLAP plugins into MiXXX would be very nice. ( https://cleveraudio.org/1-feature-overview/ )
With the option to have (per loaded plugin) - 8 macro controls which show as knobs inside mixxx fx lane - which you can link to 8 plugin parameters of choice.
I noticed Audio Unit support will be implemented soon? Having 8 macro controls per plugin for AU plugins would be very interesting too.

@fwcd
Copy link
Member

fwcd commented Dec 3, 2024

Our existing plugin backends (AU and LV2) use the effect system, so I think it would make most sense to implement any new plugin formats in the same way. Basically the plugin has to expose a set of parameters which can then be controlled in the usual manner via the UI or from a controller. Support for effect GUIs could also be added after we merge #13888.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd Yes that would be perfect. Thank you!
Can we already experiment with Audio Units inside mixxx or is that function not ready yet?

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

Yes AU support is in 2.5, but without GUIs.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd
I am using 2.5 beta and indeed i can load an AU, as there is no GUI yet it cannot be used atm? or is there a way to expose the plugin controls into the fx lane?

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

Yes, you can control the plugin's parameters via the effect rack. GUI support is not merged yet.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd How can i expose the parameters into the effect rack? i tried different AU plugins, and no parameters are shown.
Screenshot 2024-12-04 at 12 13 51

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

Try the builds in #13945 and #13887

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd Sorry for my question, but can i download these builds somewhere or do i need to build it myself?

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

Tried building from source before but always got stopped on this issue:
after doing cmake ..

-- Found WrapAtomic: TRUE
CMake Error at CMakeLists.txt:2174 (find_package):
Could not find a package configuration file provided by "GTest" with any of
the following names:

GTestConfig.cmake
gtest-config.cmake

Add the installation prefix of "GTest" to CMAKE_PREFIX_PATH or set
"GTest_DIR" to a directory containing one of the above files. If "GTest"
provides a separate development package or SDK, be sure it has been
installed.

-- Configuring incomplete, errors occurred!

(trying to build on MacOS sonoma)

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

You don't have to build from source, you can grab the GitHub Actions builds:

Screenshot 2024-12-04 at 12 30 38 Screenshot 2024-12-04 at 12 31 36

W.r.t building from source, you should look into setting up a vcpkg buildenv, which contains all dependencies (e.g. gtest).

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd Thanks for your patience and help, downloading now!

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd Yes, thats working out fine. Noticed only the first 8 parameters are exposed, i guess thats to be expected at this stage of the implementation?
Would be nice for future version of mixxx if there would be an option to choose which 8 parameters are exposed into the fx lane, so one can choose the most useful parameters to have in there.

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

Out of curiosity, did #13945 already fix the issue of missing parameters for you or did you need the other PR with async initialization?

Agree that it would be nice to have a way of displaying more parameters or choosing a different subset, not sure if Mixxx already has something for that.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

@fwcd Screenshot 2024-12-04 at 13 15 33
Yes, 13945 fixed the parameters issue, just Aaltoverb is not showing its parameter names tho.
I noticed in this build the Retina scaling doesnt work as expected.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

My request was linked to this issue, with macro knobs one could assign 8 favorite parameters from a plugin to each macro knob, these 8 macro knobs would be shown in the fx lane.

@dmt-hub
Copy link
Author

dmt-hub commented Dec 4, 2024

Screenshot 2024-12-04 at 13 27 52 In this effects preference windows it could show all available parameters per plugin, lets say one can then place 8 checkboxes in front on the parameters that should be shown into the fx lane.. for example

@fwcd
Copy link
Member

fwcd commented Dec 4, 2024

That might be worth filing a separate issue for, since it could probably be implemented generically for all effects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants