HISE Logo Forum
    • Categories
    • Register
    • Login

    Changing Impulses in Scriptnode.

    Scheduled Pinned Locked Moved General Questions
    47 Posts 8 Posters 5.7k 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.
    • Matt_SFM
      Matt_SF @lalalandsynth
      last edited by

      @lalalandsynth @Christoph-Hart @UrsBollhalder loading IRs into scriptnode actually works but only if you have AudioWaveforms tiles into your GUI. Like this :

      Add External AudioFile Slots to the filters.convolution node :
      96f1e187-72f5-4ccc-8067-df5b6fee41ad-image.png

      Link the AudioWaveform tiles to the nodeConvolution FX + set the correct sampleIndexes :
      e119fcbf-0a1b-434d-9a3b-303917e4b50f-image.png

      So the user can load custom IRs into a scriptFx, but it only works this way (or am I really missing something ?).
      I couldn't find any way to load them with a comboBox.
      The thing is, when one is using the Convolution Reverb Module, we must declare a reference like this :

       const var ConvolutionReverb1 = Synth.getAudioSampleProcessor("Convolution Reverb1");
      

      But this doesn't work (obviously) with a convolution node, so we can't use the AudioSampleProcessor.setFile() function.

      Develop branch
      Win10 & VS17 / Ventura & Xcode 14. 3

      Dan KorneffD 1 Reply Last reply Reply Quote 1
      • Dan KorneffD
        Dan Korneff @Matt_SF
        last edited by

        @Matt_SF Have you figure out how to change impulses via script?
        I found some scripts that work in the scriptFX script, but having roadblock changing them from the Interface script because the FX has an actie DSP network.

        const var irSLot = Engine.createAndRegisterAudioFile(0);
        
         // if you want to load an IR from a combobox, use this call:
        irSLot.loadFile("{PROJECT_FOLDER}MyFile.wav");
        
        

        Dan Korneff - Producer / Mixer / Audio Nerd

        Matt_SFM 2 Replies Last reply Reply Quote 0
        • Matt_SFM
          Matt_SF @Dan Korneff
          last edited by

          @dustbro errr it's been quite some time and I think I hit the same roadblock you're facing, aka how to access the scriptnode convo slot from the outside... At that time I think I used HISE's convoFx for my project
          I won't be home before this evening, but I'll still take a look, see if I can help

          Develop branch
          Win10 & VS17 / Ventura & Xcode 14. 3

          1 Reply Last reply Reply Quote 1
          • Matt_SFM
            Matt_SF @Dan Korneff
            last edited by Matt_SF

            @dustbro got home and found a solution, but it's not perfect yet : it only works if you have only one convolution node in the graph :

            HiseSnippet 1684.3oc2X80aSbDDeO6bAhoffJnpOUcJpOXjfnXfRqDpBm3XCtEmXEGRoBgh1b2Z6Uducud25j3RQBo9Bu0m4s9Qnu123KPkpT+hv2f1Y28Ne2gc9mUgBMQJJ6ryNyuc1Y9M6dsCEtjnHQHxZgsFEPPVejcmQbY+Z8wTNp4ZHqKX2BGIIgNFQqNJ.GEQ7PVVEumRf0Bygz+756tJlg4tjTQHz1BpK4ATepLUZ6peKkwZf8HaQ8yn8sp1zUvqIXhg.dJZuLJ.6N.2irNVoVAaj0708nRQXGIVRhPVyspvaTm9h84F82lFQ2kQTCpf5.FxHtgf4oPrRJpVeJyqcx9NBgrramFEJZhBW1tE0iNVdZz3h5IbRWQ13gUg7vqXN3UIK7VNC7lBjrx.o4LP5R1cbCoAxzYT34b1M4vgSWLD1yBEitnB+TA6ZBPCtbIe7.RiPXv3UT91Ku70bf+b06TpTcdOJmrDSf8VYnGUzfxHQfph1BAqrRC3vIR5rGNzwX8FOphyW6nSWVpGQpWUGre.iLFikWznpCn6hfMRMQMg+thUEGnLQBBAi.hCDbXP4EGqwhoNORadXIOdwm1dyM9l501ZmFa7f0pu4yngJeSprz938V7ZNG1723Xl+l54eB3QJmAADmtC4tRpf6nRMiQjBvgPTwMAsWC1SrgjqV5okVXbvYoHhTEEKaP8i0pb8JOA1NOCr+wtqUqO1S0vL1tPwP4IAwUuSFDttPR1fWViiROqjyaNU2tSctXSwHgScZUYZ3Qsvx7g96RByFETJB4t4KHrO7Bhr0qtlHSFEE7lbpbi.B+vphQwgSn3oPLp.Uk5RmKFW5jD5PTOUky3HIRC6LzVUQiMw7FSbkXSnSx+N7djthPesctncNYSZLjGVhQVel8QkQhBw7dDHNEBDk1VpkokTm6kLF8vlqorDTdGuWg8e.ITRUgVq0H6ATsFthErWiDMPJBzAi3bqw6kiMbbvXz6PpNZ7fW8np93CTvoHLhJI9feOickR2nzMUw+2zOmhXVpGe9iy3wm2sZPxYbSOcyowzIHSUUStG4fXdzIIMA5Zg2PFVlmCW03JdBHONGwohbjGQkix1X6eMh8SJDujcapzs+zwXgofQUZ+aALF2N771061k3JSA3b1Mdz6fde1F+WxNgTU67boAYAw5C8S6coRTK.am3VgVuvNk4JHjDfCIaIZyvih4m2D.90b1kIbGzg9ijIo6hSEWUoQY29XNmvhlEVw4OwgpJG8I0lhgRJuWKrLjpJLg8eG3xStjZwnKIFDOd4DtjNDtmdveC+DOYE0Xq3IqjLYJuJZchbeQ3.8YT7+C6EyARjNHuSWf8XEFSruhMfFm5BGLZYsErQA8EbpqRjQiDjthuXHWl.26ii1BSYpb8sIgQZibF6kWB9ExyWW3AAG6FXWHHNpMV1WUvnZZ.YmjvkbGmklCW4RT.SjbQSSDAfiul7RcMyhYXVMIjpQP4VAiUaFssZVWLCssgsGfsxllXiAeJUOicT.Ct66ghUyzyJzF6yB47oI.bLwm+KBGmWgh8Drg57hb.7J1coL3doQKkUkYNvnxtXjCRZXlgUH6HfGKt+gwf0g5UO3oB5kEW.zhxi2TFcZgOH2XTabH79DEz0ukHYDTZjtzTZ5zkm1doijDnnbxIa.YeS.JqTUPbdn8kjflvJnSsqq9KUOcttD7TIhGA3LQSX8iw8e+qlbmCTM4c+u9xW96S59W062tRUk6gq0.L0.g2o162p5Dd+E+0IayW8m8+i6ZpqtOs1PIZByfd6eled6VCYRpreHA6cT69DRg3BtyZ3Bp7dBYPdbd3CVUHF3i0sZloa8l8JLWvL44r6.6W8iU0sF9D8XG0UPctGAhDpKfU4H97F+4I8yaDbh+7Fa3JA2uEbQ+n.QT9BChOcK35zQYE9vH3A7jeXSUa0rxqIvgScpWe2FvlbpqoCVNLT2eNo0alqRV7n9LKUlwOyxbu28YV9.3AC4tM7BIXrCU0cqNeOBCpEzX7igj+tXfjHQZ9b4VBtH4tWoGzaRfKN1qGIOeyz1PqHkX2AoRtb0MILBNaR6mW8APxFNrkl9YlhEUN0eUrodd8o1F35nJ.c9v8gdE+e8C8dm75k2E9vG6FJ1w07nOUd5Y0Rf8MW+gqWvtkZry3OMjs5oLHefgaGWWUH95.g4zWyMlg0byYXM2ZFVyWLCq41yvZ9xYXMe0QtFUykUFJE9lRNPP65l67aUmigrWclN5e.OSrvS.
            

            The trick seems to declare the scriptFx as an "AudioSampleProcessor".
            I'll take more time later to see how to adress different convo nodes

            Edit : odd. When I load the snippet on my mac it doesn't recognize the ScriptFx as an audio processor, but i worked on my PC... I'll take a look at it again tomorrow

            Develop branch
            Win10 & VS17 / Ventura & Xcode 14. 3

            Christoph HartC Dan KorneffD 2 Replies Last reply Reply Quote 1
            • Christoph HartC
              Christoph Hart @Matt_SF
              last edited by

              @Matt_SF Make sure you use the latest build, I think I've recently fixed stuff around this topic.

              Oh, and there was indeed an issue with it only detecting the first slot, but this should be fixed now, so you can do

              const var s = Synth.getAudioSampleProcessor("Script FX1");
              
              const var first = s.getAudioFile(0);
              const var second = s.getAudioFile(1);
              
              second.loadFile("something");
              
              Matt_SFM 1 Reply Last reply Reply Quote 3
              • Matt_SFM
                Matt_SF @Christoph Hart
                last edited by

                @Christoph-Hart I do have the latest build on my PC but I may be a only few commits late on my mac. I'll try this tomorrow, thanks Christoph !

                Develop branch
                Win10 & VS17 / Ventura & Xcode 14. 3

                Christoph HartC 1 Reply Last reply Reply Quote 0
                • Christoph HartC
                  Christoph Hart @Matt_SF
                  last edited by

                  @Matt_SF You're guaranteed to be one commit behind the fix for multiple files, because I've just pushed it a few minutes ago :)

                  1 Reply Last reply Reply Quote 3
                  • Dan KorneffD
                    Dan Korneff @Matt_SF
                    last edited by

                    @Matt_SF @Christoph-Hart Thank you so much! This is exactly what I needed. :couple_with_heart_man_man:

                    Dan Korneff - Producer / Mixer / Audio Nerd

                    Christoph HartC 1 Reply Last reply Reply Quote 0
                    • Christoph HartC
                      Christoph Hart @Dan Korneff
                      last edited by

                      @dustbro have you tried using the hardcoded master fx? For a static effect like this it‘s recommended for final product as it removes the scripting overhead.

                      Dan KorneffD 1 Reply Last reply Reply Quote 0
                      • Dan KorneffD
                        Dan Korneff @Christoph Hart
                        last edited by

                        @Christoph-Hart I have no idea what that even means 😅
                        Is there a link to docs so I can read up on it?

                        Dan Korneff - Producer / Mixer / Audio Nerd

                        orangeO Matt_SFM 2 Replies Last reply Reply Quote 0
                        • orangeO
                          orange @Dan Korneff
                          last edited by orange

                          @dustbro Basically, it's the Effect Slot unit's custom network version.
                          You can select/swap your compiled custom dll networks with this unit and code them via script using the same API as with the older FX modules.

                          Screen Shot 2022-06-12 at 15.07.25.png

                          develop Branch / XCode 13.1
                          macOS Monterey / M1 Max

                          1 Reply Last reply Reply Quote 2
                          • Matt_SFM
                            Matt_SF @Dan Korneff
                            last edited by Matt_SF

                            @dustbro simply compile your scriptFx, add a hardcoded fx module and select your custom fx in the list, and voilà.
                            Very neat indeed 👍

                            Develop branch
                            Win10 & VS17 / Ventura & Xcode 14. 3

                            d.healeyD 1 Reply Last reply Reply Quote 1
                            • Dan KorneffD
                              Dan Korneff
                              last edited by

                              sweet! I'm gonna check this out now

                              Dan Korneff - Producer / Mixer / Audio Nerd

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

                                @Christoph-Hart Is there a version of this for poly effects or synths?

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

                                Christoph HartC 1 Reply Last reply Reply Quote 0
                                • Christoph HartC
                                  Christoph Hart @d.healey
                                  last edited by

                                  @d-healey poly effect yes. Synths no, but that‘s where the new SilentSynth comes in handy (actually it‘s exactly made for this purpose).

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

                                    @Christoph-Hart

                                    SilentSynth

                                    What's this?

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

                                    Christoph HartC 1 Reply Last reply Reply Quote 0
                                    • Christoph HartC
                                      Christoph Hart @d.healey
                                      last edited by

                                      @d-healey a silent synth.

                                      d.healeyD Dan KorneffD 2 Replies Last reply Reply Quote 0
                                      • d.healeyD
                                        d.healey @Christoph Hart
                                        last edited by d.healey

                                        @Christoph-Hart It's so clear to me now that you've added a space :p

                                        Do I add a hardcoded effect to the silent synth and load the network in there?

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

                                        Christoph HartC 1 Reply Last reply Reply Quote 0
                                        • Christoph HartC
                                          Christoph Hart @d.healey
                                          last edited by

                                          @d-healey yes. If you‘re using an envelope in your synth you‘ll have to enable HasTail before compiling, but this concept is still under construction...

                                          1 Reply Last reply Reply Quote 1
                                          • Dan KorneffD
                                            Dan Korneff @Christoph Hart
                                            last edited by

                                            @Christoph-Hart I can't seem to compile DSP that contains the convolution node. Issue reported on github scriptnode_testsuite

                                            Dan Korneff - Producer / Mixer / Audio Nerd

                                            Christoph HartC JL.LVJ 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            19

                                            Online

                                            1.7k

                                            Users

                                            11.9k

                                            Topics

                                            103.6k

                                            Posts