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

All slider in jalv.gtk generic ui ignored. #34

Closed
thorwil opened this issue Oct 27, 2015 · 5 comments
Closed

All slider in jalv.gtk generic ui ignored. #34

thorwil opened this issue Oct 27, 2015 · 5 comments

Comments

@thorwil
Copy link

thorwil commented Oct 27, 2015

When running jalv.gtk --generic-ui http://tytel.org/helm, Helm doesn't react to the generic ui at all.

@falkTX
Copy link
Contributor

falkTX commented Oct 27, 2015

Seems like the plugin is completely ignoring parameter changes
https://github.com/mtytel/helm/blob/master/src/plugin/helm_plugin.cpp#L178

EDIT: that's incorrect. that function is a message callback, not the function that is called when a parameter changes.

@falkTX
Copy link
Contributor

falkTX commented Oct 27, 2015

Ok, going through the code...

helm uses the new juce api to handle plugins:
https://github.com/mtytel/helm/blob/master/src/plugin/helm_plugin.cpp#L38

with that the plugin class doesn't need to handle parameter changes directly.
in helm's case it uses this class/code for parameters:
https://github.com/mtytel/helm/blob/master/src/plugin/value_bridge.h#L24

when a parameter is changed by the host the 'setValue' function is called:
https://github.com/mtytel/helm/blob/master/src/plugin/value_bridge.h#L42

as we see in this line, the listener is registered:
https://github.com/mtytel/helm/blob/master/src/plugin/helm_plugin.cpp#L36

so the parameter value does get changed and parameterChanged is called.
(ie this https://github.com/mtytel/helm/blob/master/src/plugin/helm_plugin.cpp#L178)

so perhaps 'setValue' is never called?
tbh this is a first time I see an opensource juce plugin that uses the new api.

btw, parameterChanged is calling gui functions and allocating string data, which is really awful for realtime.
Automating a value while the UI is open will result in xruns.

@mtytel
Copy link
Owner

mtytel commented Oct 31, 2015

Hmmmm.... Going to have a look at this over the weekend. Maybe I should refactor this a bit so it doesn't use strings.

@mtytel
Copy link
Owner

mtytel commented Nov 11, 2015

Well I finally got around to this bug, but it's actually working for me.
I just open Helm with generic UI and set the amp_release parameter really high. Not sure if I'm missing something here..

Also, the listener callback is just to alert the GUI that a value was changed from the host. The actually value used in synthesis is set here: https://github.com/mtytel/helm/blob/master/src/plugin/value_bridge.h#L47
Don't know why I have a return statement there though..

@mtytel
Copy link
Owner

mtytel commented Jun 10, 2016

Going to mark this done because it worked for me?

@mtytel mtytel closed this as completed Jun 10, 2016
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

3 participants