HISE Logo Forum
    • Categories
    • Register
    • Login

    Extend Arpeggiators 32 slots?

    Scheduled Pinned Locked Moved Scripting
    21 Posts 5 Posters 1.2k 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.
    • ulrikU
      ulrik @d.healey
      last edited by

      @d-healey Is your fork based on the "script node" version?

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

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

        @d-healey -- I will await the imminent merge - and new version from Christoph..

        HISE Development for hire.
        www.channelrobot.com

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

          My Fork is based on a scriptnode version from a few weeks ago (before Christoph got into his Snex rewrite) that builds successfully.

          @Lindon The pull request was made 10 days ago, I don't expect it to be merged until Christoph is finished tinkering with Snex and whatever else he has planned for v3.

          You can see a list of the changes I made here - https://github.com/christophhart/HISE/pull/156

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

          ulrikU 1 Reply Last reply Reply Quote 1
          • ulrikU
            ulrik @d.healey
            last edited by

            @d-healey Great, thank you!

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

            1 Reply Last reply Reply Quote 0
            • L
              LeeC @ulrik
              last edited by

              Great and interesting work @ulrik
              Got 2 questions if you don't mind sharing info:

              1. You mentioned that "You chose the root note (playing it)" and I'm curious how to get the root note to be set based on a note played on the keyboard?

              2. How do you get the arpeggiator to only play notes from a given scale?

              If anyone else has insight your thoughts are always welcome.

              Cheers & hope you're all good ☺

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

                the scales are in an array that will set the arpeggiators "Num Step" and "Note Numbers"
                array.length = sets the value for Num Step
                and each index value sets each Note Numbers value

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

                L 2 Replies Last reply Reply Quote 1
                • L
                  LeeC @ulrik
                  last edited by

                  Ok thanks for the tips @ulrik... I'll try and work something out ☺
                  Appreciate the response

                  1 Reply Last reply Reply Quote 0
                  • L
                    LeeC @ulrik
                    last edited by

                    @ulrik so did you manage to set the root note by playing it on a keyboard, if so how?

                    Cheers

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

                      @LeeC
                      example movie

                      this is one of the scales:

                      const var Ionian = [
                      "Ionian", "C3", "D3", "E3", "F3", "G3", "A3", "B3", "C4"
                      ];
                      

                      then in the noteon callback I use

                      for(i=1; i<scale.length; i++)
                          {
                              tmp = Engine.getMidiNoteFromName(scale[i])+(Message.getNoteNumber())-60; //  get midinote number from name
                              Engine.setKeyColour(tmp, KeyColour);   //  Colour the keys
                              notes.push(Engine.getMidiNoteName(tmp));
                          }
                      

                      to push the scale in to a new array (notes), I'll start the for loop at index 1 cause index 0 contains the scale name.
                      So the "root" note will always be the key I play.

                      Sorry if my explanation is not so good, but I hope you understand what I mean.

                      cheers /Ulrik

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

                      L 1 Reply Last reply Reply Quote 1
                      • L
                        LeeC @ulrik
                        last edited by

                        @ulrik Perfect explanation mate.
                        Massively appreciate the insight ☺
                        Hope you're good!

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

                        27

                        Online

                        1.8k

                        Users

                        12.1k

                        Topics

                        105.6k

                        Posts