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.
    • d.healeyD
      d.healey @ustk
      last edited by

      @ustk said in Extend Arpeggiators 32 slots?:

      @Lindon @ulrik Well done! Maybe @d-healey can make a pull request?

      Maybe, does it force the arp to always use 64 slots or is it optional? If it's optional why stop at 64 :p

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

      ustkU ulrikU 2 Replies Last reply Reply Quote 1
      • ustkU
        ustk @d.healey
        last edited by ustk

        @d-healey Be careful! The "more" guy strikes again! 😆

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

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

          @Lindon yes of course :)
          I changed 3 lines, 32 => 64
          line 111

          numStepSlider->set("max", 32);
          

          line 120

          stepReset->set("max", 32);
          

          line 414

          int newNumber = jlimit<int>(1, 32, (int)value);
          

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

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

            @d-healey It's optional, you can set whatever number in-between

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

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

              Now available in my fork.

              I made the max 128 :D

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

              ulrikU LindonL 3 Replies Last reply Reply Quote 2
              • ulrikU
                ulrik @d.healey
                last edited by

                @d-healey Haha... that was a fast one :)

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

                1 Reply Last reply Reply Quote 0
                • 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

                                    22

                                    Online

                                    1.8k

                                    Users

                                    12.1k

                                    Topics

                                    105.4k

                                    Posts