HISE Logo Forum
    • Categories
    • Register
    • Login

    Scriptnode Synths + Polyphonic Modulation

    Scheduled Pinned Locked Moved Solved ScriptNode
    4 Posts 2 Posters 308 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.
    • griffinboyG
      griffinboy
      last edited by griffinboy

      I made a post the other day but it got messy.
      Many thanks for @aaronventure for getting me started on the subject of Hise Events / Midi.

      My question:

      I have a scriptnode synth attached to an Audiowaveform via an external audio slot.
      9eab2816-1c83-4305-a3cc-4682fdd57d76-image.png
      What is the best way to communicate from the main interface script, with my custom sampler node?
      787df536-0ee3-4114-ba14-d8cff4d843ef-image.png
      1744d7d6-30b6-4a5d-84b0-88fa89e65734-image.png
      I'm interested in both reading the external data (from the main ui) + set things in the external Audio File slot data.
      But I also interested in communicating more complex midi(ish) data to the synth. Such as polyphonic pitch information. I am particularly interested in a polyphonic speed control. Such that my scriptnode synth can have per voice continuous pitch control, similar to mpe. I understand the concept of events, but not how I can read them from inside my C++ node.

      In kontakt we have the Poly variables which take care of this aspect and allow the programming of per voice modulation. My plan is to intercept and ignore all midi events, recreating my own, therefore I will be able to keep track of id and purpose more easily.

      But my problem thus far has simply been figuring out communication with the node.

      Any advice or guidance is very welcome, this is not my area of expertise, and I feel that going in blind will result in some very silly hamfisted solutions
      Many thanks.

      griffinboyG 1 Reply Last reply Reply Quote 0
      • griffinboyG griffinboy marked this topic as a question on
      • griffinboyG
        griffinboy @griffinboy
        last edited by

        @griffinboy

        Womp womp.
        Apologies for the complex questions.

        Regarding the sampler, I have managed to create something pretty robust and efficient. But my limited External Data and Midi knowledge are keeping me from finishing it off.

        A 1 Reply Last reply Reply Quote 0
        • A
          aaronventure @griffinboy
          last edited by

          @griffinboy Aight buddy, here you go.

          HiseSnippet 3321.3oc4ZrzaabbdojW4HVmf7vGZQuLUHHlpgggj9YpigkkrjsZhjUMkUZfgfwncGRNP6NC6N6JJFCep8P+AzdH.8Pu1K8dO0fdpGZAJZtlKs+BRuWf1uuYlc4thTLjpNuPkEj4NO9d+d4NQROlRIibJUd2A8XNktfaqAh3tq0kxENadWmRuj6VTULKhXVZ0A8nJEy2oTo4uGtPoEOmi9mO+1qRCnBO1vkbb1Sx8XuOOjGOb0cV483AAaP8Y6xCyc5qrxldRwZx.YBPOy6V2oG06PZG11T7Xy45beppqSoen6Uu9UYWm07fCt1Utl+6b8KyZWucyqdcpGk8N2nca+5MuZyqU+x2vozBq6yikQshowLE.zUk9CZ0U1WXPvdbE+f.F9PCmV.lMK6rVWdf+NoBGkiSI2cFJpl2Hptn6Vbed15CEYurdCxvajWnUZtIQRMlARpTNR5bFR5Uba4Ew6EObGjd9NtaJ.MXaJnaxSJly5L2u5EcWSBmPDWKjdHaiH3graT4Z0qWk.+Y4aVt7a+1jsfSnHwcYDgLlQjhp1OztcURLnPipR.0XbjLH.rZ7nAAG.pQEbJwaEwnA3YP.saWth.+JEACHIJV6j.BuMoO6RQLRGoPPwUQLA+cHXhkDZ61LuXMMvSIyxZy1Z9r1rn0RObk3nDlktePRDoSf7.Z.gcDvpv0ow.1.PKHTOTbQZGICITwf9cYQZZbUlGEIh6uYq0I9RlRboXhOSAb2fTncDMhSAMFxIjMtJv7g83ArpDd7kTDFUM.o4NLMAGR5KiNjK5P.bH.P4EPiX9EQZRLosLhvNtmLReqADUWYR.brf9zAJxArg2rMOREW1RKqq4raQd5yLL8Zf.GzMHGFEQGnAqBL9PBPq039pZD7jODjxQGoE2DE32w.jX3c+ABZH2yBgHlh+Q30AMWhPvP4FH..UHPtLgheDhN+TBFnT5QRtOxhw.4G.hGULn2EjTaAhrGKhFykBUYM8WCorM8U.e738uIo3h0hLDZkFMugUy9AfoHCPPnLBoefYkBlUICf1vnJo0xxCEIHC..vvSH0n.Rj.wcHgfSLHUL6TETedcI84wcIWtIQEHiUkQYXENPb0uIg+t.Tf+6MeykK+zxKVfReLeeCGL55YLwkaB7vyzbw8Asep4HH0R0RHMYcm.KsfDvLCI.q91X2lp8Wybt8vikyH3VS0Oohx9PrYqiGW6sgTRp3LhE.1S9DeZLsLPVpXKk7PYhVndKx5hNbAqFXueu76rEU.Qxipr7rQSZ+gHI02yjDB7u4BNZrXQO38YjKP3WQGV9ylQKZUd9sp7zxDxRb+k9QjkF+kWpJdBZTGEblGuD5SCFUh3kpZuwR6qOQL0bh8K+rgVi9RLLQeJFjQRB4PjEv+1PlDOMpTkGOdqoXwqKvvI+jDVBKe.rVbH2ZgvifYRhBk5nSaVzHsMBXDiKl4ikF+rJIfggkv37DUhwgwFiAOL3GSQ6P6hjGsI5nCNy8A7LAZdCYjGCBA60ERdHSTqeLyKAUSYb.WD.5BR6DgGtNDNHF7s1arPrRl7V6VcJn0.gckqkdXMvp73rKuOnrVZYHBhwCSmvIC+Z6bllL0V2QCzYuzwJ0.FLyyfDHwxzdSP4Q88eeN7IAvBsoAJHIvRFu.9GwHZxCLfRIggbYUCz0Ladm3grB5OUAsXWFCpnO8MyL4lVmoSpBPaMzs9tr3DAqxQXsZamDlmZBjfkCwDsq7hKVdQ.cfnw6PcrbLhlp7h1HhfMWg.cKWdQ.B3Mfz5Ta9FEoW.cfNARMVMLRK6XNlQ.SZv04WeqFUACPNF3kgzHB3zRL.3A.qBWcWLP.yuB+woj89KSdi2fj6YxO3V.r.pPSFHcnLIgIwfiMCSji7scuXa4H8vXyh3TOHktFIgDROnvJLzzoo.DSUP.HPWC.HEhDVKS3BgJySkUI0SEvnD8YkgeA6Sa3LCI0.j2oUjA1TumPdPkkrasjF.X0Xom.vDTuGjoKlyTPwag+3VOX67mGUjKExEPfp2pATMG9D8X3I8COC8PPyHiYOFxB4q7QqHGjKrpRlU5jIPWWJV2.DniJRzQP7j8FngQlkFTllzjKMMWVZ.oxohdErBD3R6H1mAFWTPcDmlNDjBf+HV6WFD5xBvr6CCn.JlAxD8Mhwhq.yRTKSO.zH.nJOwHNVo03hTIE1Mstli2u8DNS4TxXZ3TcEPPYgqFphVF0gVnmV7ZkShVjzz5ICFHMKXxz7zMYZBl.MqOKFMMmNiloPf1bRBzlyh.swzKPaNYAZybBz7D01PLlGHpnQN3RNxVsaO18VKqYmwtM1iazjtXEQR3AXWSCYc7fPOcEaTbgoqQQOifI2AkhMgRld.Tct44MjA9XCf3mGssRGqjEZvbNKEBGMV2d4KYaurU.TtbjCG.xhtVqTGM4m0M+m7OeWmY35MGy0ezlXrSrQWKIMzfEV6trifHpl1dWz8tL0gwxdZZ1ZM3T5BSAUeLzZeIDiCR+fJd.JUWvE8gbB499ArcjJcQm4l1weDrx60Bxqiq8zK96u2+3i9E2NTOPjE9M+GyOfCC9nucXHpj1s4GqmjQadPHzEIu2lgPAENkdU2GgsZwZSSBhIJnCQGvm4Pl+tR84clI1pogs9yeymsFcDFur6VR+DnMihSTAm0jcCjfyOFCbTEPCbwCxOKpYXLK0m3XVlVR7Ub2gG60c7z3bigFQGruDnQ6vodQ200EoLj.Om6F+zy5jnldzuXJ5sFmXMSZz+8rqnKkRuLSwgtfaLgQJ92l1QJ1apGonclWkp5NKghOwXDO2zEJtnMatyOlg4svWCyWr9yo4K9Z1UGRQMF6bF+0myM2b+zy6xTEodJG5R7Cjc3dlIR8AlYg.6BkApmLWgA9YqLmb.VbGN1vrFtga.saCEUhMYHF+sryt7sgVJxOaQrtVSSH5DMBlAhJYhv21rHGm3ooK79PkNHRVamGo6cTWclo68SLLJc0+YCiprw9GqQokdLYnw6CYPbyNc.YhOVsgo+QnDERYnw7NosfAOcFG6xoTnyV3765vpw6H.JVWvUZK6lt81AZWiD2WZl.jY5S5FinglQ.exwakBQfTPDss1kpxx6+35XqqFNG6ATykmxgqRxswdLnKTHzYkkW9lSMxZ7bAYky203ATctLcw23m8wA9hVtGBYTMgLJOol.mZwjtCu7yAn1vtSdNffFmJBLSi7TK7cR1JmxL.NUpvNb.iFRXvxpCz2cSnqdDjO6qoBscedUn8jJt9LUc62BJWpPViESowV7vdAr0EGAdWvJHM9p.WoKKLc0h4L1RJj85JEbu749yBRlm1GKCcGr2zCGtxEW4gr.F30NboWek2GBYRi.4D6LJKl82P2X0WeWWC4RPaXx2dKyc9+uoL2IIhdA20ONNh13afZOKo07qRRKqRDv0EaKERAzBxZ5omYjfEfQbKMGFaz7b8zNVawD95GvdNsa1.etjcyFoalKr51rX7Mrp89re1oz4MMfLbVtOQkuAj6DDH6ul901ZLoAghdscjACRCBYlr.OHkruSHTTXbJseepZWJO.OVqDEjAv+AhVvg08tTZ98XQJMfOua8Zv+.ehs0QcVXCpGHkGrCEZSBbtvjJfxhEUyKSoc5Dddsn4KIwoeVDeoMBYju.+DpGn.zHdo4yk9wD3BeBLIlCIgK3toZObWnVYm8LSpA3aDl3wm2xL3QunqtPwmfuhvmDwfVx.jWfK+9tQ1pWF4jigiFK7lElwYXrpc0y8WYS5JXdFssVWroO9Ek.j+GAWDnjcnQ.9gOgabdWCSObUDHyk8Dv6awE6UXDVHloGeh0puRqbyWI0Yq0gr9FQTg7Z5u5FsBjwaJ7YG6LB3clc7C3Zlv+K3hA..6+QQdNcdd4VAU8q4ZmVesgGXTUb9qOAM69teftsKv3oWRrtuGOcKI52OONjerPbUUy6527cB.ZdyBay29B8aPncD6mk.tlCHgP8G7dAbTBNYOfEb0kIXECWvcM.yM0oBmECrK3JUdPydXT4hVXWvcCfpHODAyILyJkSMe9QUye3mLpZ9CGiYFDy7TUyo12inkuSRrLDek+Y96VUdANYjfXQrZ41dTMdgaOSNyXP3.1wo0NeWtBaua0DnJ.ivpvJnxS66XSTrNz..9ljzWOM4QAg8BytO0KOi9zEMkFt2Wf67UVYDT+K+zSh5e6G+w+gQQ8J+7v+pMbxFo194w+Fe5e40e5JNS1N6yu8+6gyJXkOB7KZr8kevsEf1jhmcEwzh5I6vsSWrYjurhoOIbuft6vgn9e+69W+8s9Se1sK3H3rpTdXHUWI0YqW0uJp6Kj5EIehMGC599B5UffFBcblEc2Belbx2NE7SH2m+DOuhfZjK17rdwKeVu3UNqW7pm0Kdsy5Eu9Y8h23K9h3DtswCvTnfc+NqahZWxLgUc1Dm+KvIT5za
          

          Basically what I talked about in the last thread, made flesh.

          Yeah, this is easily days worth of fun for a HISE/HISEScript newbie.

          Check the note callbacks in the synth script.

          This is an example of continuous per-event modulation, as requested here https://forum.hise.audio/topic/9645/the-missing-piece-of-the-hise-vi-puzzle-continuous-per-event-modulation?_=1727930006185 and recently bugfixed to be able to take 0 value.

          @Christoph-Hart feel free to add this to the snippet collection if there isn't one already covering this

          griffinboyG 1 Reply Last reply Reply Quote 1
          • A aaronventure referenced this topic on
          • griffinboyG
            griffinboy @aaronventure
            last edited by

            @aaronventure

            Incredible.
            You literally did it for me, I was not expecting that!
            Thank you very much indeed, reading through this code was a real treat. So many useful things here that I didn't realise we had access to in Hise.

            1 Reply Last reply Reply Quote 0
            • griffinboyG griffinboy has marked this topic as solved on
            • First post
              Last post

            44

            Online

            1.7k

            Users

            11.7k

            Topics

            101.9k

            Posts