HISE Logo Forum
    • Categories
    • Register
    • Login

    onNoteOn() - Illegal operation in audio thread: String creation (in HISE plugin only!?)

    Scheduled Pinned Locked Moved General Questions
    24 Posts 4 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.
    • gorangroovesG
      gorangrooves @Christoph Hart
      last edited by

      @Christoph-Hart Thank you!

      So, lets say I create a script file called extra.js.

      Inside it, I put the script relevant to the mapping (and anything else which may currently cause an error), including the relevant onNoteOn portion of the script.

      I include the script in my project with

      include("extra.js");
      

      before the line

      Synth.deferCallbacks(true);
      

      And that should do the job?

      Goran Rista
      https://gorangrooves.com

      Handy Drums and Handy Grooves
      https://library.gorangrooves.com

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

        @gorangrooves You need to put the audio stuff in a completely separate MIDI processor.

        Free HISE Bootcamp Full Course for beginners.
        YouTube Channel - Public HISE tutorials
        My Patreon - HISE tutorials

        gorangroovesG 1 Reply Last reply Reply Quote 0
        • gorangroovesG
          gorangrooves @d.healey
          last edited by

          @d-healey So, I create a MIDI script processor for the Main Container (the sampler window) and put all of this there?

          Goran Rista
          https://gorangrooves.com

          Handy Drums and Handy Grooves
          https://library.gorangrooves.com

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

            @gorangrooves I can't say without being more familiar with your project.

            Anything that is not UI related needs to go into one or more separate MIDI processors.

            Free HISE Bootcamp Full Course for beginners.
            YouTube Channel - Public HISE tutorials
            My Patreon - HISE tutorials

            gorangroovesG 1 Reply Last reply Reply Quote 0
            • gorangroovesG
              gorangrooves @d.healey
              last edited by

              @d-healey Ok, but are we talking about the same thing? See the image, please.

              Desktop Screenshot 2022.10.25 - 16.24.56.23.png

              Goran Rista
              https://gorangrooves.com

              Handy Drums and Handy Grooves
              https://library.gorangrooves.com

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

                @gorangrooves Yes

                Free HISE Bootcamp Full Course for beginners.
                YouTube Channel - Public HISE tutorials
                My Patreon - HISE tutorials

                gorangroovesG 1 Reply Last reply Reply Quote 0
                • gorangroovesG
                  gorangrooves @d.healey
                  last edited by

                  @d-healey Alright. Thank you. I'll give it a shot.

                  Goran Rista
                  https://gorangrooves.com

                  Handy Drums and Handy Grooves
                  https://library.gorangrooves.com

                  gorangroovesG 1 Reply Last reply Reply Quote 0
                  • gorangroovesG
                    gorangrooves @gorangrooves
                    last edited by gorangrooves

                    I am getting nowhere with this. It is like a f'ing Rubik's cube 🥴
                    Is anyone of you guys available 1-on-1 to help me with this? I'll compensate you fairly. I want to get this done asap and move on.

                    Goran Rista
                    https://gorangrooves.com

                    Handy Drums and Handy Grooves
                    https://library.gorangrooves.com

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

                      @gorangrooves

                      so you need to get this bit of code into your seperate midi processor - the one you've identified.

                      arrayPos = noteTriggers.indexOf(Message.getNoteNumber());
                          if (arrayPos > -1)
                          {      
                             Message.setNoteNumber(noteSources[arrayPos]);  // yes so play its matching source note
                          }else{
                             Message.ignoreEvent(true); // no ignore it..
                          };
                      

                      so it wont know about noteSources, so you need a way to tell it - ahead of time when noteSources changes - or explicitly if its always the same.

                      so either:

                      declare noteSources in the midi processor init and populate it
                      or
                      make noteSources a global variable (not a great solution)
                      or
                      create a table in the MIDI processor that you can reference (and set) from your UI script

                      HISE Development for hire.
                      www.channelrobot.com

                      1 Reply Last reply Reply Quote 0
                      • gorangroovesG
                        gorangrooves
                        last edited by

                        Update: @Lindon saved the day (and a few more) by helping me today. I got the scripts separated. Massive thanks!

                        Goran Rista
                        https://gorangrooves.com

                        Handy Drums and Handy Grooves
                        https://library.gorangrooves.com

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

                        32

                        Online

                        2.0k

                        Users

                        12.7k

                        Topics

                        110.4k

                        Posts