HISE Logo Forum
    • Categories
    • Register
    • Login

    Convolution no embedding

    Scheduled Pinned Locked Moved General Questions
    16 Posts 7 Posters 930 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.
    • Dan KorneffD
      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
      • ossian1961O
        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
        • LindonL
          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.healeyD
            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

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              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

              LindonL 1 Reply Last reply Reply Quote 0
              • LindonL
                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

                LindonL 1 Reply Last reply Reply Quote 0
                • LindonL
                  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

                  LindonL 1 Reply Last reply Reply Quote 0
                  • LindonL
                    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

                    LindonL 1 Reply Last reply Reply Quote 0
                    • LindonL
                      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
                      • LindonL
                        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 HartC
                          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".

                          LindonL 1 Reply Last reply Reply Quote 0
                          • LindonL
                            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 HartC
                              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

                              20

                              Online

                              1.7k

                              Users

                              11.9k

                              Topics

                              103.6k

                              Posts