draggable filter panel preset problem
-
@Lindon I have searched everywhere but there is nothing about it. assigning buttons is quite simple but in this case it is beyond my skills. I just want to reproduce the parametric EQ module on the hise interface. but the draggable filter panel does not allow the gain buttons freq, q ... to be automatically selected when I click on a frequency.
-
ok heres an example (or two) for an eq module called EQ1:
here we control the freq of the first node( LoShelf in this case)...
inline function onLoShelfFreqControl(component, value) { //low shelf freq local eqdx = 0 * EQ1.BandOffset + EQ1.Freq; EQ1.setAttribute(eqdx, value); }; Content.getComponent("LoShelfFreq").setControlCallback(onLoShelfFreqControl);
here we control the gain of the same node...:
inline function onLoShelfGainControl(component, value) { //low shelf Gain local eqdx = 0 * EQ1.BandOffset + EQ1.Gain; EQ1.setAttribute(eqdx, value); }; Content.getComponent("LoShelfGain").setControlCallback(onLoShelfGainControl);
Here its the freq of the second node:
inline function onLoMidFreqControl(component, value) { //low mid freq local eqdx = 1 * EQ1.BandOffset + EQ1.Freq; EQ1.setAttribute(eqdx, value); }; Content.getComponent("LoMidFreq").setControlCallback(onLoMidFreqControl);
it should be pretty obvious from here...
-
@Lindon yes that I can do. what i want to do is just have 3 button (freq gain q) and control the frequencies selected on the eq. as soon as you touch a frequency on the eq, these same buttons work
-
@yall - so you need to find out which node was last touched, and replace the "0" or "1" with its number...
-
@Lindon
it doesn't work the way I want it to. in fact, sorry, maybe my translator doesn't express exactly what i mean.for simplicity. I want to create exactly the same as the parametriqEQ1 in the effects.
1 / create a draggable filter panel> ok
2 / create 3 buttons only (Freq, Gain, Q)
3 / I create for example, 12 frequency points on the EQ1. I want to see acting on my selected frequencies simply with my 3 buttons. as in the paramtric EQ effect.
I don't want to create 36 buttons (3 times 12 frequencies).
I don't know if you understood what I meant ^^3 buttons to manage all of all frequencies. as soon as you select a frequency, the buttons return to their respective value
-
@yall - yes I understood.. so you need to :
- wait until the user has "touched" an eq node.
- find out which on it is ( I dont know how you would do that..)
- So given there is a way to obtain this node number - in some variable - lets call it: nodeNumber
do this:
inline function onLoShelfFreqControl(component, value) { //low shelf freq local eqdx = nodeNumber * EQ1.BandOffset + EQ1.Freq; EQ1.setAttribute(eqdx, value); }; Content.getComponent("LoShelfFreq").setControlCallback(onLoShelfFreqControl);
-
@yall Since the draggable filter panel has no callback system, you can't find which node you clicked to connect your set of sliders.
But what you can do is create a set of small buttons, one per band, so you can click to select the band manually. Unfortunately, it is not possible to do it automatically unless something I'm not aware of... I don't even recommend that anyway because it means that if you drag a node, the sliders are not matching the actual moving node... You have no other choice but to wrap up your own draggable EQ -
@ustk @Lindon it does not work. indeed the EQ1 does not have a reminder. It’s a shame because that would make it possible to gain precision, to have freq gain knobs .. which manage all frequencies. tanpi i will wait for @Christoph-Hart to work on the topic ^^ anyway thank you guys for your help
-
-
@Lindon I had thought a solution may be possible but complicated. create 50 frequency node. create 50 panels with their buttons and hide them. then make them visible only when a frequency is selected. but I can't even imagine the work
-
-
@Lindon yes @Christoph-Hart my genius, my god, give us this gift :) it's my birthday next week ^^
-
@yall I'm not sure the floating tile system can be easily upgraded to accept callbacks as there isn't one in the currently available tiles... They are simply not made for that purpose but I might be wrong, and we might gain from having one with the draggable filter, at least just to catch the index. But as @Lindon said, I wouldn't hold my breath...
-
For anyone else coming here for the original subject, I made a generic thing that will handle all parametriq EQs in your project (obviously if you only have one then ignore this).
// Save EQs with presets const eqIds = Synth.getIdList("Parametriq EQ"); for (id in eqIds) Engine.addModuleStateToUserPreset(id);