HISE Logo Forum
    • Categories
    • Register
    • Login

    confusing convolution

    Scheduled Pinned Locked Moved Scripting
    37 Posts 3 Posters 2.0k 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.
    • ?
      A Former User @d.healey
      last edited by

      @d-healey Wish I was a c++ wizard :(

      d.healeyD 1 Reply Last reply Reply Quote 0
      • d.healeyD
        d.healey @A Former User
        last edited by

        @iamlamprey You can be, if you start now and work at it for 5+ years :)

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

        1 Reply Last reply Reply Quote 3
        • ?
          A Former User
          last edited by

          bumpy :)

          1 Reply Last reply Reply Quote 0
          • ?
            A Former User
            last edited by

            Still need help with this... any new Commit I get stuck in a "The Sample directory could not be located" loop.

            5057870f-34a2-41ea-9b09-caac7f0aad6d-image.png

            And any older commit past Master looks for audiofiles in the Expansion folder, despite me using {PROJECT_FOLDER} wild card.

            This is the last thing bottlenecking my MacOS release, I haven't changed a line of code since moving from Master to Develop

            d.healeyD 1 Reply Last reply Reply Quote 0
            • d.healeyD
              d.healey @A Former User
              last edited by

              @iamlamprey said in confusing convolution:

              And any older commit past Master looks for audiofiles in the Expansion folder, despite me using {PROJECT_FOLDER} wild card.

              So this issue is fixed now?

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

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @d.healey
                last edited by

                @d-healey Sorry, any newer* commit

                Anything on Develop branch is either looking for the audiofiles in the Expansion's subfolders, or its not embedding them in the first place

                d.healeyD 1 Reply Last reply Reply Quote 1
                • ?
                  A Former User
                  last edited by

                  I might make a barebones expansion project and see if it can do what I need it to

                  1 Reply Last reply Reply Quote 0
                  • d.healeyD
                    d.healey @A Former User
                    last edited by

                    @iamlamprey said in confusing convolution:

                    @d-healey Sorry, any newer* commit

                    Yeah that sounds similar to the issue I'm having.

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

                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User
                      last edited by

                      Yep confirmed it with a barebones version:

                      1. Convolution works fine without an expansion loaded.
                      2. After installing & loading an expansion, it keeps the IR loaded (still works).
                      3. If you try to select a new IR, the convolution stops (I assume because it's looking in the wrong folder).
                      4. If you go back to no expansion loaded, it works again and you can switch files all you want.

                      @Christoph-Hart could you please take a look at this when you get the chance? I think something's wrong with the {PROJECT_FOLDER} wildcard or something :)

                      1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User
                        last edited by

                        bump, could we please get some acknowledgement that something's up with expansions? seen several threads about it now and this is the last thing i need working before i can push my mac release

                        1 Reply Last reply Reply Quote 1
                        • ?
                          A Former User
                          last edited by

                          bump, officially reached 1 month of my convolution not being usable

                          Christoph HartC 1 Reply Last reply Reply Quote 0
                          • Christoph HartC
                            Christoph Hart @A Former User
                            last edited by

                            It's fixed now, it was indeed looking in the audio files folder of the expansion.

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

                              @christoph-hart Does this solve the includes issue with full expansions?

                              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 I don't think so but if you can make a minimal example, I'll take a look (not sure if you did that already).

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

                                  @christoph-hart said in confusing convolution:

                                  not sure if you did that already

                                  Me neither :) but I shall whip one up very soon.

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

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

                                    @Christoph-Hart Here's the full expansion project and also the test expansion with the included scripts. I notice that the scripts are inlined when the expansion is loaded. I'm not sure if the issue is caused when the hxi is generated or when the expansion is loaded.

                                    I also noticed the using Engine.loadFontAs("{PROJECT_FOLDER}FontName.ttf", "pretty-name"); causes issue too because once the expansion loads it's still looking in the PROJECT_FOLDER instead of the expansion folder. Even if I include the font in the shell's images folder it won't work. I assume the best way to handle this would be to have the hxi exporter replace PROJECT_FOLDER with EXP::EXPNAME ? That way it would work while developing the expansion but also work when loaded as an expansion...

                                    I haven't tested but I think this would affect anything that's using PROJECT_FOLDER paths, like additional source code, sample maps, and images.

                                    Test Exp1.zip
                                    Full Expansion Test.zip

                                    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 Oh wow, that might be the commit with the weirdest looking fix in the history of HISE...

                                      Link Preview Image
                                      - fix scripts in subfolders not being included when exporting a full … · christophhart/HISE@2bdd95a

                                      The open source framework for sample based instruments - - fix scripts in subfolders not being included when exporting a full … · christophhart/HISE@2bdd95a

                                      favicon

                                      GitHub (github.com)

                                      Like you see the code change and immediately know, "yeah, that makes total sense".

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

                                        @christoph-hart Haha, you gotta love regex :D

                                        Thanks, I'll give it a try this evening.

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

                                        1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User @Christoph Hart
                                          last edited by

                                          @christoph-hart Thank you 😊

                                          1 Reply Last reply Reply Quote 0
                                          • ?
                                            A Former User
                                            last edited by A Former User

                                            @Christoph-Hart im still getting this problem when using the later commits:

                                            6605d360-891e-4297-a4cc-be7a92f46971-image.png

                                            Same expansions from my current working version, same code too.

                                            I'm thinking the problem might be similar? Expansion Wildcards doing some strange stuff? If I remove {EXP::Blackout} it removes the overlay, but obviously the samples aren't loaded. I feel like it might be looking in the appdata folder, not where the Samples are installed to.

                                            const var expHandler = Engine.createExpansionHandler();
                                            
                                            var currentExpansion; 
                                            
                                            const var expansionNames = [];
                                            
                                            expansionNames.push("No Expansion");
                                            
                                            for (e in expHandler.getExpansionList())
                                                expansionNames.push(e.getProperties().Name);
                                            
                                            for (i=1; i<expansionNames.length; i++)
                                            {
                                                expButton[i].data.expansionName = expansionNames[i];
                                                expButton[i].set("allowCallbacks", "Clicks & Hover");
                                                
                                                expButton[i].setLoadingCallback(function(isPreloading)
                                                {
                                                    if(isPreloading)
                                                    {       
                                                        this.data.preload = true;
                                                    }
                                                    else
                                                    {       
                                                        this.data.preload = false;
                                                    }
                                                });      
                                                
                                                expButton[i].setMouseCallback(function(event)
                                                {
                                                    if (event.clicked)
                                                    {
                                                        //Here we add the safety check.
                                                        
                                                        if (this.data.preload == false)
                                                        {
                                                            expHandler.setCurrentExpansion(this.data.expansionName);   
                                                            load+this.data.expansionName;
                                                        }
                                                    }
                                                });    
                                            };
                                            
                                            currentExpansion = expHandler.getCurrentExpansion();
                                            currentExpansion = currentExpansion.Name;
                                            
                                            var expansionDirectory = FileSystem.getFolder(FileSystem.Samples);
                                            var selectExpansionFile = "";
                                            reg hr;
                                            
                                            expHandler.setAllowedExpansionTypes([expHandler.FileBased, 
                                                                                 expHandler.Intermediate, 
                                                                                 expHandler.Encrypted]);
                                            
                                            //Install Single
                                            
                                            var installDirectory = expansionDirectory;
                                            
                                            inline function onButton_InstallLibraryControl(component, value)
                                            {
                                                if (value)
                                                {         
                                                    FileSystem.browse(installDirectory, false, "", function(result) 
                                                    {
                                                        hr = result;
                                                        expHandler.installExpansionFromPackage(hr,FileSystem.getFolder(FileSystem.Samples));
                                                        expHandler.refreshExpansions(); 
                                                        installDirectory = result.getParentDirectory();
                                                    });
                                                };
                                            };
                                            
                                            Content.getComponent("Button_InstallLibrary").setControlCallback(onButton_InstallLibraryControl);
                                            
                                            //Blackout
                                            
                                            inline function loadBlackout()
                                            {
                                                
                                                    //Setting Up Samplers
                                                clearSamplers();
                                                
                                                SamplerA.asSampler().loadSampleMap("{EXP::Blackout}Blackout_SampleMap");
                                            };
                                            
                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            22

                                            Online

                                            1.8k

                                            Users

                                            12.0k

                                            Topics

                                            104.1k

                                            Posts