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

State extension: provide batch parameter updates to reflect the changes back to UI #177

Open
atsushieno opened this issue Sep 22, 2023 · 0 comments
Labels

Comments

@atsushieno
Copy link
Owner

After loading a state (or a preset), the host will have to get updated parameters so that its UI can reflect the changes.

At this moment, there is no way to "get" parameter value from a plugin (because it involved Binder messaging now, which should be improved by AAP SysEx8), and we certainly do not want to have 100+ "get parameter value" requests flooding at a time. State loading is, however, a case such a batch updates is required.

As a solution, forcing plugins that it must send parameter update notifications after loading a state, is kind of doable. But since parameter update UMPs (in sysex8) are still enormous and parsing all those feels extraneous. We could simplify it by defining another parameter "bulk dump" request.

It should also be noted that we do not always need parameter updates after loading state - an audio renderer would not need the latest parameters states. Therefore, it is not connected to "load state" operation, at plugin API wise. There should be a helper function that implements state loader to involve parameter bulk dump (optionally) so that every plugin developer (or plugin bridge developer) does not have to care about it.

@atsushieno atsushieno changed the title State extension: provide batch parameter updates State extension: provide batch parameter updates to reflect the changes back to UI Nov 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant