Parametriq EQ modulation linking
-
The modulating dials for the parametriq EQ (Freq, Gain, Q) should automatically adjust to the last moved or selected band.
For now this is only possible in the module tree and works well there, but not in the interface since it's always linked to the first band there despite the last moved or selected band.
-
100% agree, I've asked for this before too.
-
@d-healey if you have a defined number of bands you can use a broadcaster to display the correct controls on the ui.
-
@DanH Your suggestion requires scripting. The requested feature would require no scripting and not have a limit on the number of bands.
-
@d-healey So how should I implement this with a no-scripting solution? There's not a "CurrentFrequency" parameter that you can link to.
The broadcaster is the way to go.
-
@Christoph-Hart can you not add the eq sliders to the existing DraggableFilterPanel floating tile?
-
@DanH no, that will create endless requests for customizing those. I'll add a example to the snippet browser. I really don't see why there should be a no-scripting solution for this.
-
@Christoph-Hart said in Parametriq EQ modulation linking:
So how should I implement this with a no-scripting solution?
If I select a band in the EQ module, then move the Frequency for example it will move the frequency of the band that was last adjusted.
If I add a draggable filter panel floating tile to my UI connected to that same EQ module, and I also add a knob to my UI connected to the module's frequency via processor/parameter ID. Moving a band on the panel doesn't change which band the frequency knob affects. It will always affect band 0. It should affect which band was last clicked, just like the module's interface.
HiseSnippet 1060.3ocuV0saaTDEdljLFrKzzhPbEWrJbSpT.YGmlV.gXI9GvpjTScZg6JS1YV6Qd1Y1r6rI0spRQbUugq4MfK4YnuC7hvaP3L6t16ZmnzTKJ9hnb9aNmy2YNey1OR6wii0QHb0CmDxQ3OfLXhxLp0HpPg50FguIYeZrgG4joZuIgz3XNCgwq98VE3pqgR+8Oe6dTIU4wKTgPOQK73+nHPXJz128ABorKkwOTDTx6cb64oUszRcBTOqRpiBodioC4GPstsBAgqzgIL5nAFpgGC9rmlMYvH8opL+ehHVbjjaEZfF.GTlZTqQBIq+zdMFgvq0unyWMqy+Xx9BlXl9BD3VoFbJhnLFfW4pJoFuEkDtTIsVVIcax.uHQnovhsdtAomBFH9T.pKWJY9hvulzRCNnLeQ.cLuaDHLKfM2sd8sbf+bmu1OQ4YDZkiVcf1venZy6T6E0pV6k0bVzju+kZyllHsTxitTy1oazUE3lpjfi3Qa4bBUlvm4Hz9yioUtdXpWVWWxQspmRXdXHOWtqVxrXk8+u3D.kCa1YQdEBtZRmD2LeRLPJX7Hj.Nj2i7.k9nFnzhe1s3W8atnG2qM0PmdLvIBYIjGYD1lA2leBrSjMfqRZyiGazgv06V5fPsxle7ML42HyRZWolZDpgGJfl1l50IkU0.8rxqbSJDZ6lW.YY6SHsinCGRArqqPB2H5SUbI5ngS24pVY5gHL7fBsme94mMu1syctYZZrcK9QjWTywYiYHZO1FeEHRifsWSj3XmN+TiM1x5ROEi+Lv3m2HUDlJR8o+rNZbLrvyAC9TYLu1KQmJXlQHLA+oqfPi3hgiLVo+BmNrlAWq+FmQk.ndtE.j6YtwlI1aRURcDEHXLIuuNVXuoZ8ylJT3e.9wCGHdNuLeWPY5ucbCnEo4U+sabhuu.zPHN+vyQ9BYPL.Cg8B.FMD9iHONl6v39zDowIdLbTRgZLmcnNkpKr.FsLPyCi.wXpHO0ZER2H9wn.MiaIGrBIbk2Dfo8BLJ.WllkHol4I3rL44Fr8cYVEK0gBviIk672BVu5WIq20sDuMouv3M5xqwUtjZD19dWTi4uU7gjN99bOSQAtFo6urrOLT+5+vv5S4MZkDcBuyw4yuEtdTtNNHIHaYO1t5.6Qn8nJV8bjxoYyOy0pnQYFLqhsm+kcEq4hJ1oPwsRC4t4JN6a9cmWaUratB2esyel5w8V7Lt+hJ9xxGZ2tG1QYoqxPzU+O5oVzizIVxy8o.hY2PALZ.Pp4wg4oBnDmAU4x0sx1RZ.OE5HXfQ77biMrx3biMlZ7+kbDP8hzO0K6sJ6Uk2OUCz2pzOYpJ7safryhORA+.lNwS87l+ntPfaurA1bYCbmkMv6trAt6xF38V1.u+aNP6Wb9cIFcPFYGBse+NYOyhKsQf9WL9AH7A
-
module's frequency
There is no "module's frequency". The parameter IDs in the EQ are special as they are supposed to be used with the formula
Eq.BandOffset * bandIndex + Eq.XXX
It should affect which band was last clicked, just like the module's interface.
If I change that it will break every project that used the EQ so far.
-
@Christoph-Hart said in Parametriq EQ modulation linking:
If I change that it will break every project that used the EQ so far.
How so? All projects so far have to use the script method instead of processor id, unless they only have one band.
@Christoph-Hart said in Parametriq EQ modulation linking:
There is no "module's frequency"
Sure there is, through processor id.
-
@d-healey the parameter connection will just call setAttribute with the index of the ID. I cannot branch this that it should redirect it to the currently selected band if it comes from a script control or not.
-
@Christoph-Hart said in Parametriq EQ modulation linking:
the parameter connection will just call setAttribute with the index of the ID. I cannot branch this that it should redirect it to the currently selected band if it comes from a script control or not.
I think we're misunderstanding each other. I'm saying if I click on the knob in the module and move it I get one behaviour, if I click on a knob on my UI that is connected to that same knob in the module (no scripting required) I get a different behaviour.
-
I'm saying if I click on the knob in the module and move it I get one behaviour
Yes. You get that behaviour because it's specially programmed for the interface of the EQ in HISE.
if I click on a knob on my UI that is connected to that same knob in the module (no scripting required) I get a different behaviour.
Yes because this is the default way of handling parameters. I cannot move that functionality from the interface into the default behaviour or it breaks the current functionality because it will reroute changes to the first band to whatever is selected.
-
@Christoph-Hart said in Parametriq EQ modulation linking:
because it will reroute changes to the first band to whatever is selected.
Aha I see now, so it looks like the broadcaster is the only way. People keep asking me to make a video about the broadcaster, this might be a good one to start with!
-
@d-healey yeah, I've pushed the example snippet that replicates the behaviour.
https://docs.hise.dev/tutorials/modules/index.html
Not sure if that is a good example for an introduction to broadcasters though as it's a little bit more complex than just a hello world example that listens to a single event - there are two broadcasters and one is changing the source event of the other.