HISE Logo Forum
    • Categories
    • Register
    • Login

    assign FX to Effect slot

    Scheduled Pinned Locked Moved Bug Reports
    67 Posts 16 Posters 4.5k 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.
    • FortuneF
      Fortune
      last edited by

      @ulrik Do you mind sharing the working example?

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

        @Fortune I had to rethink about this, this is my progress so far.
        You can assign any fx in any slot, you can drag to swap with other fx or empty slot.
        You can set them bypassed/active and, I hope, be able to edit each one of them separately in the "EditPanel"

        I have not figured out how to know what kind of values all Attributes have, is it ms, percent, db etc.. I don't know how to automatically retrieve that information.
        I could use suffix, min, max values...

        HiseSnippet 2662.3oc6ZktbabbDdAIWWBqhcjcTkJ4ei2JoJfPPH.dHkHFFQIJBGVwTBEA0UwHoZwtC.FoE6rdO3QEyGB89jejGg7HjGA+Fjz8L6wrfKAgojbIEKpKLc2yLeSeLcOMT2.tMMLjGnUo59m3S0p7Kz6chWznsFYw7z149ZU9U5cdJomKOJjzgGP1iZ4pcuS7sBCoNZUpL+2fBVo5BZhe9g6bOKWKOaZNIMsGyY1zukMlEkSs6l+MlqaGKG59rwJRu5l6Xy81h6xiAPMudKMeK6WaMj9.KTr4z0p7Ya6vh3A8hrhngZUV3dbmS5MhejmT9GyBY8co3f1Z8fERRtC20AQLRUaqQLWmtoG9PMsJ5cyUEyKUEWWeWlCKidtJ4ZBFj7YnpOpL2zfWaU30pT30pL3UQAdKHg2Wp2yNf4GkyAw1U02wKhFLvBLApvRJq1bO4qz2hCR3E0br0qocBfAYyn1Ma0pAYsVsputgAXFBiHGZEP.GfMHGXXt8X+nSLaXXtUbvgzs+N7i8Xi8co6QOjFzOeL5TfitO00RLCg0mFHoML.L6h0YDOHND+T2QVgzNOUrBVQwAVfFTH7IdViY1BY5MxxGkw34EPmz2DAnvys4PZDRpySqYt8fAT6HgDsMq2XpBr7EIvJWj.qdQBrFJ..9p3ODweUPK20xi5BmjTCDrJawG6y8fA0LS3aB1l7Ig9ZSeZYRfSzv3F2nZuir7ICh8riXbupKc1eLXdtLOZlLjPXF0XNG2tAA96kqa7OLp5xssbICNtMryBSvAn.3oKkyxpbVF4XTEjuoX0.10ETRNVMCn9fSSTMf5oqKvY28TAmQpfgT37.RtGONBPYsTTVan.WCaN.tX4ttt0hFwBQkQMy9CkWnXVWtmnl6H.coR7DlSzHbmEbFov4uRYCGI.UxzBgCDveD4FxyVSWp2vnQB9RIXvmG.2TViAx0ZcBi7mKJJgs3h0MpBXUH+fiy0SOWX7hCB.SmzwQr0B4hnGGIOFoTfPCJL2AGiyZGGonIDw+oYXb+vn.l2vZhgLOG5wObPMyWZVmrHArlBxRXIlL7a1.BXbZxBSu8nVcx2+8I60FjjKA.7KN.UyQErolsN9V2pi3GSb4NE9C0MjVpv4lmbxl0SmF76gnoVRWwVBWiLV0ZlhYgDNVQVMscY1ul5P95MHrLbJcK.eFPG3rGnXs7F5RqcvxMHKC5BgY8OPXM.+hkHq1PR.9zyaPVQrMEgSFhS44DXczccYC8nN6CLEJ7FjCZ0PcokCfkzzFLvATm7yqpZZFwJ7w7CMr+Ce16QzW5lc9mmSMNstLJd2st2j2wnFJuKONjtkkqaeHMedrLjOwKRDOSlRHIIg84GThRHVqli3PJJxcTNERJaP10BtwdfKmGH21lm.qCtj0I2lXZlrJnOljc.ML1E.WUBZsHvg.tmehksQxthdqnFUf1SMJrNo9oPzkj.pVyV1hxnh6TZyBxQnqtmiQ08i7wvBw1TsfUk66eAqqveQlO3L.pwYWqD4KC6K0VxCQBF.Lo6EHRtV4YqmIgRdBbhotY8nQxDfGGECYeFS8hqN8bZX3Pp70rBBrNQIuFZ2jEUT0bIxD+BJFopIExqRnh6nEig0iv8tAev.wv.5XvOf.N1hgkuF3mXdgzfnTRIYIEoO.H.bIIPSb0f.VM8iCGIXi5.zoRIdploO2O1eW37uCJrYC4Yo4q3LuZl+cOwslXF1hJfNOMQQpnDmVMBSQsBQCPBe49JTogGwhrGIOQIGDanbORIZkaWfmhtAYTse.050qmIhpIPvGIH2coi2DxqXhDhKM08SxyoVsRY4gKjRTr7SWbX2xj+qS2jRwkhuh.WByeHZ6E6.FrJSLTMDBfnVAI6+okrVxzy2dB3oNqxl.TU8LMEG5.K3tuIkENpIG6buxoTX2141spytmkhwUs9yKxrkUPpW736FAUC0OFdWVVYSOPkphzVphdPdYsGZ4FOIMH09qThayK6qvVpV22D6QFZxjFpliIz843PF1mMNotPDMRNSrBv7SLDovj2+UjMj6uY9xZdakyZCjmbQA5xO.qg3vk8PBzb+XjUMXEw8HmipsN2T6KdfRwx4SsxEV0oUW+kplcj0gJrjvNkCXdfxfhG6EJKuuohxVVAA4uPZeSH4atjvhsFjbs.gUWuvaCNBRVNwRm+njVGuxJxJjyeSQ.+HgOibjsXdIDLjEt0giOkKI5CtR+OUujGYTB9U84lwxoSJ9DicNHo3OIhxpEDfq7yKsZ5+97zJwKeSTKvOYSlrhSUvCuCBJ9b12775O2m6adNav1dCAuplN739tz848juK5vlRmbwVtb8oss3KlZMK6sbpKtnxiSXjeeAWlMTGsDoc1yTf8QNwpEbCxJoN61Pt2C3QzG5USDb.QajIYMXPo7v76AbWWZPorwtwELsIVCPder.WghKSPsJKTruW5meeuTaKmsroEJBx81wiE8Pep240rNsjNc.e5Q6benhQrAYIz.47gZFXHDpbe5gLaprcYU0uOM70QbesJyk0dDfbjf6mm1LM7pHMlCJeRBLsiU6N4IpCNBuCJmvK1bj3pmLJ+qfMyc8Ape1+E9AY.o54Gk9pG.o+Rc3tARNgh0voU4epelRkLTp9wHuxFi7hILN6bJVTkgH2uQR27LTakmQde7LDMwyHoCdFIsuyP16NijF2Yj00NizV1YjzuNzbkotMNO08U0yxDnnv+O1SSgCp2ypvuHUaZufPywadyadLNs7KAQpu3EuPXjJ2zoc1NwdM8c4Nwt3oWsIwnxKgADAUnarXGW8BYQmn14725NGWZrxLB2uTuKVjd43ctRvKDy89FuI8g+y0k0xkC1EfXy2sMc+hfxWHgxU06AIQD83U.jesXL4IVPD22P8nhHf1S46G4eOqe+H9y72OxCsifse+.KuPedXgEtGcLaeHxKTk3if30.52sGZkUouE2JnTV+vc5.GxRmSRTO3tb2w7XunBtGyOy1jeDeOMK7Ay2SyaSz1a+kCyOav8B9pjplhQ408a6cH0ExeJv3WAILE0alRsne8tbOt+HtGyV0nuGEpqZ3PZfJ1K8.AOTAtONmx02bOJ7jSUG3e2leK33YE.5I5kTWzd10ESyd8azkvkfAij++3R84+X6R8KuKeIe4tWQW9EzI15uPW8aJrHHl+8gu17o0jlz8EAJtdAT7RAq2OXQS9F6g6ZAQqP0V5OHdbOHghMELGdPIXX86UlCSJHG2BGKyn34HFfkCkvrMNtRBy1oL+IYO9wXWW9CB65xext9N1ttxGD10U9jc8crcc0eBrqWI6+zSYO2U.jeaAf7REtmeo8ZZhGJqR3IE6Ovy1rjh+2AptJHpK20JXxTwuyNxKLy0KfGoOdpuAKQET4eLAXgKwGO.9Z5cs9Pvg3miW.t1GDI1V6SI19YzdL1xNf+RaYq9QmkqHn.1OOw++aqpuKNlzVSz9eXd5sZ1RaLyg8Raa7QbKAwukOmkuDyYkKwbV8RLm0tDy4lWh4bqKwb9iScNXKttabDer79YfP2sEemHUprsmEDEJhX09efiH6N.
        

        effect slot.gif

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

        DabDabD FortuneF toxonicT 3 Replies Last reply Reply Quote 5
        • DabDabD
          DabDab @ulrik
          last edited by DabDab

          @ulrik I would like Thank you sincerely. I was looking around exactly the same.
          I asked about it in one of my posts. https://forum.hise.audio/topic/4540/how-to-change-order-of-the-stacked-effects/5?_=1631765949078
          @ustk taught me the theory and logic behind it but I am not a HISE expert . Suddenly your post and your practical Example showed me the way to achieve it . FINALLY. :) (y)

          God bless you @ulrik

          Bollywood Music Producer and Trance Producer.

          1 Reply Last reply Reply Quote 1
          • DabDabD
            DabDab
            last edited by

            @ulrik Now my Question is How can I add Knob Slider with it? If I want to modify the parameter of Effects with Knob Slider from the EDIT interface how to do it?

            Bollywood Music Producer and Trance Producer.

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

              @DabDab that is what I'm also thinking of, to find a smooth way to edit all parameters without to much scripting :)
              If you come up with a good way, tell me how you did it.

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

              ulrikU MikeBM 2 Replies Last reply Reply Quote 0
              • ulrikU
                ulrik @ulrik
                last edited by

                @Christoph-Hart is there a way to dynamically check an effect modules attributes type (suffix), max and min values?

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

                1 Reply Last reply Reply Quote 0
                • MikeBM
                  MikeB
                  last edited by

                  @ulrik You are the hammer Ulrik. You get everything out of HISE one after the other. Unbelievable. Admirable. It's fun to learn from you. :-)

                  "One hour of trial and error can save 10 minutes of reading the manual."
                  "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                  HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

                  1 Reply Last reply Reply Quote 1
                  • MikeBM
                    MikeB @ulrik
                    last edited by

                    @ulrik Does the factory method of creating panels, buttons and knobs when they are needed help?

                    HiseSnippet 1615.3ocsX0saZbDEdWGuowzRUhTkxsi3ltnPI7aRSnQIwXSiaisQkjzJEEEMr6.LMKyh1c1XPQ9cnW0mj9X0K50UUp8blYWXw1PAr.Ii2YlyOemu4bl8vzNv2gEF5GXXt2qlLhYX9EVclHjCZNfxEFGc.NQKpizOXB40GYr+jQzvPlqgo4M9dTBy810P84ud59TOpvgMaJCi23ycXujOjKmMa6m8ibOuVTW1q3CSIcsmcjiunoumeDflaXUxXD04Cz9rSnnX6XYXdyCc4.R5HoRVng4t666Noy.+yDZ4eCOj20igCJazALjd5V9dtHhwYMZNf641NIpCM.qzdFGbCMG7UVGyc4SmeFWba0BjYZjlOL2YYvqbZ3UZ0gmYJ3sqFd2wpiS.ejb1JH19bqiDRVPOJrEjFVZYM14O9Lql9fDBYwgzOvZE.Clpg8CKUp.odoR4ajMS1L2+9jel80ddjnPFY.BvfPRnO4LFwgJHTGzuD4.1PBiFx8lP7fXNf3KxlA1DCkjORCHiDduPoK4Ij29tFoWpqTrnk75dAsTv4UCXjdw4gCYxA9tYyvEdbALcjvQx8EDm.Ffh1TAyyV.IMEHiKPljOymxlg.e.qbLrQRFgBPrOi61mIyqVxy2g5Qzy.tMgmnttWxZMzFS+chfgLbyXDKPxYg.yN7G5b5IwZQhcO9I2.Fu+.YtGSJC7cp4AWKGfSWujZxym2OZjUzkJoE61WWi.3rz3VspT4QOpd8FJwRKKBIHZk+jejDXI6DVxtuNj+zTm2uXOnf74dd1xA7v4cR9FWEb.lDnFbSj.7IjFn4zTTItzb739QRI3bjRH2ijaeoHWAfDv+l21SyLJNJJbfMLbco7Y1eNpeDM.zqo+vQ9B3AfrU6OojPxFmLMZCBZjkD9dztPdzBH.HKddB3knzSw2K65EG+0tP7OM8WG+vvMI901eEh+4iO0WALYTfHNOpQlyajAqAmUfJ5pJJBg36AIkmMUkdDZHYHULIV2Pb7D+HhfwbSHJ8oIJkhB4h9DZ7TjeMBbvn.1GAzoTqGDUjyB3RTrJkHX0dXwhEylome.wl+jRMH7uKANvy26d4ylTsiH0IJXtXN0NB.uoSamSYgb.wwmmr48H1W1HOgDIbY8.z3leFAO8zt2xeG3nzGFkx9EHvd9zsb.1r02BWDQXvXmabt7KZoI4xCExmi6UHuep.NvFVFNK2yqK7RVBxmvypMntpJ0vKe7pu.JHP9Kv2y1IwCE.l1KhoI98zI+b2w.9mUIyA5Z7o8loDF+wxFhusDjVYExSI4N8jbjGC+qUqbnTnfcmxKtieGl4aqqUKn0Fs14MhyJ5hIZSccdRWT9XT2LNdsSGJn1ohwS7krSE1vaMxrWlyyPt3R85ckqEaLOVvUtL1pSvxTzVDMrKKHgMSDDdm+7MUXs3lJR2yiiNMOkf9hiDb4oiXhE0pgQbsAzzwMiQEHpT0xwWF2xg9XbCtK1ugJmrDvjFJPmtwOiU2.kutFnx00.UutFn100.0uZC75iN.dYL1DX7VyrS7g4Nf8Qn6ZcKg6Yc.K7CR+Qp8t3pL3YsiylzvH5KkeuU7lmwXHkx7eLMLlfObWvopVQ.KdyeOFE5dVvYbimwbmK6i+mLDkexXD6G7ArBF+0EZYvW1ZbgWQkBlFKNnTuXcN+Au76B9yFdXwFWiDKK3Hmk4nKwdk0d4uSXueaavdkWA1q7RYuxqE6Ud8XuxaL6UQ6klId4O2FrWkUf8prT1qxZwdUVO1qxFydU0d4t6D6k1laA1q5JvdUWJ6UcsXupqG6UciYuZZubPhW3aC1q1Jvd0VJ6UasXuZqG6UaiYu5Zu7hDujaaT4VeEXu5Kk8puVrW80i8pOO6c4Ko41VG66F4Qkye+Q3klEu.z+2bWTCdYLhPtbR5KUaqboRqJbuiUatzYvUi2ctB7haxaY7FeEcYsNrWOlibFX20p0ur8uONC88oz+XpLfioKmDMrieTfCCPh.+cnXlyNX2e5wkvwHyzgIbUC9W3S7hkwwlwKVNYQigTm.+26naeDuDvaolAvjPcWn6YcLNlTNomQKqREKYLj6xeuiCREeCf8qVmJafNU2.cpsA5TeCz4AafNObCz4aWpN30B+7Ho+PcYBLQ6CU8taZdnfBYYpLRi+Cr0gNYA
                    

                    "One hour of trial and error can save 10 minutes of reading the manual."
                    "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                    HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

                    ulrikU 1 Reply Last reply Reply Quote 1
                    • ulrikU
                      ulrik @MikeB
                      last edited by

                      @MikeB thank you Mike!
                      and thank you for the factory method, it might be useful :)

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

                      ? 1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User @ulrik
                        last edited by

                        @ulrik Man! This is awesome...

                        ulrikU 1 Reply Last reply Reply Quote 0
                        • ulrikU
                          ulrik @A Former User
                          last edited by

                          @UrsBollhalder thank you, but beware, I'm only experimenting with this, maybe I'm doing something really stupid 🤪

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

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @ulrik
                            last edited by

                            @ulrik Of course... I'll just study your code and then try to come up with something myself. That way I learn how to do it myself and am also responsible for my own stupid mistakes! 😂

                            But just seeing the possibility of it is really nice!

                            I would want to have the boxes move while dragging for example, even if there's no mouseUp happening, so you get a preview of things so to speak.

                            ulrikU 1 Reply Last reply Reply Quote 0
                            • ulrikU
                              ulrik @A Former User
                              last edited by

                              @UrsBollhalder said in assign FX to Effect slot:

                              I would want to have the boxes move while dragging

                              If you're refering to the "not dragged boxes" I agree, this is a swap so it would take some maths to calculate though, consider moving the last fx to slot 2 for instance :)

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

                              DabDabD 1 Reply Last reply Reply Quote 0
                              • DabDabD
                                DabDab @ulrik
                                last edited by

                                @ulrik I am studying keep practicing from the Practical Examples /projects. If you come up with the actual solution Drag Knob Button etc Panel and Swap FX Slot do share the snippet. I really want to study your works. Another Work I am big fan of yours.. That is Color Chart. I guess you made it few months ago. You are a big inspiration for us.

                                Bollywood Music Producer and Trance Producer.

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

                                  @d-healey @ustk how would you decide what type of value, the min and max, and suffix, to get from getAttribute()?

                                  Would you make a long, long, very long array with the attribute names from all Effects and use as a look up table, or would you use another way, which?

                                  This what I have so far, as you can see I can manipulate all values and set them with setAttribute, but I don't know what type it is, is it a boolean, values from a cmb, etc...

                                  effect slot.gif

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

                                  ustkU MikeBM 2 Replies Last reply Reply Quote 2
                                  • FortuneF
                                    Fortune @ulrik
                                    last edited by

                                    @ulrik Thank you man, you're great!!!

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

                                      @ulrik I would almost certainly use a 2D array. I don't see where it would be very long, FXs don't have hundreds of parameters…
                                      But why would you access min and max values? They are fixed values, so you just need to know if you are building a gain or a freq parameter or anything else. All gain are -100 to 0, all freq 20 to 20000, etc…

                                      Can't help pressing F5 in the forum...

                                      ulrikU 1 Reply Last reply Reply Quote 1
                                      • MikeBM
                                        MikeB @ulrik
                                        last edited by MikeB

                                        @ulrik Once again a perhaps pointless suggestion from me
                                        Maybe via LAF (obj.valueSuffixString) and obj.text?

                                        if (obj.text.indexOf("group2") != -1){
                                                 g.setFont("GUI-Barlow-Medium", 17.0);
                                              g.setColour(grau); 
                                            
                                              g.drawAlignedText(obj.valueSuffixString, [0,-4,90,36], "centred");
                                        
                                                g.setColour(hellgrau);
                                                g.setFont("GUI-Barlow-Medium", 17.0);
                                        
                                                g.drawAlignedText(text , [0,32,80,20], "centred");
                                            };```

                                        "One hour of trial and error can save 10 minutes of reading the manual."
                                        "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                                        HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                                          @MikeB I don't have any knobs, I get all values from the module directly, and there is no information about type, suffix or anything, I have to create them myself so I will go with ustk's suggestion with arrays or objects per parameter

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

                                          MikeBM 1 Reply Last reply Reply Quote 1
                                          • MikeBM
                                            MikeB @ulrik
                                            last edited by

                                            @ulrik
                                            Tonight (we've come this far - that I dream of sliders and curly brackets at night) :-)

                                            It occurred to me that if you don't have knobs you can't save the values you set as presets - can you?

                                            "One hour of trial and error can save 10 minutes of reading the manual."
                                            "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                                            HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

                                            ulrikU 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post

                                            57

                                            Online

                                            1.7k

                                            Users

                                            11.7k

                                            Topics

                                            101.7k

                                            Posts