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 865 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.

        Libre Wave - Freedom respecting instruments and effects
        My Patreon - HISE tutorials
        YouTube Channel - Public 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.

            Libre Wave - Freedom respecting instruments and effects
            My Patreon - HISE tutorials
            YouTube Channel - Public 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

                Libre Wave - Freedom respecting instruments and effects
                My Patreon - HISE tutorials
                YouTube Channel - Public 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

                        46

                        Online

                        1.7k

                        Users

                        11.7k

                        Topics

                        101.8k

                        Posts