HISE Logo Forum
    • Categories
    • Register
    • Login

    Export to HLAC monolith unsupported samplerate error

    Scheduled Pinned Locked Moved General Questions
    18 Posts 4 Posters 927 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.
    • J
      Jerems134 @d.healey
      last edited by

      This post is deleted!
      d.healeyD 1 Reply Last reply Reply Quote 0
      • d.healeyD
        d.healey @Jerems134
        last edited by

        @Jerems134 I'll post a script in a little while

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

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

          Well I can't get SoX or FFMPEG to retain the loops unfortunately, but it could just be me using the wrong commands. I've asked some others to see if they know a solution for that.

          In the meantime you could try Reaper, it can definitely export loop points and it can do batch export.

          There are a few ways to do it, first I'd try the batch file convert tool, if that doesn't work I'd just import all of your samples on to a single track, extract the loop points as markers and then do a batch export (with embedded markers enabled).

          I show this second technique in this video:
          https://youtu.be/90SmO_dMIJs?t=993

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

          J 1 Reply Last reply Reply Quote 1
          • J
            Jerems134 @d.healey
            last edited by

            @d-healey Ok thank for taking time to find a solution. Adobe media encoder keeps the original metadata normally, but not the loop start/end too.
            I 'll share the wav files with my plugin, it's too complicated to use SoX with the terminal or import/export in an DAW with the amount of samples I 've to convert.
            Thanks for all things you do for Hise community, i follow you on Patreon.

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

              @Jerems134

              it's too complicated to use SoX with the terminal

              Just run this script and it will convert a whole folder of wavs to 48k (no loop points yet though).

              to48khz.zip

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

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

                Another option is to "fix" the loop points inside HISE. Your basic samplerate is 24kHz when you've imported the samples and created the samplemaps, but now you've converted it to 48kHz. This means that every sample index is just being multiplied by 2, so if your loop start was at sample index 1000, it now needs to be at 2000.

                Just drop this in a script processor that sits in a Sampler and it will operate on the currently loaded sample map (Be aware that if you paste this in the onInit callback it will get executed right away).

                /** Select all samples in the current samplemap
                    ".*" is Regex and means everything.
                */
                const var allSamples = Sampler.createSelection(".*");
                
                /** You'll get an array of all samples, which you can iterate */
                for(s in allSamples)
                {
                    /** Just multiply all sample properties with 2 */
                    s.set(Sampler.LoopStart, parseInt(s.get(Sampler.LoopStart)) * 2);
                    s.set(Sampler.LoopEnd, parseInt(s.get(Sampler.LoopEnd)) * 2);
                    s.set(Sampler.SampleEnd, parseInt(s.get(Sampler.SampleEnd)) * 2);
                }
                
                /** This needs to be called after a sample manipulation op
                    in order to refresh the UI. */
                Sampler.refreshInterface();
                
                d.healeyD 1 Reply Last reply Reply Quote 3
                • d.healeyD
                  d.healey @Christoph Hart
                  last edited by

                  @Christoph-Hart Does this just need to be ran once, and then the sample map manually resaved?

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

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

                    yup, it's just a shortcut to selecting each sample and typing in the values by hand.

                    DanHD 1 Reply Last reply Reply Quote 2
                    • DanHD
                      DanH @Christoph Hart
                      last edited by

                      @Christoph-Hart Would it be possible to use some of this code to add controls to the user UI of the plugin itself and change the loop start and end points?

                      DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                      https://dhplugins.com/ | https://dcbreaks.com/
                      London, UK

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

                        Signet is the way to go - https://github.com/SamWindell/Signet/

                        I just tested sample rate conversion and it does preserve the loop points.

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

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

                        30

                        Online

                        1.7k

                        Users

                        11.8k

                        Topics

                        102.7k

                        Posts