HISE Logo Forum
    • Categories
    • Register
    • Login

    Legato/Monophonic on one sampler only?

    Scheduled Pinned Locked Moved General Questions
    14 Posts 4 Posters 596 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.
    • Casey KolbC
      Casey Kolb
      last edited by Casey Kolb

      I'm currently building an engine with 8 samplers and they all handle MIDI input independently without any issues. They can all be independently monophonic / legato or polyphonic etc. Are you sure you're using the encapsulated MIDI modules for each sampler? Also, are you using any global variables?

      Casey Kolb
      Founder & CEO of Lunacy Audio
      Composer | Producer | Software Developer

      d.healeyD 1 Reply Last reply Reply Quote 0
      • lalalandsynthL
        lalalandsynth
        last edited by

        The problem is that I essentially need this for one instrument on one channel.
        I guess I will have to live with reducing the voices and no retriggering for that part of the instrument as its impossible for HISE to know which notes belong to the monophonic and which belong to the poly because they overlap.

        Its a string machine with a bass section , and the bass section is monophonic on the original.

        https://lalalandaudio.com/

        https://lalalandsynth.com/

        https://www.facebook.com/lalalandsynth

        https://www.facebook.com/lalalandsynth

        1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey @Casey Kolb
          last edited by

          @Lunacy-Audio How are you achieving this? If you play a note it will be picked up by all MIDI processors in all samplers, unless you're using channel filtering or something similar, or is there something obvious I'm missing?

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          LindonL 1 Reply Last reply Reply Quote 0
          • LindonL
            Lindon @d.healey
            last edited by

            @d-healey said in Legato/Monophonic on one sampler only?:

            @Lunacy-Audio How are you achieving this? If you play a note it will be picked up by all MIDI processors in all samplers, unless you're using channel filtering or something similar, or is there something obvious I'm missing?

            yep as David says - channel filtering is your friend: use: Message.setChannel()

            e.g.

            Message.setChannel(16)

            in your "master" note on - for all note you want to send to your bass section

            and in the bass sections note on ignore all notes other than those on channel 16...

            HISE Development for hire.
            www.channelrobot.com

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

              @Lindon Not sure I fully understand , wouldnt that mean that the bass section would only respond to Ch16 from an external controller? Or can I somehow split into channels internally and yet have it respond to only one externally ?

              If so , could you provide a snippet ?

              https://lalalandaudio.com/

              https://lalalandsynth.com/

              https://www.facebook.com/lalalandsynth

              https://www.facebook.com/lalalandsynth

              LindonL 1 Reply Last reply Reply Quote 0
              • LindonL
                Lindon @lalalandsynth
                last edited by

                @lalalandsynth

                HiseSnippet 1259.3oc6Z0saaaCEVJNZH1ooXcKaXWxUrKrA5Br7ZyFVVQ90tHX0IFwos6hATvJQYSDIRMIpzETzGo8trGg8Hz2fsCkrhnhUcRTcRSyrtI47G4GO77COAoW.2hDFxCzzqd3I9DM86Xz+DlX31CwTl1t6noeWit3PAI.kvZqS7wggDaMc8JOQxPu57Zweua8svtXlEIikl1y4TKxSodTQF2da7qTW2NXaxgTOEse3F6ZwYayc4Q.dpXzTyGacDd.YOrTs4Lzz+r11TAOnu.KHgZ5yuE29j9C4ulkn+yogzW4RjDlZ8gEJgcGtqsDwxeWa6gTW6dom6PMXQ6k4Epj3EV1nK0ldJ+LuwmGK.kYgp+PetIAOyRBOcE3MeB7tmQeq.puHShDaKZrKCtnbvvUfJrRzUateW2XaNnASrhG9HRm.f3TKpuZylO.8nlMarlSDyRP4LDmsGWP1mUuQs2TqJ0odWXyf6iUFPDRI6E48JRP8FneAsZyFKUCAeuI4GxuTsCIBvAxXD25lq1XsX4us1aqgN6F43bMrSRWP.20UtbxM6LhkgjEKYjg0YwX4AniwtQjSUDtaxe4u3E6x2J4FQQQNaWFUruOYDsZ3Q5MRpzS433nxJ6LpxM9nUfZYrFO5SaTDC7aOa2cvBrLfbDOPOeRffJOs56PNFxzSBOqZrCI7HA2Gx0GK1Exf31QtXQ9zJYsjQB.2ct3WYLJKjJNQsVykHWqYg4ZlEcZufv8dF8nBqgEi24J.ufW6pFuipbsjQaGGhkHCryaz42JaYpxAkEdOsRtSb8GfhDXNMZj3egajnW4pnwgwsjFGe4HtYnyrvFH+ktA581b.oVyNsJbCz29Xj4pnwKYCQBgbWxJ9ATln986CAEH5.FGHGfXvJCav8ar1303iUhz9Xn.TcQ.TA97anTB3co.piykCoeZ2QZ7tPlS2tPmSglYcjl0Q5xBk6l.kEMjouwckhAxWGSidA9XB5IDnsjzoNoVS+8zu0z9VBX6OL.yB84g4V39DO5gblzijw7YgvK2I+wAxaYU9aywAEJ5cq2ANjEZSerHJHNbYSOdDSjK7nRo5IkOqQQ+BZPM+Gg9mS+TuO7JEUtXv8bZwWMEi8od9tj1riItP4vXL9EP8OGbjqHka9f7tbF2eHmQsTi.NfHBnCFPBTwdgGnMEBXR8LNKuwADWBVMZ9613oPTHN.7SjR5KLu39hIce8MFIvEIyLQ2NpvW4+mU3OfGIfmg0ECAp+I7d78h75CEVsHidfGrQF5yIKNlP2TRmTYkYGS7uv2HglRZ8QBMSEdsrGWtYmZMa1oaxyN0ZpM6zikCmb9iNge8OO1nSHujELdvjpSdpjkN++hbWIfzw4CGkWWyNU6SjYmlMuzr4klBPY4z4kjiFkMuzWES6vC7toLtjo5JeFYsTksCQDwxqdBqbZIOdcfimhdKrQJyVpL6gY4VLfN2J0U9XgTx+Y81LLbgzm.mF68CsfCqz2olNzKxMj7BpsXnopgYraox9ZX5LiYSm8wZ5rVylNa1zY2l5mL4LTnV4Mfa5aKCSdcrGdXq.9KsRd8oL8dgXNfukE++pQUitRZjoV76pA6LZtRSMOnIwKsrjQfeObGTrMsJgM+PIr4gkvlGUBaVsD17ikvleZh1H6OuYjf6kjiAL50NdZ.c8j2lDmto8eLDJr9O
                

                HISE Development for hire.
                www.channelrobot.com

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

                  @Lindon cool, that works well for splitting like this <60 but in my case the poly section overlaps the Bass section.

                  Its a drawbar system where you can pull down the Bass drawbar and it plays on the same keys as the polysection.

                  I am not sure that is possible.

                  https://lalalandaudio.com/

                  https://lalalandsynth.com/

                  https://www.facebook.com/lalalandsynth

                  https://www.facebook.com/lalalandsynth

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

                    @lalalandsynth Actually , the issue is the following.

                    The keyboard is split in the middle.
                    Bass can play lower half , poly section is split into two parts , upper and lower.

                    Everything actually works fine with the monophonic bass and the poly section on top when playing the lower half.

                    But when I play the upper half , the Monophonic bass gets Cut off as it has no notes to play on that half and the upper half is affecting the Legato mono behaviour.

                    So maybe its a matter of restricting the RANGE of the bass section so its not affected by the upper half notes playing ?

                    https://lalalandaudio.com/

                    https://lalalandsynth.com/

                    https://www.facebook.com/lalalandsynth

                    https://www.facebook.com/lalalandsynth

                    d.healeyD 1 Reply Last reply Reply Quote 0
                    • d.healeyD
                      d.healey @lalalandsynth
                      last edited by

                      @lalalandsynth Use a note filter.

                      Libre Wave - Freedom respecting instruments and effects
                      My Patreon - HISE tutorials
                      YouTube Channel - Public HISE tutorials

                      1 Reply Last reply Reply Quote 1
                      • lalalandsynthL
                        lalalandsynth
                        last edited by

                        Indeed , that seems to have solved it !!

                        I might just have overcomplicated the problem a tad :P

                        https://lalalandaudio.com/

                        https://lalalandsynth.com/

                        https://www.facebook.com/lalalandsynth

                        https://www.facebook.com/lalalandsynth

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

                          @lalalandsynth

                          @d-healey ...strange , I am using your note filter script but it just stopped working after I saved ?
                          And going back to an older save < i cannot get it to work ...hmm.
                          must be doing something wrong

                          Could have sworn it worked there for a moment.!
                          Using this in the OnInit in a midi script processor.
                          does not seem to work even when testing a fresh project ?

                          Content.setWidth(500);
                          
                          const var knbLow = Content.addKnob("knbLow", 0, 0);
                          knbLow.set("text", "Low Note");
                          knbLow.setRange(0, 127, 1);
                          
                          const var knbHigh = Content.addKnob("knbHigh", 150, 0);
                          knbHigh.set("text", "High Note");
                          knbHigh.setRange(0, 127, 1);
                          knbHigh.set("defaultValue", 127);function onNoteOn()
                          {
                              local n = Message.getNoteNumber();
                              local t = Message.getTransposeAmount();
                          
                          	if (n < knbLow.getValue() + t || n > knbHigh.getValue() + t)
                                  Message.ignoreEvent(true);
                          }
                           function onNoteOff()
                          {
                              local n = Message.getNoteNumber();
                              local t = Message.getTransposeAmount();
                          
                              if (n < knbLow.getValue() + t || n > knbHigh.getValue() + t)
                                  Message.ignoreEvent(true);
                          }
                           function onController()
                          {
                          
                          }
                           function onTimer()
                          {
                          
                          }
                           function onControl(number, value)
                          {
                          
                          }
                          
                          

                          here is a snippet , I dont understand , it worked for a moment ?

                          HiseSnippet 2194.3oc6a0saaajElzxrIVsdQS2t.8hcAHb2Kjw10fjCkn7ltaj+OFwNQPJ06dQ.BXnFIMHTbHHobh21Bzmh9bzGgdY6aSdC18L7GygzS7pP3vjsQBFFbNyLbNemuyblybrb+.pCNLjFHIu1iuvGKI+IJCuvKZ5dSsIdRGuOHWwkNw1SEIs6E91gg3QRxxMNh0s7ZqJE+4U2aWaWaOGbtHIoynDG7IjYjnbo868.hq6g1ivOlLiazl8N1g5sG0kNGTkFJZR91NO2dB9g1rgshhj7GcvHRDMXXjcDNTRd0coitX3T5K7RF+YjPxybwrF5RCgWTh3CotiXZLSpzdSIti5mA4PII4a0O2.zHw.74JmRFQtTdtg3Si6PMeF71C4UtN0SmW8zVX0ShS6VMQ6.kfNZtqcTQMiQGocPndEzri8hvdgjnK3oq2op6cT5ShblJVeWQf9BD0aa8Mk7WW4fwiwNQ4J6pJG9upWl9OknJelxvn.r8Lh2jg1y7cwAw5yGqbBa6XebfyMwFRoEdCY+.rK0dzPx+laX+bucmCFrfhR+odwK0Nyny8JrVo.Y.1GaGA7O2btcuACNJfN2u7rd08h8Vdb.DP.rE7c7HOLX34WAo8BnggiA3D+tB46p+7fILaUtjA3ywAgEk8v4y.x2yC6BSVQVFD8MgXFYSbN0NJf7R9QGuJZO1NlvgnTws0K01nTaTo1lkZ2tT6NkZak2NwfdpseYWC4UK5kdqWuWJe3R3M02FvN2H2kL4xUIQRtqrVt8NVm3hGKHX6G81JXaiECbBToUtpJ8GTNAOABX8OIQSGfABexjzsdeQZOpu.5R8x9zKpaMtgzMo8nrHgQBiqdGkgNAD+n7dXJ3uOUZtYqntkzqzJ+RCk0atdSXCdXj541ApO26YmPeg5eWMcM2xdznG3QeVqMR5YiuRUC9Yy6tdyDAaEhiZsQD9kQPWavl6CoQ3MJNfA1dSvsfIpaXA+h0YoE89jISeMqJqK3cq2lagYxJtxwu.9kNaHBV6BufQ3w1yciNy1cNFdQlVad2wy8bXmFoR8XuwG40Zy0a9sq2TE93RcrcU8.c8TvtB4kr0DbDaTP3hmgCZwd+4iKp33fPWdg9zvz.hsRLDqQFq1xS8qSM9rAFqMs1T8u.ugu66fk6ejYjJ06lIqF6S15Pl3QCvGbNXGaEELGyVjuGFVYTMd7aWXwFdsiLlCT.00koxwf6Jifc51qsyzo2xKF0eE3cB5C2XE3Yz7aatVyuWr4UPe7JnftS0tW+DKoZYC7Jg4atXQabR1vwMPp2wdjnG4iSCemgzqHY7XdQ43hWZLbDLrbQWW3N4URGNLzn3nc+tz3ZCcIifXwDHX1sURbtjhMH7GIKs.ydMkTuuRS+GNtmz2b791Q1fZHmpQfV5iChHL6q793ygLaRBBulx93vmGQ8iU4Y9TOl9Keq+2J8KYoVvVvKxdHLB6WLIpWcuY144Z7yOsGKlGvvJYQaYH8xE81K.ViW0erRq5GqbYjVI9Pm4Vti5Ue2Vowhkxsfy6k6ekK79oJCIrzaNv6bHAWPBSG+LfZiQYlzhGjdJ0i5Ok5QbJlNYV1Bb5tP.sSTDjMatjOu2.rK1NjiH9y8Ng3gsCJlk7ajsPewsEWGe8EJIpqJaas5uMtkYiO3uk40Y5fnHwY7qBqdPz6477mnDeoHU1cXeWopCnyif6llc+PEH8ogvEmcv7WkbE1YSIs0xB.OD6MJtw+A9j1od18NYcpm0ojS1qBvV5ywGTI2.6wt6UbwSbgaz5x6RGBWOmoRvcEeiqwvtforPoYVVigk0Xfy0ndpwf9680XP6seMFLdOtFCFBqwvu1PQcYQFVVjgkEYXYQFDWjA8OTKxvQKKxvxhLHpHCFKKxvxhLrrHCKKxvuMJxve7ZKxvcxuI4dXWWp1MQoF7qwRM3urTC2zkZPV4CnJJ7+YeEwdGjODplyG5reRX9PW8L6k4CsLenk4CsLenEHenvXRcV7oPLKGHqTlAL3cJwoOELavNFV3Ek6BQ.RlIbs3ATVRAqpXXIcB8A3KRe99j7mOgdFSEXVs6SheTQQGjmtTom.RbS+9T+0JG+2dRb5Wf2V.XDUO01YJD56IrzwTiyG6IWldVR6mt+WZr0KrOWZ+49tDGfIY78ITp+AYlB1hvDj3AKeKlJnqIkLlQLAcauc21YFENng1NGZvyWBsX40AzPu4PqiVmBPqiExT.zL5vwZc3XsNuoP6tUBZUgzzrJhLMKCQjVWNRqKGo0sdPVE3r1aWhyZaZIhy3PlAGxLpGjcPE3rN5Fk3r1h3LSsbjYpkirX40.xpx9LK8hHaaMMQdibHCwgLjVsDB4vpDcrqQwnicPHjHRyfizL3HMiZBZUf0rLJyZs0EsSiKvuAWfeisqE+wCqRzQqxwPZKJtuoNGooyQZ50CxpxNs3H27bFR3NMN2QDm6HpdbGOpR6zPkBOZpIjzL4HMSNRyrlfVkNSCUDZc05Jh037GQb9in5we7HiafLrzrDk7nIhizPbjFpdPVk1oUJ5nkkn.+HN2QDm6HpdbG24KqThHkHMSSgIhvkVrIWZwlcpInUAVSuTNVVZcEk8HhyeDw4OhpG+wcpBo0ocoyzzDlHRaNRqMGo0tdPVUhN1t7NssEtSiCYHNjgpGjsaktk11EQF7QDmwU0.StpFXZUOHqJblUoCqszEdKMNNyfiyLZWKgP1qR0CQynT8P1VX8P3HMDGogrpIncSblV6Nhxdzf6LMCtyzLLqE+w8pRzQToni5VhtKCh6HMD2QZn5oRO6UoaoUpROf+X8TY0Y1NAzm5j70nhUe0aGKAzRuXSvZJmxZqpm8smRQQaKMoYjQjm5v9+aV4uBbf34XTg4fpvbLqvbZWg4zoBywpByo60NG1eZyclGQmk7G1ADz+fjhgKeoKlbCo+Kz2oIp.
                          

                          https://lalalandaudio.com/

                          https://lalalandsynth.com/

                          https://www.facebook.com/lalalandsynth

                          https://www.facebook.com/lalalandsynth

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

                            I just did a simple version.

                             function onNoteOn()
                            {
                            	if(Message.getNoteNumber() > 47)
                            	    
                                {
                                    Message.ignoreEvent(true);
                                }
                            }
                            

                            https://lalalandaudio.com/

                            https://lalalandsynth.com/

                            https://www.facebook.com/lalalandsynth

                            https://www.facebook.com/lalalandsynth

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

                            24

                            Online

                            1.8k

                            Users

                            12.1k

                            Topics

                            105.7k

                            Posts