Is there a way to find out which was the last clicked EQ band?
-
As the title...?
Also here is something weird: If you open the EQ and click a band, then move one of the knobs (frequency for example) it will change the frequency of the band you clicked.
If you add a frequency knob to your UI and connect it via processor/parameter ID to the EQs frequency knob and do the same thing, it will only ever move band 0.
-
-
@d-healey Depending on what you're trying to acheive, you can use the
drawFilterDragHandle
laf function :laf_Eq.registerFunction("drawFilterDragHandle", function(g, obj) { if (obj.hover || obj.drag) { Console.print(obj.index); } });
If you add a frequency knob to your UI and connect it via processor/parameter ID to the EQs frequency knob and do the same thing, it will only ever move band 0.
Yes, you have to script the EQ bands for this. If you connect it via processor ID, it will always be connected to band 0.
-
@Matt_SF What I want is for the user to click on a band, then I can move a knob to change that band. Just like with the actual effect.
-
@d-healey I'm currently just learning it so I don't know, but, maybe the broadcaster can handle this :man_shrugging:
-
@ustk I tried that but as far as I can tell it doesn't provide the index of the clicked node.
-
@d-healey I know this topic has been covered previously (doing things in LAF functions) but this could work :
HiseSnippet 1304.3ocuWssaaaCFlJNJc1cqKEnXWLrKD7UN.oF1IoocKXX4j8pQSR8pSyFPQQGsDsLmoIconygUDfh8jLfcWeJxiR2aPud2j8SJIKoDmDWuCFAwl+mzG+3+AplRgKIHPHQV42+jADj0mZ25Dtp6VcwTNpw1Hq6XuKNPQjNgh17jA3f.hGxxJ22qEXkeVj4yG9tMwLL2kjHBgNPPcI6P6SUIRat9SnLVcrGYeZ+TVux5MbE7sDLwP.O4rqfFfc6g8I6g0lMiMxZtZdTkP1RgUj.j0raJ7NoUWwQ7P6OfFPayH5EUQsf.EJttf4oQrVJZqtTlWy38c.BhRyDVHWHKbO6codzQxSXi4MJbR7HMeXMSV3kKC7pdUvaLPxJEjlMDR20tkqjNPknQimaa2fCGNcv.smFJg1hlwOm8VBvBtpbebORcIrXjGkVsRkEcf+svZEJ.Tefx4PrzoNSfUTt+9TFopy25DG.ehZKQ+ABNrnTwLVUTGgTgvWN3IbQ6MwbOH.uX7QPaA34hEbtpOWseKMk9sbwEd4ZQ.kg6rivEyRsEckD3nyHcGgn2Fbu5DBqjd2EacYIwmpKHpOj6pnBdohdR7Q0oLP11Rr+igMMiTbQmNwF3unin8urPg2THOsiSI32kAW7WnPdPR9NBYodNTdZRCTkOeuxAPtiFZRAqTGLKf..Ied3uTl9Bc3nbOxwuLi8J4Pi4mp8v3ke4.MenKuJE9UP4i5RUFy70P5nZLFcP.w.wtl8whNKoUG4ccglH2PRAVaSnpB1kUWcg0bh8eCF0mS71mbrpzHbY18iBWQWfnkDOcJyoZhMShj9gbI5Ol5WXsXJ0Qv2SnHOkWxvpENsfyEU0oyX0EQOLhbrp0cjjWmik3C62lHWDRyY.AGaHTlls1etIq12MLwKkgBdCNU8zAjn0WeyKTTlKzyHWDBgeoLcLtSTGiVLpGQhnPPtksonCY.e59znI14k9m37xiw4m2XarBqa5EsWf82.hTQ0zn01jCgIHgs.yauMInmRL.X6Q00vuuws6widfu8f0OI4o2XcTp3Xei67j3r9frw4v3iWqbeLgb4Tg78+5DExaqhlPEFxzUOl.+41YJnR8.NqcpG.rHhtC41uvV26xGCOwvVYMwbBC01Oddb94hOvfNF8Sjd94m+1rRWJx3k0hMmsVOy9MP25hixba3U7afkXILYWIou1o1OTsntgdwF5NFfx6W0rDx9Yhi9QgrW.bY.BnvzGrvonindpt.CaIsPntDpeWMea8AyMLtzzSXtsvaHCqxNLWeClHEPUdlIn5oj7.p5jz2v4hS3m8pqxqLwW.YRg6csaRUtcGOdmYL3Epo9uFuQ2W5yrq0oCwUk.1Ysq+SW6kilcxZPl.ka7hR2KtKwVCkGRp85ny3rYYYvzdC6GlrGnScxAaM8D0JQLni7qt05ZAUiD7yy+3maDrT1a8x8V9hBVIQv7FWdPh.myzBVMNnm8W+lwhGdwX7nKJ3quXPqFC02+t28kgRhw5u+G+4fPIWBrUuDZqlAt0queMttQP34Vt+ktTK5Yhg51R6hgyBnqjMv9sf1EtDHqgCMaLGBynGmDtthdsFRsHlCEaKnWy4QJqpWaEorZrx+WdF8wtRwqbCm4oSB+DiDXeyMunRd3Mlf0NiFyZaWobETe3EGdkqqtz39PY038YoovmkmBeVYJ74ASgOqNE97vovmGcs9nemsMFpD8CaaBBZVKbvjUpLczeCnhGALI
Edit : I'm not skilled enough in Broadcasters so I won't be of any help here
-
@Matt_SF Ah that's an interesting solution. I'm not sure LAF is meant to be used by that, but if it works it works. @Christoph-Hart What do you think?
-
@d-healey I'm using it to simply display the nodes freq/Q/gain values into labels and I got no problems with it so far...
-
@d-healey one thing I didn't thought about is that this snippet will throw an error if you don't have enough knobs to display, depending on how many nodes the user adds. If only we could limit the number of nodes... Hint hint @Christoph-Hart ;)
-
@Matt_SF That's ok, for my purpose I don't have a fixed number of nodes. The user can add as many as they want. Just like with the effect's stock UI.
-
Sorry, i also have a question - What is parameterId for Frequency 2 or 3? For Frequency 0 in EQ you can just use Freq, but i tried Freq2, or Freq 2 - it's not working.
-
@ForeverLive go with :
yourEqFx. setAttribute(yourEqFx. Freq + int bandNum * yourEqFx. BandOffset, value)
-
@Matt_SF Thank you alot! Can i use it in JSON of a slider or it should be in a custom callback?
-
@ForeverLive It goes in a callback.
-
@ForeverLive for some reason it's controlling gain instead of Frequency.
-
@ForeverLive Show your code
-
const CurveEq = Synth.getEffect("EQ_slot_CurveEq"); inline function onEQHiKnobControl(component, value) { CurveEq. setAttribute(CurveEq. Freq0 * CurveEq. BandOffset, value); }; Content.getComponent("EQHiKnob").setControlCallback(onEQHiKnobControl);
-
@ForeverLive Ok, the problem here is you have copied Matt's typos.
When you call a function on an object (or access one of its properties) using a
.
you mustn't leave a space between the object name and the.
Also the property name is
Freq
not Freq0 (use the auto-complete popup to help you). You need to add the band number as Matt showed. -
@ForeverLive yep sorry about that it's the damn autocorrect from my cellphone, which forces me to put spaces after dots...
-
@d-healey My apologies but it says error when i trying to add Band identifier like in example. Found identifier when expecting ','
Thank you for help!