Forum
    • Categories
    • Register
    • Login

    Matrix modulation connection is broken in exported plugin

    Scheduled Pinned Locked Moved Bug Reports
    11 Posts 3 Posters 43 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.
    • Oli UllmannO
      Oli Ullmann @ustk
      last edited by

      @ustk
      Do you have this in your script:

      Engine.addModuleStateToUserPreset(“Your Global Modulator Container Name”)

      I don't remember 100% for sure, but I think I had the same issues as you. Adding the Global Modulator Container to the preset solved all the problems.

      Christoph HartC ustkU 3 Replies Last reply Reply Quote 0
      • Christoph HartC
        Christoph Hart @Oli Ullmann
        last edited by

        Are you exporting a FX plugin?

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

          @Oli-Ullmann I have seen this! Testing...

          @Christoph-Hart Yes

          Hise made me an F5 dude, any other app just suffers...

          1 Reply Last reply Reply Quote 1
          • ustkU
            ustk @Oli Ullmann
            last edited by

            @Oli-Ullmann So in the end it's not this. I have it noted in my project check list like so:

            /*
            In the case the modulation is deleted when loading a DAW project, do this:
            Engine.addModuleStateToUserPreset("Global Modulator Container");
            https://forum.hise.audio/topic/14137/modulation-is-deleted-when-loading-a-daw-project/5
            */
            

            Thanks anyway!

            Hise made me an F5 dude, any other app just suffers...

            Oli UllmannO 1 Reply Last reply Reply Quote 0
            • Oli UllmannO
              Oli Ullmann @ustk
              last edited by

              @ustk
              Okay, here’s something else that comes to mind regarding an FX plug-in:
              You need to check the Enable Sound Generators FX box in the settings for it to work in the compiled plug-in.

              Additionally, I have the following in the extra definitions:
              HISE_ENABLE_MIDI_LEARN=1
              Otherwise, you won’t be able to access the context menu for the buttons. And just to be safe, I also checked the box for Enable Midi Input FX in the settings.

              I think that might solve your problem.

              ustkU 2 Replies Last reply Reply Quote 0
              • ustkU
                ustk @Oli Ullmann
                last edited by

                @Oli-Ullmann Mmmm... I have them all already...

                Do you mean you actually have an FX plugin working with the matrix modulation system? (extra_mod nodes, UI matrixTargetId, etc...)

                Hise made me an F5 dude, any other app just suffers...

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

                  @Oli-Ullmann @Christoph-Hart Alright I got something!

                  When setting the hardcoded DLL to "" then back to the original one, the connection is made.
                  So why it's not connecting at init I don't know...

                  @Oli-Ullmann Do you set your networks/DLL from script or are they just set in the module tree like I do?

                  Perhaps I should also add those module states to the presets?

                  Hise made me an F5 dude, any other app just suffers...

                  Oli UllmannO 1 Reply Last reply Reply Quote 0
                  • Oli UllmannO
                    Oli Ullmann @ustk
                    last edited by Oli Ullmann

                    @ustk
                    Okay, I have a working FX plug-in with modulation. However, I control the parameters using HardcodedFx.setAttribute(parameter, value) because I’m controlling multiple parameters simultaneously with a single UI element. So I’m not using extra_mod nodes. Since modulation in an FX plug-in is usually monophonic and I don’t need sample-accurate modulation, this works for me.

                    The UI element has a matrixTargetId, and I’m using HISE’s modulation system.

                    I load the HardcodedFX dynamically via script. I haven’t added the module states to the preset. Just the Global Modulator Container.

                    So it’s possible that it works for me because I control the parameters via setAttribute and the UI elements aren’t directly linked to the effect parameters. But that’s just a guess.

                    If it helps and you're really stuck, I'd be happy to send you my project without the effects DLLs and C++ files....

                    ustkU 1 Reply Last reply Reply Quote 1
                    • ustkU
                      ustk @Oli Ullmann
                      last edited by

                      @Oli-Ullmann Thanks a lot for the detailed explanation!

                      This confirms what I see, so the main difference is that you load your hardcoded DLLs dynamically.
                      I doubt the setAttribute is the origin of the problem because when I force the DLL it then works.
                      I need sample accuracy so the targetId is what I want.

                      Now, when you say "I load the HardcodedFX dynamically via script", do you mean once at init or on preset load CB? (or other behaviour to swap them on the fly)

                      Hise made me an F5 dude, any other app just suffers...

                      Oli UllmannO 1 Reply Last reply Reply Quote 0
                      • Oli UllmannO
                        Oli Ullmann @ustk
                        last edited by Oli Ullmann

                        @ustk
                        I load the effects via the ControlCallback of my UI elements using SlotFX.setEffect(String effectName). The UI elements are saveInPreset.

                        I can also swap the effects on the fly.

                        What do you mean by “when I force the DLL”?

                        Here’s some additional information that might be important:
                        I created the basic effects in Max and then imported them into HISE via RNBO. I then combined these effects further in a ScriptNode network. I compiled this network and loaded it into a HardcodedFX.

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

                        14

                        Online

                        2.3k

                        Users

                        13.6k

                        Topics

                        118.5k

                        Posts