Forum
    • Categories
    • Register
    • Login

    Parametric EQ - Limit the amount of nodes?

    Scheduled Pinned Locked Moved General Questions
    37 Posts 9 Posters 1.8k 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.
    • ulrikU
      ulrik @DanH
      last edited by

      @DanH I mean that Christopher could add a property to the EQ

      Hise Develop branch
      MacOs 15.6.1, Xcode 16.2
      http://musikboden.se

      DanHD 1 Reply Last reply Reply Quote 1
      • DanHD
        DanH @ulrik
        last edited by

        @ulrik That would be nice @Christoph-Hart :)

        DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
        https://dhplugins.com/ | https://dcbreaks.com/
        London, UK

        1 Reply Last reply Reply Quote 2
        • David HealeyD
          David Healey
          last edited by David Healey

          It might not be that hard to add that property yourself if you want to explore C++.

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

          ulrikU 1 Reply Last reply Reply Quote 0
          • ulrikU
            ulrik @David Healey
            last edited by

            @d-healey I just bought a c++ course on Udemy, it will be my summer reading :)

            Hise Develop branch
            MacOs 15.6.1, Xcode 16.2
            http://musikboden.se

            1 Reply Last reply Reply Quote 1
            • NatanN
              Natan
              last edited by

              Is This Available Now?

              DanHD 1 Reply Last reply Reply Quote 0
              • DanHD
                DanH @Natan
                last edited by

                Which bit?

                DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                https://dhplugins.com/ | https://dcbreaks.com/
                London, UK

                NatanN 1 Reply Last reply Reply Quote 0
                • NatanN
                  Natan @DanH
                  last edited by

                  @DanH Latest Develop 👋

                  DanHD 1 Reply Last reply Reply Quote 0
                  • DanHD
                    DanH @Natan
                    last edited by

                    @Natan you mean a function to limit the amount of nodes? I don't think so

                    DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                    https://dhplugins.com/ | https://dcbreaks.com/
                    London, UK

                    lalalandsynthL 1 Reply Last reply Reply Quote 0
                    • lalalandsynthL
                      lalalandsynth @DanH
                      last edited by

                      @DanH Is this by any chance possible now ?

                      https://lalalandaudio.com/

                      https://lalalandsynth.com/

                      https://www.facebook.com/lalalandsynth

                      https://www.facebook.com/lalalandsynth

                      DanHD 1 Reply Last reply Reply Quote 0
                      • DanHD
                        DanH @lalalandsynth
                        last edited by DanH

                        @lalalandsynth I don’t think so. I reckon there must be a way to edit the mouse callback for adding nodes in the source code. My initial idea was to create the nodes you require and then edit the source to prevent users adding their own.

                        Failing that what you want to do might be possible using multiple EQ filters in scriptnode

                        DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                        https://dhplugins.com/ | https://dcbreaks.com/
                        London, UK

                        1 Reply Last reply Reply Quote 1
                        • ustkU
                          ustk
                          last edited by

                          Digging up quite an old one!

                          Is there a way to limit the number of nodes nowadays?
                          Only found interrogations...

                          Hise made me an F5 dude, any other app just suffers...

                          DanHD Oli UllmannO 2 Replies Last reply Reply Quote 0
                          • DanHD
                            DanH @ustk
                            last edited by DanH

                            @ustk I seem to remember being able to edit the data field but can't find an example. I did it in the source code. Do you want a fixed amount always visible or allow the user to add a max of x?

                            DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                            https://dhplugins.com/ | https://dcbreaks.com/
                            London, UK

                            ustkU 1 Reply Last reply Reply Quote 1
                            • ustkU
                              ustk @DanH
                              last edited by

                              @DanH always visible and not able to edit the type. I’d prefer not to edit the source unless it’s customisable for a pull request compatibility.

                              But seeing my needs I might just end up with a panel based custom solution lol

                              Hise made me an F5 dude, any other app just suffers...

                              DanHD 1 Reply Last reply Reply Quote 0
                              • DanHD
                                DanH @ustk
                                last edited by

                                @ustk you're good at those 😆

                                DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                                https://dhplugins.com/ | https://dcbreaks.com/
                                London, UK

                                1 Reply Last reply Reply Quote 1
                                • Oli UllmannO
                                  Oli Ullmann @ustk
                                  last edited by

                                  @ustk
                                  I solved it using an EQ broadcaster. The value you get from the broadcaster is the index of the band.

                                  If the index is below my maximum value, e.g. 8, nothing happens except that I save the current status of the EQ in a variable (Effect.exportState()).

                                  If the index exceeds my maximum value, I show the user a message and reset the status of the EQ to the status I saved in the variable. It's actually pretty simple. :-)

                                  At least that works with HISE's internal EQ.

                                  ustkU HISEnbergH 2 Replies Last reply Reply Quote 4
                                  • ustkU
                                    ustk @Oli Ullmann
                                    last edited by

                                    @Oli-Ullmann Mmm clever!

                                    Hise made me an F5 dude, any other app just suffers...

                                    1 Reply Last reply Reply Quote 1
                                    • HISEnbergH
                                      HISEnberg @Oli Ullmann
                                      last edited by

                                      @Oli-Ullmann do you have an example? I've been trying to do this but I get some buggy behaviour (My EQ is maxed at 3 nodes, but every other click adds a 4th node).

                                      gif.gif

                                      const var MAX_BANDS = 3;
                                      const var eq = Synth.getEffect("eq");
                                      const var ft = Content.getComponent("ft");
                                      
                                      reg savedState;
                                      
                                      const var eqBroadcaster = Engine.createBroadcaster({
                                          "id": "eqBroadcaster",
                                          "args": ["eventType", "value"]
                                      });
                                      
                                      eqBroadcaster.attachToEqEvents(["eq"], ["BandAdded"], "");
                                      
                                      inline function onEqEvent(eventType, value)
                                      {
                                          
                                          if(eventType == "BandAdded")
                                          {
                                              if(value < MAX_BANDS)
                                              {
                                                  savedState = eq.exportState();
                                              }
                                              else
                                              {
                                                  eq.restoreState(savedState);
                                                  Engine.showErrorMessage("Maximum " + MAX_BANDS + " bands allowed", false);
                                              }
                                          }
                                      }
                                      
                                      eqBroadcaster.addListener("", "bandLimiter", onEqEvent);
                                      
                                      HiseSnippet 1244.3ocuV07aiSDEebScEM.R6JshyV9TJaHJoY6WrTQa9BhXS2.or6JsZU0D6wIip8LIimj1HTk3NHw+Cbh+IPBtw+Jbiybo7lwNw1McKkH.eHJuu+Mu2aduoqf6PBC4BjQ9SmMhfLdOydyXxg0GhoLT6FHi20jLt4k3fQ9DTsYivggDWjgQtOSofwlqize+wmVC6iYNjDVHzK3TGxynATYB2tG8ETe+VXWxozfTZ+jiZ6vY0497I.XxYVFMB6bNd.4DrRs0LQeNNbHx3CM2c+9k26.u881lP5224.ra4cHDmcw86uWYbksc8H66tS0pHiMZ5RkbQOIVRBQFqWi6Nq2P9Ern.7BZHsObp.hJndPjiX2h66pNhJtn5Co9tcmmkBQfW5ljyxEkydjYGpKcA+jb2CzBrRrHcBzXsrvKWF3U4sAuaARFofz5QP5gl8bDzQxDIQ0x1LIQ3gcxVKizEslaNSnHDJslhEVcN9UmU63SZzy5PqpOMeh.xXfitKoz.hromGwQVvlL1dqzZ4IAspyg3wjJ8pyCFwY.QAaOoR07Bx.qP7ThqNC.LRGhZBN10AGBvE7SS1.JiTxQP.MSIpv2j2B9rot1erkcFqrKFIBKFDBBesMYJDbU1wtnk8Tr+Dh8axekBHYrqDVJwNCOk2bbSkEgEds5r8lhfKpgYtG6BcGJRa8gfx7AjY4Mg4HoblEmEaWgEwqnkNZakOBr5endIxsN7PqTtdKsBQ5Fqp1dqOIojr0BoI5o9RRmPRiLtD4xQbgTyn.f14pc0h+Q7CIuEeAlKHgPCJIx9DemxSpu3hSHz51TH3hNPCGbwsfcG7kzfIAV1VONU2ziA59voMzB66yu.NwEs7v.NVBfWk+pkJNttOiB+iA0daUgT4I8HFUEOI6u0SSUQNgKIOmUPU.1Dbo0ME44cqxTMuBtuODpaSrZ9k3tLr.aRPehHU4WqHbGM6E+MteW7chtKkRQNqMiJe9HRL8cO4BEeYD92W2tAVhUSNh4A5MhHjTEbLZPlBysiliroYCR34R9Hstw2fgAIx3AeQSNZ4ywRJavoT.1T.Aqa5IQWldWvrzDWPckvrbSihFHzPBcvPoh52R.YTz+.yFB7fAXHazh5Ck3tXFwG0ev78DatwbWBM.AIbu95q+1rb2NV4pJ15SuQKSUCu8hbT63gH5IG1sYtjKAFeTEMIjagl0WxEmGBKlHf.cOa9qfUZKM8El6ycm3ikYWFnVYFK.ZTxLAVMWlERkyRuR8evFhx24Fh6KDenYWpzY3siw0tELBsP+Wfw38puuYzxkD.ttYqWspKQKe+Wh9n4M+0mHlRZNNN1jwYh8ISBh5JCUMu4fifZHd44YmuuT9iTLpLmwne5K0L1N6ylXtUuIimjv3AZS1Ilwu7ck9SsF6NmQoekp0Xua5i8uIiCtoSqr.p+9OlKhyBr9y+vzHNKA1JKg1JYfaqVm1jotwFUex8uzibPeEehZDSGrTPgIKlP1uGbu1g.cGLXpftHrlZBRDcYEsBR8H5hhoALT35XgUTzFwBqLW3+KwH.6H3m4DshP038NZNv4loeo6llcTzVUP50FouqE.Ol7LGmrtZIC2dUMr5pZ3SVUC2YUMb2U0v8VUC2+u2P0a8OdhjGDM5Dg5zsYzlFiT2HP+EzhLhdJ
                                      

                                      Sonic Architect && Software Mercenary

                                      ustkU Oli UllmannO 2 Replies Last reply Reply Quote 0
                                      • ustkU
                                        ustk @HISEnberg
                                        last edited by

                                        @HISEnberg @Christoph-Hart I think at this stage it would be interesting to consider a NumMaxEqNodes property, or even just a knob on the module itself that could be added to Hise 5. There are much much to do already but my guess is that it should be quite straight forward to add in the end...
                                        For now that's precisely what's making me dodge the param eq on my interfaces and build custom ones... so... 🤞

                                        Hise made me an F5 dude, any other app just suffers...

                                        dannytaurusD 1 Reply Last reply Reply Quote 2
                                        • Oli UllmannO
                                          Oli Ullmann @HISEnberg
                                          last edited by

                                          @HISEnberg
                                          I just checked it and I have the same problem. For some reason, the broadcaster stops responding after the first reset. I have a workaround in mind, but I can't check it right now because I have to finish something else first.

                                          When do you need a solution? Is next week okay? Then I would try to implement it by then.

                                          David HealeyD 1 Reply Last reply Reply Quote 1
                                          • David HealeyD
                                            David Healey @Oli Ullmann
                                            last edited by

                                            @Oli-Ullmann said in Parametric EQ - Limit the amount of nodes?:

                                            For some reason, the broadcaster stops responding after the first reset.

                                            I suspect you need to enable the queue

                                            https://docs.hise.audio/scripting/scripting-api/broadcaster/index.html

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

                                            Oli UllmannO 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post

                                            19

                                            Online

                                            2.2k

                                            Users

                                            13.4k

                                            Topics

                                            116.2k

                                            Posts