HISE Logo Forum
    • Categories
    • Register
    • Login

    MIDI keyboard range script?

    Scheduled Pinned Locked Moved General Questions
    19 Posts 6 Posters 1.1k 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.
    • ustkU
      ustk @meyerkeys
      last edited by ustk

      @meyerkeys Hi
      You can set the slider ranges in the property editor of your sliders (0-127) (don't forget to set the stepSize to 1)

      Then first solution:

      • Create the slider's Script Reference in the onInit callback.
      • Then in the noteOn callback, you can replace the lower_range variable with myLowRangeSlider.getValue()

      Second solution:

      • Keep the const var lower_range variable
      • Create a callback for your slider in the onInit
      • In the callback, place lower_range = value;

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

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

        @ustk said in MIDI keyboard range script?:

        @meyerkeys Hi
        You can set the slider ranges in the property editor of your sliders (0-127) (don't forget to set the stepSize to 1)

        Then first solution:

        • Create the slider's Script Reference in the onInit callback.
        • Then in the noteOn callback, you can replace the lower_range variable with myLowRangeSlider.getValue()

        Second solution:

        • Keep the const var lower_range variable
        • Create a callback for your slider in the onInit
        • In the callback, place lower_range = value;

        'cept it couldnt be

        const var lower_range

        it would need to be

        var lower_range

        HISE Development for hire.
        www.channelrobot.com

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

          @Lindon Oups sorry, you're right const shouldn't be here...

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

          1 Reply Last reply Reply Quote 0
          • meyerkeysM
            meyerkeys
            last edited by

            Many thanks guys!

            I wondered about "const" as well but I got it working with both versions.

            Cheers!

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

              @meyerkeys yes the first solution @ustk offered may well work but the second wont as:

              lower_range = value;

              means you are assigning a value to a constant - and that wont work. constants get set and can never be changed - theyre, huh, constant...:-)

              HISE Development for hire.
              www.channelrobot.com

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

                If the constant is an object you can change the object's contents.

                const var foo = [1, 2, 3];
                
                foo[1] = 10;
                
                Console.print(foo[1]);
                

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

                1 Reply Last reply Reply Quote 1
                • meyerkeysM
                  meyerkeys
                  last edited by

                  Thank you guys for staying on this.
                  I kind of wondered about the const or const var thing anyway as David is using const var mostly in his great videos. Can't thank you enough for those btw. 👍
                  So your last post clarifies again. Got it.

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

                    @meyerkeys You can find more information in the doc about the different variables in Hise
                    https://docs.hise.audio/scripting/scripting-in-hise/additions-in-hise.html#const-variables

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

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      Ben Catman @ustk
                      last edited by

                      Guys sorry for reviving this old topic,

                      I have two Sampler, and one Synth Group, and with the script above i can set the note range for all of them. No problem here - but how can i control my samplers seperately. So that i can set a range for Sampler1, 2 and my Synth Group?

                      Thanks so much
                      best
                      Ben

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

                        @Ben-Catman put the script in three separate script processors one in each sound source.

                        HISE Development for hire.
                        www.channelrobot.com

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          Ben Catman @Lindon
                          last edited by Ben Catman

                          @Lindon

                          so you mean i move everything, including the oninit part to the script processor? because in the script processor it cant get my slider value. so how can i cross reference that?

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

                            @Ben-Catman create a slider in your script processor and change that from your UI

                            start like this in the script processor on init

                             const var LowRange = Content.addKnob("LowRange", 10, 0);
                             LowRange.setRange(0, 126, 1);
                             const var HighRange= Content.addKnob("HighRange",180, 0);
                             HighRange.setRange(1, 127, 1);
                            

                            HISE Development for hire.
                            www.channelrobot.com

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              Ben Catman @Lindon
                              last edited by

                              @Lindon
                              Got it, got it.

                              Guys, you are AMAZING!

                              Thx so much!!!!

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

                              9

                              Online

                              1.7k

                              Users

                              11.8k

                              Topics

                              103.1k

                              Posts