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

Support for JACK/LV2 CV port metadata? #664

Open
mxmilkiib opened this issue Feb 6, 2020 · 7 comments
Open

Support for JACK/LV2 CV port metadata? #664

mxmilkiib opened this issue Feb 6, 2020 · 7 comments

Comments

@mxmilkiib
Copy link

mxmilkiib commented Feb 6, 2020

JACK metadata allows for ports to be marked as "CV", facilitating both a software modular synth environment and a connection with real world modular synths.

Might it be possible to see support for marking certain audio inputs and outputs as CV for JACK apps in JUCE?

@mxmilkiib mxmilkiib changed the title Support for JACK CV port metadata? Support for JACK/LV2 CV port metadata? Oct 23, 2020
@mxmilkiib
Copy link
Author

Note that this would also apply for LV2 plugins if JUCE were to officially target that format #123

@dromer
Copy link

dromer commented Jun 11, 2022

Now that JUCE7 will have LV2 it would be nice to put some attention to this again.
It might be good to simultaneously look at the VST3 CV port implementation, so as to work on concurrent functionality and developer APIs.

LV2 CV ports are more extensive than VST3 though, as they are not just an audio port with a tag but also support full control port attributes, so you can also set ranges and more meaningful values: https://lv2plug.in/ns/lv2core#CVPort

Example LV2&VST3 plugin that has a set of CV Port I/O is Cardinal

The main advantage of CV ports is that the Host can keep audio and CV streams separated as to protect the users hardware (without a DC-coupled audio interface one would very likely blow up ones devices). And because they are audio-rate control ports they are very useful for dynamic realtime automations.

Ultimately an implementation for JACK would also be nice, but I think JACK implementation in JUCE is quite lacking overall and not even cross-platform.

@mxmilkiib
Copy link
Author

"JACK implementation is quite lacking overall and not even cross-platform"

I'm not sure I understand what that means? Maybe you are confused and thinking instead of the DPF stance of "plugins first with the JACK target as primarily for testing" meaning something other than it does? JACK is cross-platform, and JACK CV is cross-platform, do you not agree?

@dromer
Copy link

dromer commented Jun 11, 2022

I mean JUCE jack standalone, it only works on Linux, from what I read.
The JACK implementation in JUCE needs a lot more work than just adding CV ports, is the thing.

@mxmilkiib mxmilkiib mentioned this issue Jun 22, 2022
@mxmilkiib
Copy link
Author

Might looking at implementing CV ports be something that could happen in the not-to-distant future? AFAIU, VST3 supports CV ports also.

@dromer
Copy link

dromer commented Oct 19, 2023

@mxmilkiib I already mentioned that here: #664 (comment)

However there are still nearly no hosts that support this, so I can't imagine this to have very high priority.

Btw Kushview Element now has LV2 CV support (it's JUCE based, but their LV2 hosting is not).

@mxmilkiib
Copy link
Author

JUCE can make hosts, so if JUCE supported CV then that would crack that chicken-and-egg.

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

No branches or pull requests

2 participants