HISE Logo Forum
    • Categories
    • Register
    • Login

    Timestretching/Pitchshifting

    Scheduled Pinned Locked Moved General Questions
    125 Posts 14 Posters 11.5k 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
      johnmike @d.healey
      last edited by

      @d-healey interesting...will try this

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

        @d-healey can I assign an interface slider to those round robin groups tho? I also would love to be able to send the groups to effects buses as well tho...individually...and multi-outs was my end goal as well...which is why I had multiple samplers setup for proper routing of volumes, FX, and outs

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

          @johnmike I've never used it, but I don't see why you could use a slider to control that value.

          Groups can't be routed though (at least not yet, it's on my wishlist), so you're not going to be able to send each set of samples to different effects.

          I think you're better off nagging Christoph to solve the bug with multiple samplers going out of sync. Perhaps provide a snippet or demo project that demonstrates the problem.

          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

            Have you supplied a valid NumQuarters property to each sampler?

            J 4 Replies Last reply Reply Quote 0
            • J
              johnmike @Christoph Hart
              last edited by

              @Christoph-Hart I've tried them at different values...same results...ive changed all of the numquaters to 0 ive tried 2,4,8 etc etc...if all the samples are in the same sampler and the numquarters are set to 0 everything plays and syncs fine...but when I mix multiple samplers it falls apart...working on a video now

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

                @Christoph-Hart here's a vid with time stretching the loops all in 1 sampler...numquarters at 0
                https://www.dropbox.com/scl/fi/55825x1sgxeqm743uvjqm/Timestrectching-1.mov?rlkey=gucjhshwrifahs630dda12zmv&dl=0

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

                  @Christoph-Hart and here's a vid with the kicks moved to a different sampler...numQ's at 0,4,8 just playing around with it...but as you can see they slowly drift out of time with the click...

                  Dropbox - File Deleted - Simplify your life

                  favicon

                  (www.dropbox.com)

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

                    sorry for terrible audio it's coming from the built in mic...but should be loud enough to hear what's going on

                    1 Reply Last reply Reply Quote 0
                    • B
                      BWSounds
                      last edited by

                      The Timestretching/Pitchshifting is nice, but causes a cpu spike on my set up... is this happening to anyone else?

                      Only asking so I can know how to proceed with the project im working on.
                      thx

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        Sawer @BWSounds
                        last edited by

                        @BWSounds Same here... Cpu spikes to 60% sometimes. Only tried on FL studio tho. Have not tried on mac yet.

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

                          @Sawer if you're using the SkipLatency parameter then yes, there will be spikes when you start voices, otherwise the CPU usage is high but not unreasonably high.

                          1 Reply Last reply Reply Quote 0
                          • L
                            Lumi283
                            last edited by

                            Hi! I have a problem with the timestretching. I have updated my HISE version(3.6.0) but the functions Sampler.getTimestretchOptions();
                            Sampler0.setTimestretchOptions(obj);
                            Sampler0.setTimestretchRatio(0.7);

                            are throwing this error message:
                            Interface:! Ui_samples.js (13): function not found {SW50ZXJmYWNlfFVpX3NhbXBsZXMuanN8NDM2fDEzfDQ3}
                            Could someone help me to solve this problem? Thank you

                            // Get sampler
                            var Sampler0 = Synth.getChildSynth("Sampler0");
                            
                            // fetch the current state
                            var obj = Sampler0.getTimestretchOptions();
                            
                            // print out all properties
                            Console.print(trace(obj));
                            
                            // Apply your changed
                            obj.SkipLatency = true;
                            obj.Tonality = 2.0;
                            
                            // Update the options
                            Sampler0.setTimestretchOptions(obj);
                            
                            //Set ratio
                            Sampler0.setTimestretchRatio(0.7);
                            
                            d.healeyD 1 Reply Last reply Reply Quote 0
                            • d.healeyD
                              d.healey @Lumi283
                              last edited by d.healey

                              @Lumi283 The time stretch functions are part of the Sampler class, your reference is of the ChildSynth type. You either need to use Synth.getSampler() instead or use Sampler0.asSampler...

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

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

                                @d-healey Thank you it's working!
                                Now when i want to channge the tonality nothing happens.... But the tonality was changed in the JSON.
                                Interface: {

                                //Script
                                var SamplerX = Synth.getSampler("Sampler0");
                                var obj = SamplerX.getTimestretchOptions();
                                
                                obj.SkipLatency = false;
                                obj.Tonality = 6.0;
                                
                                SamplerX.setTimestretchOptions(obj);
                                
                                Console.print(trace(obj));
                                
                                //Console
                                Interface: {
                                  "Tonality": 6.0,
                                  "SkipLatency": 0,
                                  "Mode": "VoiceStart",
                                  "NumQuarters": 0.0,
                                  "PreferredEngine": ""
                                }
                                

                                Any idea ?

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

                                  @Lumi283 tonality is between 0 and 1.

                                  L J 2 Replies Last reply Reply Quote 0
                                  • L
                                    Lumi283 @Christoph Hart
                                    last edited by

                                    @Christoph-Hart
                                    Okay, I understand, and what values correspond to semitones?

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

                                      @Christoph-Hart any luck with time stretching across multiple samplers? or is it something im doing wrong?

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

                                        @johnmike I‘m on vacation at the moment so I can‘t check stuff with actual audio but I‘ll take a look when I get back.

                                        ulrikU J 2 Replies Last reply Reply Quote 0
                                        • d.healeyD
                                          d.healey @Lumi283
                                          last edited by

                                          @Lumi283 Try dividing 1 by 12 (if it's linear, I haven't tested it).

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

                                          L 1 Reply Last reply Reply Quote 0
                                          • ulrikU
                                            ulrik @Christoph Hart
                                            last edited by

                                            @Christoph-Hart said in Timestretching/Pitchshifting:

                                            @johnmike I‘m on vacation at the moment

                                            What, do you also take time off sometimes, how will we manage?

                                            Hise Develop branch
                                            MacOs 15.3.1, Xcode 16.2
                                            http://musikboden.se

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

                                            17

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            102.4k

                                            Posts