HISE Logo Forum
    • Categories
    • Register
    • Login

    Preset Crash

    Scheduled Pinned Locked Moved General Questions
    7 Posts 2 Posters 50 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

      I'm testing my plugin with a beta tester, and it occasionally crashes for him when changing a preset. The plugin passed validation with pluginval.

      I can't reproduce the crash on my Mac mini M4, but he has a 2017 Mac which is a bit slower.

      The presets contain approximately 600 lines each. About 500 lines are components, 50 to 100 lines are modules, and finally, about 10 lines are macros.

      The plugin shows no errors in the Hise console when changing presets. My only thought is that it crashes because his computer is slower. What do you think? Is there a way to load presets more slowly so they load properly on slower computers? Or is this already optimized with Hise?

      PS: I already re-saved all the presets with the actual parameters with saveInPreset.

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

        @bendurso said in Preset Crash:

        About 500 lines are components

        You built a monster :)

        @bendurso said in Preset Crash:

        What do you think?

        It could be, but it's not the act of loading the preset - that's pretty light on resources. It will be the action taken by some of your gazillion components when the preset loads.

        How willing is the tester to try a debug version to hopefully generate a debug log when it crashes?

        Of you could start commenting out control callbacks until you find the one(s) that cause the crash.

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

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

          @d-healey I think I found the issue. I included "Debug mode" on the floating tile, and the beta tester sent me the log.

          Most crashes happen when the convolution reverb combo box is loaded. The problem is that I'm using a convolution reverb inside a hardcoded master FX (created with Scriptnode).

          In the combo box's inline function, I call Synth.getAudioSampleProcessor() only when the convolution is active. But audio processors can't be declared inside inline functions. The issue is I also can't declare them in onInit, because the convolution reverb is not loaded yet in the hardcoded master FX—so I can't call Synth.getAudioSampleProcessor()

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

            @bendurso said in Preset Crash:

            Synth.getAudioSampleProcessor()

            Yeah this is what I was saying in another thread. All references need to be declared in on init as const.

            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 Yes, but the problem with this one is that Hise returns error if I declare on init, because there's no effect loaded on the hardcoded master fx.

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

                @bendurso minimal 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

                  Only after I load the Convolution Reverb network on HardcodedMasterFX1 I can get Synth.getAudioSampleProcessor. And in my plugin all hardcoded master fxs are empty on init.

                  HiseSnippet 760.3ocuU00SaCCE0tsFs1MlFRr2i3IXBgRnsrhPSCneLp1ZoZkg3MjqiC0pI1QINvpl1+48OXyNIzzR6ftpskGp58q3SN2y85dABBMLTD.fktXrOE.eAp+XtbX8gXFGztA.9RTGbnjFXj35zw93vPpM.By+AsCXwBf3me79SwtXNgl4B.tTvHzOw7XxLu8N9iLW2VXa5ELuoxtxwsIBdcgqHRgm7HSfOlLBeCsKVmVND3Lb3P.7MnA16aZac.olk09UqVybPsxjCGT1AWtBEO3PyZV3Cq5XVA.WqoMSJB5KwRZn5kdpvdb+gh63IGvkrP1.Wp1vBzWcxItA0Gxbs6cO4DB.vB8xnp7IT0lnNLa1D+YT1qhCXjUwzjFL2iAIq+.HAmBRERfzFn9j.luLKhFOOG0lq5fNXUuYZnjjKH25PTcgJCtbOO7HZq.kwjJ19.SycMT+ryQkJo5OgRiShrYhIGgw6LhkL6cCUFGoO1y2kNI91acFNvlHro1IJoVWYs0NG4DwIRlfaH3cER547s2oz2JUrz2KY7vPNNKLlFyABWWZvBCqEWAOVgayi7FPC103VraDcRhJxb1NzZKWGhjPgSknf2lyjm6SSsaIbs0Lu9+y2OAo8.0+9R6FXIV2hS8oxymFHYZ3.aPuUMTkzvKhZPCGIE9pwp4TCJcnvNxEKmUbpGaSCn3iYTD5tNOjIGO8X8CUrE987g4T7wS70tjvcCTOljLbw3M2Bvqh09Wi2z4+0QMcbnDYFXKfZc0iNrWX4jRYPYYG7eMZxPlQ59ZETzXZSz7ieyfwtT4chfQ5U+cEF76sx+WZME3yhHIieSGrLf8U.D0MxquZCOgp3MNm5pd4HXNs9Ow1Taq6i8ob6XiepdRCZosgoAstO3+kyvCSBDWSR1cnaCOK1i56lGe+TQ0EkJaCKP79joUjdpqCtlPl8UMWg6upEVdUKrxpVX0UsvCV0Be6pVXsmtP8s0mDIEdIKX.fN8ZFu.FBaxwJUd7bB3W.WeCizC
                  
                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post

                  20

                  Online

                  1.7k

                  Users

                  11.8k

                  Topics

                  102.6k

                  Posts