HISE Logo Forum
    • Categories
    • Register
    • Login

    Crashing trying to compile Scriptnode dll

    Scheduled Pinned Locked Moved General Questions
    17 Posts 5 Posters 466 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.
    • LindonL
      Lindon @Lindon
      last edited by

      @Lindon nope theres something bad going on -= HISE is broken here, it wont do a proper dll compile....

      HISE Development for hire.
      www.channelrobot.com

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

        @Lindon Do you have multiple networks or just one?

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

        LindonL 1 Reply Last reply Reply Quote 0
        • LindonL
          Lindon @d.healey
          last edited by

          @d-healey just one -

          I have just created a whole new project and tried to compile the faust network I built for the compressor - with the associated code..

          and it fails to complete the compile process...

          so the process is:

          1. create a new project
          2. add a script FX
          3. add a single core.faust node
          4. create a faust file to edit
          5. copy in this code:
          // Faust Source File: compTest
          // Created with HISE on 2023-02-15
          import("stdfaust.lib");
          
          
          //strength: strength of the compression (0 = no compression, 1 means hard limiting, >1 means over-compression)
          strength = hslider("Strength", 0, 0, 1, 0.01);
          //thresh: dB level threshold above which compression kicks in
          thresh = hslider("Thresh", 0, -60, 0, 0.1);
          //att: attack time = time constant (sec) when level & compression going up
          att = hslider("Attack", 0, 0, 2, 0.01);
          //rel: release time = time constant (sec) coming out of compression
          rel = hslider("Release", 0, 0, 3, 0.01);
          //knee: a gradual increase in gain reduction around the threshold: below thresh-(knee/2) there is no gain reduction, above thresh+(knee/2) there is the same gain reduction as without a knee, and in between there is a gradual increase in gain reduction.
          knee = hslider("knee", 0, 0, 8, 0.1);
          //prePost: places the level detector either at the input or after the gain computer; this turns it from a linear return-to-zero detector into a log domain return-to-threshold detector
          //prePost = hslider("Mode", 0, 0, 1, 1);
          //link: the amount of linkage between the channels. 0 = each channel is independent, 1 = all channels have the same amount of gain reduction
          //link = hslider("Link", 0, 0, 1, 0.01);
          
          compress(left,right) = left,right : co.RMS_compression_gain_N_chan(strength,thresh,att,rel,knee,1,0,2) : *(left), *(right);
          
          process = compress;
          

          and compile it...

          1. set the node to be compile-able
          2. save the node
          3. Run the "compile DSP networks as DDL"
          4. Review (your single) list of nodes to be compiled
          5. run the compile
          • at this point it either crashes HISE, or falls out of the compile before finishing (you never see the "Generating code..." message)

          HISE Development for hire.
          www.channelrobot.com

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

            Could be something faust specific, I have no idea though.

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

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @d.healey
              last edited by

              @d-healey if you have the time could you try these steps and see if it happens for you?

              HISE Development for hire.
              www.channelrobot.com

              Matt_SFM 1 Reply Last reply Reply Quote 0
              • Matt_SFM
                Matt_SF @Lindon
                last edited by

                @Lindon I followed the same steps to build this compressor. HISE doesn't crash but I'm getting this error :

                d:\-- dev --\hise\github repo\hise\hi_dsp_library\snex_basics\snex_types.h(1047): error C2148: la taille totale du tabl
                eau ne doit pas dépasser 0x7fffffff octets (compilation du fichier source ..\..\Source\Main.cpp) [D:\-- DEV --\HISE\Git
                Hub Repo\Script-Library\FAUST Comp\DspNetworks\Binaries\Builds\VisualStudio2017\FAUST Comp_DynamicLibrary.vcxproj]
                

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

                1 Reply Last reply Reply Quote 0
                • Matt_SFM
                  Matt_SF @Lindon
                  last edited by

                  @Lindon I got it to compile correctly. I just tried and changed some Attack/Release slider values.... And it seem to have solved the issue :

                  // Faust Source File: compTest
                  // Created with HISE on 2023-02-15
                  import("stdfaust.lib");
                  
                  
                  //strength: strength of the compression (0 = no compression, 1 means hard limiting, >1 means over-compression)
                  strength = hslider("Strength", 0, 0, 1, 0.01);
                  //thresh: dB level threshold above which compression kicks in
                  thresh = hslider("Thresh", 0, -60, 0, 0.1);
                  //att: attack time = time constant (sec) when level & compression going up
                  att = hslider("Attack", 0.03, 0.01, 1, 0.01);
                  //rel: release time = time constant (sec) coming out of compression
                  rel = hslider("Release", 0.05, 0.01, 1, 0.01);
                  //knee: a gradual increase in gain reduction around the threshold: below thresh-(knee/2) there is no gain reduction, above thresh+(knee/2) there is the same gain reduction as without a knee, and in between there is a gradual increase in gain reduction.
                  knee = hslider("knee", 0, 0, 8, 0.1);
                  //prePost: places the level detector either at the input or after the gain computer; this turns it from a linear return-to-zero detector into a log domain return-to-threshold detector
                  //prePost = hslider("Mode", 0, 0, 1, 1);
                  //link: the amount of linkage between the channels. 0 = each channel is independent, 1 = all channels have the same amount of gain reduction
                  //link = hslider("Link", 0, 0, 1, 0.01);
                  
                  compress(left,right) = left,right : co.RMS_compression_gain_N_chan(strength,thresh,att,rel,knee,1,0,2) : *(left), *(right);
                  
                  process = compress;
                  

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

                  LindonL 1 Reply Last reply Reply Quote 2
                  • LindonL
                    Lindon @Matt_SF
                    last edited by

                    @Matt_SF thanks but I'm getting the same error you were getting even with these new values ...

                    d:\hise\hi_dsp_library\snex_basics\snex_types.h(1047): error C2148: total size of array must not exceed 0x7fffffff byte
                    s (compiling source file ..\..\Source\Main.cpp) [F:\Audio\Channel Robot\Hise_Work\DuoToneCompressor\DspNetworks\Binarie
                    s\Builds\VisualStudio2017\DuoToneCompressor_DynamicLibrary.vcxproj]
                    

                    HISE Development for hire.
                    www.channelrobot.com

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

                      @Lindon that's very bizarre.... Did you embed the dsp Network or did you create a network file? I did the latter

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

                      1 Reply Last reply Reply Quote 0
                      • Matt_SFM
                        Matt_SF @Lindon
                        last edited by

                        @Lindon and I reloaded HISE after changing the code

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

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

                          @Matt_SF yeah so did I..

                          I did make it compile it seems it doesnt like changing these lines:

                          
                          att = hslider("Attack", 0.03, 0.01, 1, 0.01);
                          
                          rel = hslider("Release", 0.05, 0.01, 1, 0.01);
                          
                          

                          to this:

                          
                          att = hslider("Attack", 0.03, 0.01, 2, 0.01);
                          
                          rel = hslider("Release", 0.05, 0.01, 5, 0.01);
                          
                          

                          So all I have done is increase the max value of these controls, from 1 to 2 and 1 to 5...but that crashes the compile and (often) crashes HISE...

                          @Christoph-Hart ..... this is one for you I think....

                          HISE Development for hire.
                          www.channelrobot.com

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

                            @Lindon nope that‘s faust related, it complains because your prolongued time ranges exceed the max array size for some internal buffering.

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

                              @Christoph-Hart Ok thanks - I was hoping for a much longer set of values for attack and release but hey ---

                              HISE Development for hire.
                              www.channelrobot.com

                              1 Reply Last reply Reply Quote 0
                              • S
                                sletz
                                last edited by

                                @Christoph-Hart what kind of " internal buffering" ?

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

                                50

                                Online

                                1.7k

                                Users

                                11.7k

                                Topics

                                101.9k

                                Posts