Forum

    • Register
    • Login
    • Search
    • Categories

    Convolution no embedding

    General Questions
    7
    16
    605
    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.
    • Jay
      Jay last edited by

      The Convolution reverb is not embedding the AudioFiles impulses response into the plugin

      Joansi Villalona

      orange 1 Reply Last reply Reply Quote 0
      • orange
        orange @Jay last edited by

        @Jay Activate the "Embed Audio Files" in the Preferences menu. Then compile the plugin, it will work. Also be sure that your IR and audio files in the "Audio" folder of your HISE project location.

        develop Branch / XCode 13.1
        macOS Monterey / M1 Max

        1 Reply Last reply Reply Quote 0
        • Jay
          Jay last edited by Jay

          it is activate it and the IR are in the audio folder.

          Screen Shot 2019-01-12 at 5.49.38 PM.png

          Joansi Villalona

          Dan Korneff ossian1961 2 Replies Last reply Reply Quote 0
          • Dan Korneff
            Dan Korneff @Jay last edited by

            @Jay I think this was discussed recently. Check the search real quick.

            Dan Korneff - Producer / Mixer / Audio Nerd

            1 Reply Last reply Reply Quote 0
            • ossian1961
              ossian1961 @Jay last edited by

              @Jay said in Convolution no embedding:

              it is activate it and the IR are in the audio folder.

              I had same error with graphic files I changed on work in progress and @Christoph-Hart replied me to click on the command "Export Pooled Files to Binary Resources" in the Export voice menu and it works.

              https://www.kontakthub.com/label/Imagik-Sound/
              https://mirtklaar.bandcamp.com/

              1 Reply Last reply Reply Quote 0
              • Lindon
                Lindon last edited by

                OK I'm now having this problem with IR's.....

                I've set "Embed Audio Files" to ON in the preferences,

                and I've pressed: "Export Pooled Files to Binary Resources"

                I note HISE telling me this in the console when I do this step;

                Retrovolt09: Writing {PROJECT_FOLDER}Bottle Hall.wav ... 0 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Conic Long Echo Hall.wav ... 45 kB
                Retrovolt09: Writing {PROJECT_FOLDER}CUSTOM spatial plate.WAV ... 333 kB
                Retrovolt09: Writing {PROJECT_FOLDER}CUSTOM_dream hall.WAV ... 428 kB
                Retrovolt09: Writing {PROJECT_FOLDER}CUSTOM_gen rhall.WAV ... 677 kB
                Retrovolt09: Writing {PROJECT_FOLDER}CUSTOM_museum hall.WAV ... 864 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Deep Space.wav ... 972 kB
                Retrovolt09: Writing {PROJECT_FOLDER}DRUMSbig drums.WAV ... 987 kB
                Retrovolt09: Writing {PROJECT_FOLDER}DRUMSshort plate.WAV ... 1101 kB
                Retrovolt09: Writing {PROJECT_FOLDER}French 18th Century Salon.wav ... 1172 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Greek 7 Echo Hall.wav ... 1254 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR gold plate.WAV ... 1344 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR plate4brass.WAV ... 1515 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR rock plate.WAV ... 1734 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR_guitar cave.WAV ... 1945 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR_horns hall.WAV ... 2112 kB
                Retrovolt09: Writing {PROJECT_FOLDER}INSTR_short reverse.WAV ... 2210 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Large Long Echo Hall.wav ... 2278 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Large Wide Echo Hall.wav ... 2564 kB
                Retrovolt09: Writing {PROJECT_FOLDER}LIVE great plate.WAV ... 2839 kB
                Retrovolt09: Writing {PROJECT_FOLDER}LIVE hot plate.WAV ... 3069 kB
                Retrovolt09: Writing {PROJECT_FOLDER}ORCH_concert hall.WAV ... 3346 kB
                Retrovolt09: Writing {PROJECT_FOLDER}ORCH_deep blue.WAV ... 3468 kB
                Retrovolt09: Writing {PROJECT_FOLDER}ORCH_m hall+stage.WAV ... 3698 kB
                Retrovolt09: Writing {PROJECT_FOLDER}ORCH_small church.WAV ... 3775 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Scala Milan Opera Hall.wav ... 3967 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Small Drum Room.wav ... 4077 kB
                Retrovolt09: Writing {PROJECT_FOLDER}Small Prehistoric Cave.wav ... 4140 kB
                Retrovolt09: Writing {PROJECT_FOLDER}St Nicolaes Church.wav ... 4185 kB
                Retrovolt09: Writing {PROJECT_FOLDER}VOC vocal plate2.WAV ... 4522 kB
                Retrovolt09: Writing {PROJECT_FOLDER}VOC_good ol' verb.WAV ... 4678 kB
                Retrovolt09: Writing {PROJECT_FOLDER}VOC_vocal hall2.WAV ... 4837 kB
                Retrovolt09: Writing {PROJECT_FOLDER}VOC_vocal magic.WAV ... 4990 kB

                So they all appear to be done correctly yet:

                I've reinstalled the program too (tho I cant see how that would help things..) so I', So now I'm a bit stuck, and this is getting urgent...

                All help appreciated.

                HISE Development for hire.
                www.channelrobot.com

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

                  You need to have Engine.loadAudioFilesIntoPool(); in on init.

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

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

                    @d-healey -- oh LOONG since had that:

                    Engine.loadAudioFilesIntoPool();

                    -- in dfact I think theres a compile check these days that issues a warning if you dont have this..

                    HISE Development for hire.
                    www.channelrobot.com

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

                      @Lindon Right well Now the problem is:

                      The stand alone starts OK - and runs fine - except:

                      The reverb isnt working at all,

                      Still... when I select a new IR then SOME of them DONT report an error - tho they are not having any effect in the instrument, and SOME of them report "not embeded properly"

                      Heres my combo box code:

                      inline function onReverbMenuControl(component, value)
                      {
                      	//Change the IRs..
                      	switch(value){
                               case 1:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Bottle Hall.wav");
                                          break;
                               case 2:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Conic Long Echo Hall.wav");
                                          break;
                               case 3:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}CUSTOM spatial plate.wav");
                                          break;
                               case 4:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}CUSTOM_dream hall.wav");
                                          break;
                               case 5:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}CUSTOM_gen rhall.wav");
                                          break;
                               case 6:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}CUSTOM_museum hall.wav");
                                          break;
                               case 7:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Deep Space.wav");
                                          break;
                               case 8:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}DRUMSbig drums.wav");
                                          break;
                               case 9:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}DRUMSshort plate.wav");
                                          break;
                               case 10:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}French 18th Century Salon.wav");
                                          break;
                               case 11:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Greek 7 Echo Hall.wav");
                                          break;
                               case 12:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR gold plate.wav");
                                          break;
                               case 13:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR plate4brass.wav");
                                          break;
                               case 14:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR rock plate.wav");
                                          break;
                               case 15:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR_guitar cave.wav");
                                          break;
                               case 16:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR_horns hall.wav");
                                          break;
                               case 17:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}INSTR_short reverse.wav");
                                          break;
                               case 18:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Large Long Echo Hall.wav");
                                          break;
                               case 19:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Large Wide Echo Hall.wav");
                                          break;
                               case 20:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}LIVE great plate.wav");
                                          break;
                               case 21:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}LIVE hot plate.wav");
                                          break;
                               case 22:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}ORCH_concert hall.wav");
                                          break;
                               case 23:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}ORCH_deep blue.wav");
                                          break;
                               case 24:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}ORCH_m hall+stage.wav");
                                          break;
                               case 25:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}ORCH_small church.wav");
                                          break;
                               case 26:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Scala Milan Opera Hall.wav");
                                          break;
                               case 27:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Small Drum Room.wav");
                                          break;
                               case 28:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}Small Prehistoric Cave.wav");
                                          break;
                               case 29:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}St Nicolaes Church.wav");
                                          break;
                               case 30:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}VOC vocal plate2.wav");
                                          break;
                               case 31:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}VOC_good ol' verb.wav");
                                          break;
                               case 32:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}VOC_vocal hall2.wav");
                                          break;
                               case 33:
                                          ConvolutionReverb1.setFile("{PROJECT_FOLDER}VOC_vocal magic.wav");
                                          break;
                      	};
                      	
                      };
                      
                      Content.getComponent("ReverbMenu").setControlCallback(onReverbMenuControl);
                      

                      HISE Development for hire.
                      www.channelrobot.com

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

                        @Lindon ....and NOW.....

                        it seems some are loading and working correctly and some are reporting "not embeded "

                        HISE Development for hire.
                        www.channelrobot.com

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

                          @Lindon perhaps its something IN the Audio file that is stopping it embeding properly - whats the format requirements for IRs?

                          HISE Development for hire.
                          www.channelrobot.com

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

                            @Lindon swell they are all 16 bit 44.1 Khz sample rate so thats not it... any help?

                            HISE Development for hire.
                            www.channelrobot.com

                            1 Reply Last reply Reply Quote 0
                            • Lindon
                              Lindon last edited by

                              Right, found it:

                              So for those in a similar situation:

                              Here's the name of one of my IR files:

                              LIVE hot plate.WAV

                              Here's the piece of code that loads it:

                              ConvolutionReverb1.setFile("{PROJECT_FOLDER}LIVE hot plate.wav");
                              
                              • this loads and plays nicely in HISE, but will not load in a compiled app...

                              Perhaps you can quickly spot where I've made a mistake...It took me all morning...

                              • yes this

                              LIVE hot plate.WAV

                              is NOT this:

                              LIVE hot plate.wav

                              --- as far as the HISE application is concerned the case of the file extension is unimportant, but as far as a compiled app is concerned - it IS important.

                              So leaving my file named:

                              LIVE hot plate.WAV

                              and changing my code to read:

                              ConvolutionReverb1.setFile("{PROJECT_FOLDER}LIVE hot plate.WAV");
                              

                              Means it all works correctly.

                              So my request:

                              @Christoph-Hart - can we please have case sensitivity parity between HISE and the things made in HISE.....

                              HISE Development for hire.
                              www.channelrobot.com

                              1 Reply Last reply Reply Quote 1
                              • Christoph Hart
                                Christoph Hart last edited by

                                Hmm, the problem is that I am just passing the file path to the OS methods and Windows doesn't care about uppercase, but macOS does (in a compiled plugin it is case sensitive on both OS because it uses the path as normal string key to a hash map). I have no idea how to validate the case sensitivity for file paths on Windows without bad hacks, so this is a classic case of "watch out during development".

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

                                  @Christoph-Hart OK, understood, but perhaps we could have a warning?

                                  HISE Development for hire.
                                  www.channelrobot.com

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

                                    but how should I do that? You pass a string to a OS call and get a file handle back. I would have to then query the filename from the handle and match it with the input, which is really hacky and adds performance overhead for 0.00001% of all cases where somebody makes a case mistake.

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

                                    19
                                    Online

                                    1.1k
                                    Users

                                    6.8k
                                    Topics

                                    62.3k
                                    Posts