Forum
    • Categories
    • Register
    • Login

    Best practice for stepped frequency parameters in SVF EQ

    Scheduled Pinned Locked Moved General Questions
    11 Posts 5 Posters 113 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dannytaurusD
      dannytaurus @the red_1
      last edited by dannytaurus

      @the-red_1 You could use an array of the values and a stepped knob in the UI.

      const EQ = Synth.getEffect("Script FX1");
      const knb = Content.getComponent("knbEQFreq");
      const freqSteps = [3000, 5000, 7000, 9000, 11000, 14000, 16000];
      
      inline function onKnbEQFreqControl(component, value)
      {
          local index = Math.range(value, 0, freqSteps.length - 1);
          EQ.setAttribute(EQ.Frequency, freqSteps[index]);
      }
      knb.setControlCallback(onKnbEQFreqControl);
      
      HiseSnippet 1593.3ocuX0saaaCElxIJMwqqnEaWrKERuwcHyvN+1fhg3jX6Nitj5TmFTfhhLZI5XBKQpIQkD2gc01E8t8XrWi9.zALf9Dr2ftmfsCIksjhcccMRqBfs4OGdNeme93QoY.2lDFxCPF4OtuOAYbSyV8Yht62ESYnFUQF2x7.bnfDXomZu993vPhCxvXtGJmvXo4Qpm2sydXWLyljLEBcBmZS9QpGUjLayJOh55VG6PNl5kZ2qWogMmsO2kGA1yblkP9X6d3yHGhkaKmI5GvgcQFeq48sa6r41N3sZu4ls2prsy1cJUdaLgzdsMt+ZjMr2ztbmMwkPFKTygJ3AsDXAIDNz83N8a0keASqfSngz1tD4fxnVfl0Si1uK00o4.mSHBYLeyDW0bZW0Wad.0gNb9DW1sUKXkHQZmlQtIYRk+HLIiTlz7ZS5NlsrCn9hjUj1yWX1fAQvNXH1j1Tz6Ekaubl6ygcvDE8v8H0CfACknvpkJshE7w8dP97P7ITXcNNvp1QVeukJUo3YDQsNcH1hBKqOQq5Oq7xv1S1cOVaX6CTBHv9bOeNCFTXYXsZGUOf7yKmUCcfoZIH9gfjOesRRqXC0mao9ba0mkKq+Zc8WaBe8B3TnLWJiX0IhYKnblEm8nAZQZDAb2B1CrfU.s4FQtW9eIuE73xswtVTlC4RPwGfA.FfYmQJn10JVfZFZYEcIryDcs9NqxRaWJdsiJFRD6JDAz1QBRAXrTqQDlc+TR9bkBdAH0ulGb.RYhMr8wttsg79BiZy26Ao.zgbA4wrBRydI3Prt5Rc5L10hOJWRvXWVVQFLIAKvh7ZSBR4zTaDx.ylVuvzkVaqSIRsQNqAiJdrOIdbctqiLcU96QKBPw4TxxgXKD1pPULbq3hgVtTGR.h5HqDFlsgT.HMWE5oMphE3AGEbpfl7IABpDPFUImCbY55rkLqRB6I39p8FmHgLtwTo3KSTZ0J8SOvCmZsuoBP652h9R3DMMKWrDxi533RZxCoxXRxNWrBZTp.fDh6D4hEYYljb1wKHOizzAxRdFb18Syo+QPWUZhzUSqIdGylTgc2wai4FiMBwqOE1XLI+WZp41RLv4Mq+rYkQuzGMid93bIPmRkeSyDJ1wwka7JyjhV+.hONfbLuoKtegPrmuK4IfMthUafkqmL0ZzJcesIrmbGEr6hYLha3rPHrv0z8bnmviDT1Y.Ub.EpOLOLxqEzhfMY+XqClyHmjKPOtjbrLunEg4nF7evS7hkkiMhWr7fESnQPGRDWvC5oBGw+FYrn12Gpbxm14xxnccc4WHK8owYoPLPMWStae+tbF0VNkdGCrzc83QRdBs4ljhu2fvw.KGZz4XL0Ulw2JJD3BcdLqEbNptqLl6DRPnRm2vrTQ3OnB3PtCrzMpisAed+lv0VxRII8Jj2RBJZOL+MCLRmBoayJyxxScPCYZKC.jmhqCZGSFMahC.wfdEjTj4LlKEkoNeVNBpVyoUcivSjqBWwhNQy+BtBoVz9aEHVPt0EMCOuyo.aYFDcayNTWoxJFu5n1+PAmrsm0RkKAEGWNf+utVKI+TB.4M1CRXpA47Nv8RJAFjDkxW.nX3H.2GPYmj85l0qb.9xry8p2Vo0PF+D1sV8HWncBwyV4279qcz80Mr0BzwjKEGyUGHjKeN.LohSuilPmz5vVT6GFvi7UCxZBU9iJUIcvQthQlug9PUd5ciDbOrdPNTJfl+J.sxZq81ctBPe8adycmNfht6+92JfNm4QuW.9THrzARwclJ.B2nMV.ByOIb.Oq95QBXnUmRbHOdINVPc866AJxdJrosItSGPf9EFKPj2hMQf.DOi.j2syTAje5qp913LuVdbtnKPKesDXp7Ou72GWfQM+LfmaOl.CfwIDXNPR8bMki8IOzLInrjYMFFtX04yYEilrOEg2Uomt9I.g.VV18ZWBplgcS04Hz8TUZn1aLdrlAZWA49+YkOLqp5cEXDUSQgnLCiuUtgSpKkF5iZ3j8bP6w487vpFOloWD4yRaRdX6.9o15N+jvcQ0L.CMSc46RlGHGaUdz2tBd4E5o11YOpQDb0YUv0lUAWeVEbiYUvMmUA2ZVE79eXAk+GqhuVWl5BLQMqoatwX.eBbwO5+wkAyGk
      

      Meat Beats: https://meatbeats.com
      Klippr Video: https://klippr.video

      T 1 Reply Last reply Reply Quote 1
      • T
        the red_1 @dannytaurus
        last edited by

        @dannytaurus

        Thanks for the suggestion!

        Just to clarify though:
        Synth.getEffect() doesn’t seem to be available in my HISE version / scripting context.

        Using:

        const EQ = Synth.getEffect("Script FX1");
        

        results in:
        Unknown function 'getEffect'

        So while the stepped array + UI knob idea makes sense conceptually, the example as written doesn’t run here.

        From what I understand, effects can’t be accessed directly via Synth.getEffect()

        Please let me know if I’m missing something or if there’s an updated / supported way to reference FX modules.

        Thanks again!

        dannytaurusD 1 Reply Last reply Reply Quote 0
        • dannytaurusD
          dannytaurus @the red_1
          last edited by

          @the-red_1 Do you have a Script FX module called "Script FX1" in your module tree?

          What version of HISE are you running? Go to HISE > Help > About HISE and tell us the git commit hash shown, like this image:

          CleanShot 2025-12-17 at 23.43.57@2x.png

          Meat Beats: https://meatbeats.com
          Klippr Video: https://klippr.video

          T 1 Reply Last reply Reply Quote 0
          • T
            the red_1 @dannytaurus
            last edited by

            @dannytaurus
            i have 4.1.0

            cd8f3f10-a90f-4e47-b3cb-0a08d7ccb2c2-image.png

            bf68bbf5-aec5-478f-ba26-9d73952b8e8b-image.png

            OrvillainO dannytaurusD 2 Replies Last reply Reply Quote 0
            • ChazroxC
              Chazrox
              last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • OrvillainO
                Orvillain @the red_1
                last edited by

                @the-red_1 Right click your Script FX1 module and use one of those "copy reference" functions... there's usually one or two that pop up depending on what type of module is loaded.

                Musician - Instrument Designer - Sonic Architect - Creative Product Owner
                Crafting sound at every level. From strings to signal paths, samples to systems.

                1 Reply Last reply Reply Quote 0
                • dannytaurusD
                  dannytaurus @the red_1
                  last edited by dannytaurus

                  @the-red_1 Unfortunately, 4.1.0 doesn't tell me which version you have. That version number is not updated very often.

                  If the git comma hash doesn't populate, then you likely have a very old copy of HISE.

                  Did you download the app HISE app, or did you build it yourself from the source code?

                  Meat Beats: https://meatbeats.com
                  Klippr Video: https://klippr.video

                  T 1 Reply Last reply Reply Quote 1
                  • T
                    the red_1 @dannytaurus
                    last edited by

                    @dannytaurus
                    I actually downloaded and built HISE directly from the GitHub source code, not from a prebuilt app.
                    So I’m running a source-built version.

                    If there is a specific branch, commit, or build configuration required for

                    Synth.getEffect()
                    

                    to be exposed, please let me know and I can double-check or update my local build.

                    Thanks for your help.

                    David HealeyD dannytaurusD 2 Replies Last reply Reply Quote 0
                    • David HealeyD
                      David Healey @the red_1
                      last edited by

                      @the-red_1 said in Best practice for stepped frequency parameters in SVF EQ:

                      If there is a specific branch,

                      Build the develop branch if you haven't already

                      Free HISE Bootcamp Full Course for beginners.
                      YouTube Channel - Public HISE tutorials
                      My Patreon - HISE tutorials

                      1 Reply Last reply Reply Quote 1
                      • dannytaurusD
                        dannytaurus @the red_1
                        last edited by

                        @the-red_1 Use the latest commit 3c36e36c0c27adf97be22206fdebf87ec9c7eeb0, as as @David-Healey says, use the develop branch.

                        Meat Beats: https://meatbeats.com
                        Klippr Video: https://klippr.video

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        16

                        Online

                        2.1k

                        Users

                        13.1k

                        Topics

                        113.3k

                        Posts