HISE Logo Forum
    • Categories
    • Register
    • Login

    How to intercept and transpose MIDI notes to Synth Group sound generators?

    Scheduled Pinned Locked Moved General Questions
    15 Posts 5 Posters 701 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
      last edited by

      I'm using a Synthesizer Group as a container for 6 monophonic Waveform Generators.

      I need to transpose the MIDI notes going into each so when the user plays a single note it produces a chord.

      In the onNoteOn() script how do I transpose the note numbers then send to each generator in the Synth Group?

      Example:

      • transpose incoming note 0 semitones and send to Waveform Generator 1
      • transpose incoming note 3 semitones and send to Waveform Generator 2
      • transpose incoming note 7 semitones and send to Waveform Generator 3
      • etc.

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

      HISEnbergH 1 Reply Last reply Reply Quote 0
      • HISEnbergH
        HISEnberg @dannytaurus
        last edited by

        @dannytaurus Under the Midi Processor there is a Transposer which you can use to repitch the notes.

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

          @HISEnberg Yeah, I tied that but the MIDI Processor only exists for the Synth Group as a whole.

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

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

            @HISEnberg The Waveform Generators inside the Synth Group don't have a MIDI Processor and I don't see a way to add one.

            I just need to know how to target each of the WG inside the Synth Group, and send MIDI notes to them.

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

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

              @dannytaurus I don't think you can use Synth Group, my guess is that you have to use a container for the 6 generators, and place a "midi filter" for each one of them, ch 1 to 6, and in the onNoteOn callback distribute the notes by setting different midi channels for the notes

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

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

                @dannytaurus Something like this?

                I had to script the AHDSR Envelope because linking the AHDSR Envelope Mod from the Global Modulator to all 6 Generators doesn't work as it should

                HiseSnippet 2332.3oc6c1saajaE.dFaOYszlea2raQKJJQtRBwvPR9mrXcSih+KQHQwBQdytEKRWLdFJKBOhTXlQJVsHE8xdU60aeS5c4Qn.8EnOB6SPaOjbFMT+DYIsxIV1TvNQC44bzgGxgmyGGA3J9LGbP.y2vL0gcZhMLutU0Nzv56T2lPMJsqg4MrpRN8ErP7g3fPis6zzNH.6ZXZt3S3hXlZICwqe7Qaa6YScvIMYX7JFwA+bRCRXRqUJ9Lhm291t3CIMTjd8hkbXzcXdrVf6rnUNil1NmXeL9E1bwVvxv7Z64RBY9UCsCwAFlKsMysS05r2Pkx+JR.4HOL+h7FUACIadelmK2i4u2Xm5DO2JwC6.CvnURBBKJCBelUYhKoa6IAiaK5.kngZ7vbgQ4d4mR2aAE2aIo6cGqpN9jlgI8v8sO0pDMD6WyFlBTcKorFKbxRV6v.Ingq1v9D799vEc0Hyl4xsBB9mrakNMLMDDhd7S2s5KKyba4gCPODIVVr5w3vG64IZ0FFpAYtmPr60mZOidDWmuK9CDTaGVilLJbAnRXHLydurqjFM3qgqxSgfzDovtXG6NSjFUaEDByySjNuD6gsCv2K6vT40PLgP8HTLpVKpSHgQQLZ23C2h9LuLNwlaETaauV3ro+SoS4wbr8PD2SgnXWMVkPcwmdPsDUfvdpzoBdCIzoNJCHd1zo.sS4.NEJ2WAuKUMlOJiMhP6YBMKuqT1qF.ymgg9jiZEhyXupblI1Q1hKzQ9X6S1J1l4mbaxm5FgEKL4VTL2NBSt1jaxnI+QXz0mbiFs5XnF8soea5z8YM9bLXJgchVcrism2QvTRlAW3.1SYYEeG5CnYDKd.Si5uqZ0FZeQ1xC6Ozt46P6OJEyPa03Hru5RWtfvVU8tW30Fu8Bcj2koHHiVhRBOnIN55jcKyOjcKMhtME12zJxCAQCE6ZdyncMq5Qbw9FDvHKaIWvaH79jTQqVzXLz9ZV7k18qajSbF59IVhEw8o7g+vX8AmxJZkUepi9aio5Qq16Q8hqs1cemwWWZW6PaH7YFEIgnaSreHgOIZtKtMjOWlDJELBBNIj0TDpi1OBxBc1A6SUCVcTK.3MD2v5IM7GJVGSNttRsCkJ1f4h4gdQsCMrSr0e8eWLHD2rJ4OhUKJInUsZDPJKKTi.iFDWWObEV.guLlK2+8+AudzemG3FiwPzT9op9370HHdgmxPfNmMDRV9qLH9yWHGDWeLtIL4C9uzdJGD76EcHGg8.2Roj7e+6TGVvK0g0+3G3u9mpCK2sGxvxTnYg2YLt0g9yr1kDDkDDwy8DLzxQ+hEs7wGirgDJswTtX7BFgZl3sBtA44fUfl1idLTA0pNPdyPb4n1yjcq2Stuxfi.LCqRNlx7w60lWlVnuL6abYUTvrwxA0ywU+EhzXY3RIkocux7JLzLIrSFocH0PY5VPLnaEeLe78LbmfLYQ+NT9n5vDI3o7D7JiSQ0BRsoxTya2Q3nkbyDOvEel7cmyPyJJb.9QwDq5.2.Hc22F6wN0Y9t7XHTH+ZqfdvJn7v6xuN76CdsvqEdCADI+VHB529Pzlv+e+6G4qwkb1sVeaW2nHKYED89B6+cjWC45WAkS3TpdTyVA0yjHkn+tilftiFEyPbyFUHz6sZkQGme3CA+3CXf9iSoSVypRmFU4RSUh+grk..HGyFpRMyOpfnN3aqnte.GAkBa2zQcu1I.kN2PQoG5ncLc26XUgySMb+cgg3ubJ8yY+M5fItg0d0pgcBSb1kr1+am1SgX5bkkktxuz5IdrirSNK.95Fvqvxr.+5ntQc6G0Uf7i3Xj9Wi6wH0brOFIyE+IdtLCKhXtzGgiMZ1uV+mOvzTvL8tyo7fttszk+DKAzqvSuo78Ho+1iSVlQYMqynDG0EMuDCEgb7wX+dNiRRSlms+6cnIQT1oke6dV.JpYdfVi3YTvFks7bbanTLEAEPC8aNUpu3ZAUPwhqwUAtaOGVYY8dytohgt11ZLW8biHjNj3VvK16peyXeUN6bw1YutjRadHtdqXPl4h.6MiYGunDZixll1JlvP3l2s6kIaLm+r8Vkc295.7g1BOKYamRz1PEc392JhCN169JCVPyhi29JmSEcs3UyhtdIqUHgdbYaHQFmPG.fpBU03fAOgRwdb3.yE3kwKuNG+ZdjoJl5JtfejDQclmesYTm4i6bHKEG3I.dGYCI0uMKdJfypx2xMko3Reon7MMY0kIxp6JckO05araiE2yEkLfecMleCzSvvseClL3bGg5.mPvENz2lFzjEfyqZ495qPuYWBaQ6UbYS8HEe3sOL7Tja4hwMVPswJ1zdLFbcOVpLQ47N+OOZOJOEXULLZbOHvAFr7Xm5sCUZ4Ef+F94rlWUwjlKn17Ss8cg4kdvL5e6ow73Z589VE4Oi8st1El8sFJDm4ft2srhx.sOwKL5zA9bqxk1sDJpCjrmdWS2ebc5q.I4YBt3X7zwtkkizqjGIb+Odue7QiyiXKsUilXvy8CmtGO3xb82i18gKZYdaiKHYElRh9aMHQ+xx2meZY40.7u2HuFfWCvqA3+PBv+qhNHUQcVhc9657B+92DePqBAPBIlH19Dfdt.wf7PRVdihmcC+qHIjaghcjO617i5H3+pgc.CZp+KV.AiNIOTrKZtA86KrfBvKfDS2nO9y2efOZkIfrqflr6BJY2r4YqbtAvM0aV+SBZqvHg1lIgrYK.mQwOF.bwZmq3kSHtBZHN8SgUCwog3tBCwUPCwog3zPbZHNl+ZZHNMD2LFhK24GD2ZyCO4sk0famCfaqoA2zfaZvMM31UXvs0zfaZvMM3lFbi4utFbSCtM+.ts97.31s0famCfaqqA2zfaZvMM31UXvs00faZvMM3lFbi4ugFbSCtM+70lbi4su1jelFh6b.haCMDmFhSCwog3tBCwsgFhSCwog3zPbL+M0PbZHt4GHtMm2f39EZHtyAHtM0PbZHNMDmFh6JLD2lZHNMDmFh6xED2kkOiF1N9ru2QV4Ju5hkEs.wVp3OsjorJyuFkev5c4+YB46cb50TCnXgoUw0lVEWeZUbioUwMmVEevzp3Wd1JxQDebqPVC48h.pbk8joRLkTxhaKM9+.3YKnHB
                

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

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

                  @ulrik Thanks! I'll try it out today 😀

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

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

                    @Christoph-Hart Is my original request here not possible?

                    To have 6 Waveform Generators inside a Synthesizer Group but have individual control over the transpose of notes sent to each WG.

                    If it helps, each WG is monophonic with Voices set to as low as possible (2?).

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

                    A ulrikU 2 Replies Last reply Reply Quote 0
                    • A
                      ally @dannytaurus
                      last edited by

                      @dannytaurus look up synthgroup on the forum.

                      There’s an older post from Christoph where he details the use cases of the synth group. They are quite specific.

                      I’m not sure how you have your current set up in the tree that it’s possible to do what you want to do the way you want to do it.

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

                        @dannytaurus
                        In this example I have 6 WaveGenerators in 1 SynthGroup.
                        WaveGenerator1 is reading midi channel 1, WaveGenerator 2 - midi channel 2, etc...
                        meaning you can set independent transpose per generator via the "Distribute Notes" script inside the Synth Group

                        Normally the Midi Chain is not available (visible) if you add a WG inside the Synth Group, but if you construct them outside the SG and then copy them into the synth group, the midichain is available (visible) in the module tree

                        Skärmavbild 2024-09-28 kl. 17.25.03.png

                        This way of "fooling" Hise might not be a proper and safe way to work, and maybe it will lead to unexpected issues, I guess Christoph made the midi chain invisible for a good reason?

                        HiseSnippet 2018.3oc6b0rbaaqElz1L0RMMooI81r3tfimtPt1win7O8mbysJwRNQMQwZhRStyzoSKLIjDlPAvgDzMp2watK5h9Lz0caeDZeD5iP6ttruAsGPPJQJq3HqZEK0K7hDgCv4b9v4.bvGflQM7Y13f.luldtG2yCqoeQil8n7N61AQnZ0pnoeUiljm+z10nQxuqOKzS6N87PAAXGMc8EuqXf54VRK5ue+iuCxEQswCDoo8DFwF+.RWBefzFkuOw0cOjC9wjtoF8VkqYyn6xbYg.nVznnlGx9Yn13GhDCaACM8KT0gvY9M4HNNPSeo6vb50rC6qnxw+DR.4.WrngkVSvPRw6wbcDHVHUa2NDWmFIS9.MMciFCBEKJCEWynNwgzW9fPxaF0g4.MRGOzWHK7VLC7rRCuhof2HfjdJHsjDRWwnosOwiOnGAddciZTN1uEBB6oghbrZ5+jwtLX.T9FcQOCumOznuBE1oXw0Mg+Y0a1JjZyILpIi9PFGuOsvp4+u4yk+n7lC2UqVirOga7YttX+Q1sHS6eRJVfF18.r+5lGhbCw8GHL8yFSMdwwzzoba4rN0.YzZTBeeOL8EsPPKNTAe5SqUAwQhDQrLXbdXeNQ.A8J3CgU0xzRNiJ3fmwYdv55ikyfUKLmPWDO6RHw9l3NfXPl7lH4PCH7do2WclstZbg3ULZP31cFMFWXDXDhTSCLFua7MLp1pE1lO.fKYr2+Y5r0Ks6ubl5hx5eBueMo.b.I.6aFI25rnv3WN1EFqRQvrYu5os3tHeeB1uF0A+7TN+G6meOVOeJkDvnrHnb6trPZJrnUNt2JXdHMCzi6nomOF4jdZJPeSL.UmHSFjYM7hmToaqIrz8EmiKc+VFUHAbexAgbronzZvnpfuvOrX+R3AX98vj1c3ErDEsy6iaahf5nGhoB0Muk4m84RocgY5C.qChpRaSn3MrgjEGWOVdgXswfp7ZNIplGxcfRQa9uO8fDwsX9lEHPih2zjX9uL2A9u0VKpFc+gtgWXPmBIHE43beJ6fBqjz+JqUfrl0pqaZsYw2irtYwUADjK0DaPAV3PpteRy8eXg919yHe9Fsw7BqPbVY00ymC7atU5Rnq7Ql2nzVqG0B8bnUbi.N1qI4qwfDqMJlO2QfuNJe97ufS4pC4DfkwFj1TlOtpHjTf6CGBAHLeNWlMx0jBy9jwAPQn9CiNvRDIiGygYGySvfXnJYAocHsLKDU1HR+vtM7whT88w8BJrp4+1zZU4DSFrcLIz9YGnmb4j5RkGAemdUk8AiTXdv94RF8F1tXjDWGIbb+rmUT16V8SeQtSBcve2xT5AH0EGbfzDcsTIgaXEkFdh3.5BPp7PQZ7lo8bzZ.IhN5j3NbxwhaAKzlJAi+FyXQ+BwnBFJOpnykhK5zzk3f80HNBxhIYSKsHPmtpt1ox.kF1.KW9zYfMG1.+ySoA1ZXC7tmRCr8vFX8SoA1YXCXUdhHNJxcc8XTQhT+0FqrGbLtgtvk8R9P2HFGW329C4eP8PQyqGmaSpHl9DYsSoWKI85+6UqW2T50kzek50sjd8ad050skdc4Edk50cjd8a+K50Y+a+jgZVL29Wy312qRyGEeqmnOCLlNDN51CmkSecfxqWGFkXmtp4iv.Ct1sw9oQ7HmF2lyQ1Oa2P+CyT1sB1F06XRkCtujujUVJ4Av4ZtoG38.9wGyb8ET96K2LLfO31Hk+0u9J+zivvYhAo721kqZyfTBdBC6VmbX2XLWZ7FFxIoYzsel8tU7kRvmLKL6AvKZDk9mUieW1Hdw3La.7RFw6MlUCgm3Cyr3+27vLurMAhWrvD5albOp7cSNGg2aKg2qa7Tzg3naREgr2NpMbiqtl2ESw9BbeROq0OOtOqk2X+rV6ayAH7XeDMviE.G.mxxC0Worm5Ix3VGWTlQIld6ASOqz2ZIQXozBafnYLFzNikpSR8NZ+xGKeMN4KesefMLYEwtz4wFgtA3mRb3crRq3.wkRK9dHeGHujgnwz48ytvr26msv399YWMV5.DYMxuBjuyvT80ab190aDuT4xFvpCJE6tGwkikYk+gQ8ZUpYF2gormrIlgWJOwLKS87GKNF2b+xF1RTIe4tgu8dzMmdoFIuQWOLfbe9j8DJKKzuJ0YXsKVdd6FT4RvXSRWOWbxslRdaabKTnKOQ5GLEtK0.IWq7wtSy6V9ADJF4O8tVi9Xlutd5q0XN+989onWlbJ3ymsyhuiAPBoj7aww77IW9HVHmPaWGA6nEutDTwsIvxyFGetf3jN8EDULksKl7vSMwTmnFhmcJtSKQa83NsR5bBYzVRwnUwnctgQaIEi1YSFsklGXzpUVwncpwn8CULZULZULZULZOuYztohQqhQ6bCi1MULZmMYzt47.i1kULZOyXzd0gYzZUTQoUQoUQoUQo87lR6VJJsJJsyMTZ2RQoc1jR6VyCTZeSEk1oHkVKEkVEkVEkVEk1yaJsaqnzpnzN2PocaEk1YSJsaOOPo8ZJJsSQJskTTZUTZUTZUTZOuoztihRqhR6bCk1cTTZmMozty7.k1qqnzNEoztohRqhRqhRqhR6YGk1+t3itHae1WXKO6PTXY4HIPrkF8qhbNi5h1li3WzMwOBjegscVScLEKMoJt4jp3VSphaOoJtyjp36OoJ9AubEEDlucHm0Ut+Ct3PipQLuz0k2YHZqn1eBPYExMA
                        

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

                        dannytaurusD 1 Reply Last reply Reply Quote 2
                        • dannytaurusD
                          dannytaurus @ulrik
                          last edited by

                          @ulrik Thanks! That's very cool.

                          Clever way to allow MIDI processing for each child sound generator.

                          I'm trying it out right now!

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

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

                            @dannytaurus said in How to intercept and transpose MIDI notes to Synth Group sound generators?:

                            Clever way to allow MIDI processing for each child sound generator.

                            Well it's not so clever, cause it doesn't work, it seems all channels will pass in to each wg, the midi filter modules will have no effect I noticed.

                            Well it was a wild shot

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

                            Christoph HartC dannytaurusD 2 Replies Last reply Reply Quote 0
                            • Christoph HartC
                              Christoph Hart @ulrik
                              last edited by

                              Normally the Midi Chain is not available (visible) if you add a WG inside the Synth Group, but if you construct them outside the SG and then copy them into the synth group, the midichain is available (visible) in the module tree

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

                                @Christoph-Hart Yeah, that was a stupid idea 🤥

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

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

                                  @ulrik Yep, I noticed an issue when I played 6 monophonic Waveform Generators and it used 36 voices 😮

                                  @Christoph-Hart Ah well, we tried 🤣

                                  I (hopefully) made the question moot anyway by adding semitones to the Waveform Generator.

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

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

                                  41

                                  Online

                                  1.7k

                                  Users

                                  11.7k

                                  Topics

                                  101.9k

                                  Posts