HISE Logo Forum
    • Categories
    • Register
    • Login

    Can't remove Child Modules

    Scheduled Pinned Locked Moved General Questions
    16 Posts 4 Posters 326 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.
    • bendursoB
      bendurso
      last edited by bendurso

      How can I remove a child module of a processor? I'm trying to follow the docs, but still the console returns that can't store modules with child modules.

      I'm trying like this:

          Engine.addModuleStateToUserPreset({
                  "ID": "Effect Slot1_Saturator",
                  "RemovedChildElements": ["ModulatorChain"]
              });
      

      I also tried with "Saturation Modulation" and "ChildProcessors".

      This is the XML file of the effect:

      <Processor Type="Saturator" ID="Effect Slot1_Saturator" Bypassed="0" Saturation="0.0"
                                 WetAmount="1.0" PreGain="0.0" PostGain="0.0">
                        <ChildProcessors>
                          <Processor Type="ModulatorChain" ID="Saturation Modulation" Bypassed="0"
                                     Intensity="1.0">
                            <ChildProcessors/>
                          </Processor>
      
      ulrikU 1 Reply Last reply Reply Quote 0
      • ulrikU
        ulrik @bendurso
        last edited by

        @bendurso What are you trying to remove, do want to remove the "Saturator" from "Effect Slot1"?
        according to the documentation you should use

        EffectSlot1.clear();
        

        to remove the effect loaded in that slot

        and the EffectSlot1 should be referenced with this

        Skärmavbild 2025-05-05 kl. 18.23.44.png

        so

        const var EffectSlot1 = Synth.getSlotFX("Effect Slot1");
        

        does it not work?

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

        bendursoB 1 Reply Last reply Reply Quote 0
        • bendursoB
          bendurso @ulrik
          last edited by

          @ulrik Nono, I want to remove the Child processor to add the module with Engine.addModuleStateToUserPreset.

          Link Preview Image
          HISE | Docs

          favicon

          (docs.hise.dev)

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

            @bendurso modulestate refers to having modules to be saved in preset

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

            ulrikU bendursoB 2 Replies Last reply Reply Quote 0
            • ulrikU
              ulrik @ulrik
              last edited by

              @ulrik so what exactly do you want to do, maybe I have misunderstood your question?

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

              1 Reply Last reply Reply Quote 0
              • bendursoB
                bendurso @ulrik
                last edited by

                @ulrik Yes, I'm trying to add the module to the user preset without the child processor :)

                ulrikU d.healeyD 2 Replies Last reply Reply Quote 0
                • ulrikU
                  ulrik @bendurso
                  last edited by

                  @bendurso Ok, I see the problem, I don't know how to do that, sorry

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

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

                    @bendurso You have to delete the child processor from the chain in the module tree. For example if you have a filter and you are modulating the frequency with an LFO, the LFO is the child processor, so you need to delete it.

                    This is not something you do through scripting.

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

                    1 Reply Last reply Reply Quote 0
                    • bendursoB
                      bendurso @ulrik
                      last edited by

                      @ulrik said in Can't remove Child Modules:

                      Ok, I see the problem, I don't know how to do that, sorry

                      No problem. thanks anyway :)

                      @d-healey said in Can't remove Child Modules:

                      You have to delete the child processor from the chain in the module tree.

                      Oh, but it doesn't actually have any custom child processors.

                      This is the complete XML of the processor:

                                  <Processor Type="SlotFX" ID="Effect Slot1" Bypassed="0">
                                    <ChildProcessors>
                                      <Processor Type="Saturator" ID="Effect Slot1_Saturator" Bypassed="0" Saturation="0.0"
                                                 WetAmount="1.0" PreGain="0.0" PostGain="0.0">
                                        <ChildProcessors>
                                          <Processor Type="ModulatorChain" ID="Saturation Modulation" Bypassed="0"
                                                     Intensity="1.0">
                                            <ChildProcessors/>
                                          </Processor>
                                        </ChildProcessors>
                                        <RoutingMatrix NumSourceChannels="2" Channel0="0" Send0="-1" Channel1="1" Send1="-1"/>
                                      </Processor>
                      

                      And I'm trying to save Effect Slot1_Saturator, which only contains the built in modulator.

                      <ChildProcessors>
                      <Processor Type="ModulatorChain" ID="Saturation Modulation" Bypassed="0" 
                      Intensity="1.0">
                       <ChildProcessors/>
                      
                      d.healeyD 1 Reply Last reply Reply Quote 0
                      • d.healeyD
                        d.healey @bendurso
                        last edited by

                        @bendurso got a snippet?

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

                        bendursoB 1 Reply Last reply Reply Quote 0
                        • bendursoB
                          bendurso @d.healey
                          last edited by

                          @d-healey Here I made a simple example:

                          HiseSnippet 843.3oc2Vs0aSCCE1tqFXc.BjPBdLpOsgllR1M5fG.1ZGTAcqZYbQBglbcNc0ZI1UINCpP6+L+C.6jrljstwVkFHQdnpmKe1e9bytanjAQQxPDt19iFBH7cItiDpAaMfxEn1MQ36S5PiTPnUppMGMjFEAdHLdl2XTfmsJJ46mubSpOUvfbUHzGkbF7dd.Wkqs6qdG22eapGrOOnf2q9p1LoXKouLVymYH1ngT1QzCgcnF2pPPukFM.geJom2x1dNqyZ33r7Zq0vtWiUXazak9zUVEn81vtgCci05auJBeqVdbkLzUQUPjdQ2T5Mxcf7ahzM3i7HdOevH3fb06bpZzVC39dcOM3DgP3pcyCUyjFpdDoC2iOVedH6AIFrxQTLngqTlRUKQImKhRaK88LKvEPObA5UMkdOj3xB4CU4VLbaNRagNa1mpySEoUpunJ6iIaI0dHTKEPOB1NTKLFw7qaaunk9mEdQsZsDGxEvRTOuNRuXeH4.su7CQPX2PHBTy+iZVE9p2tY8maUuU+9.SY45KUNG3RUwgTczn9hk8cOHPdL3kbPa4CAZ9DoQ+k5I6kAQR3t9WGC6jEdQ+XASwkBKoXGoB1UL+B09QsYqcRMqyZpe+IZybzCk99P3DMapWCuLfyKhC5AgKZcL0OFF6nNmTNoeqqVRmklIJ3nTzVvU6NDxjyKKblPYAJKUp+2GZ2jpnlJkLcZ+FBgJtgN3lvw59zz5lYIMgniTxg5N0yUToKsKk.xp2MSBxLniGkJrLEOhHtZTwIEWil.6I1DLwS6UjtOjzkqXClLeqLA9piZ2z7Majx8HosG4jsJY6O+Wd9QFWtCwzip28zaAJ12VlPybYyXctFyXKRhamRh4HiGQjvimPl77ixyxR0ZxrExgeBTuNPFKTEKD0SpJeKlNqHiTmU2MyY7xJReLI+TX8uu0ZOYrhKNrCUEx+NBS1INvUeMMCzLVH.e8FQvULSbRksMxFB4BBuDgeo+xL5XjwYFcN03+M6Q.kEJOfkdifImemDM5XqH4gLypeQkV1xAkbKQw5r.86FNfwJuTmC3xSKvUlVfqNs.WaZAt9zB7YSKvF+Yflm085XkLHsWDg5zsUx0pXbKAU2UkzVh9sSMpQa
                          

                          (I also tried changing "ModulatorChain" with "Modulator", "Saturation Modulation", or "ChildProcessors"). And still the same error.

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

                            @bendurso Looks like a bug, seems to happen with any effect that has a modulation chain.

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

                            bendursoB 1 Reply Last reply Reply Quote 1
                            • bendursoB
                              bendurso @d.healey
                              last edited by

                              @d-healey Ok, thanks for confirming. @Christoph-Hart is it a bug or we're doing something wrong?

                              bendursoB 1 Reply Last reply Reply Quote 0
                              • bendursoB
                                bendurso @bendurso
                                last edited by

                                @HISEnberg I was checking your solved post https://forum.hise.audio/topic/9825/add-module-state-to-user-preset-help

                                Does "RemovedChildElements" still works for you?

                                HISEnbergH 1 Reply Last reply Reply Quote 0
                                • HISEnbergH
                                  HISEnberg @bendurso
                                  last edited by

                                  @bendurso No I never solved this but I would recommend just rolling your own saturator algo in scriptnode. There is a SNEX example which is basically the same function as the stock saturator in the snippet browser. I don't think you will have this problem if you do that.

                                  bendursoB 1 Reply Last reply Reply Quote 1
                                  • bendursoB
                                    bendurso @HISEnberg
                                    last edited by

                                    @HISEnberg I hadn't thought of that—thanks for the idea. I actually used the saturator as an example, but I'm using a chain of dynamic effects, including the saturator and phaser, both of which have modulation. Still, I could definitely redo them using Faust or the built-in functions of Scriptnode. Thank you :)

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

                                    17

                                    Online

                                    1.7k

                                    Users

                                    11.8k

                                    Topics

                                    103.1k

                                    Posts