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 johnmike

      @d-healey seems like you are using the same loop in both samplers correct? I was looking on my phone so everything was small…are the on the same key as well? What about on different keys with different loops that are different lengths/different BPMs? That’s my situation

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

        @johnmike I didn't try that. I'll give it a go now

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

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

          @johnmike Still appears to work

          Share Anything with pCloud

          With pCloud's unique Download Link feature you can share files with everyone. Click to download. Join pCloud.com and get up to 20GB FREE cloud storage.

          favicon

          pCloud (e.pcloud.link)

          Here's the second file: https://e.pcloud.link/publink/show?code=XZxGk2ZLwkpbCMFaJmA0LLPL0NOQF8KSH1y

          In the video the file on the left (sampler 1) is 120BPM, the one on the right is 100BPM. Also note that the BPM values I set in the settings panel are out by 10BPM (this is a bug on Linux, so 90BPM in the settings panel is actually 100BPM).

          I mapped the samples to different keys in different samples. NumQuarters still set to 0.

          At 100BPM the sample on the right plays back at normal speed and the one on the left is slowed. When I set the tempo to 120BPM the one on the left plays at normal speed and the one on the right is sped up.

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

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

            @d-healey interesting…maybe it’s a Mac bug…I will try again once I get home this evening to see…maybe I need a fresh session…maybe some code or something in my session is messing with it(I don’t see how but maybe…)i did replicate an older session to copy over some code I wanted to use in this project…I’ll start from scratch and see what I come up with

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

              @d-healey soooo upon opening a fresh session with the loops everything is indeed syncing perfect across multiple samplers...but everything falls apart when I open up the old session with the same loops...so that means something maybe in my coding is messing with the tempo sync possibly...im gonna work on systematically deleting things until I figure out the culprit...thanks for testing for me!

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

                @d-healey back again...this time I am having the bpm issue you mentioned...but seems as tho as long as im between 85-134BPM everything plays fine...until I go 135 and above or 85 and below it falls apart...see vid

                Dropbox - File Deleted - Simplify your life

                favicon

                (www.dropbox.com)

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

                  The processorID is not working for the timestretching modes..

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

                    @BWSounds Could you explain in more detail?

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

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

                      @d-healey

                      isn't this suppose to control the modes?

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

                        @BWSounds Ah now I understand. I confirm it doesn't work here either.

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

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

                          @d-healey
                          is it possible code this function?

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

                            @BWSounds

                            This would be the scripting for it

                            const var Sampler1 = Synth.getSampler("Sampler1");
                            
                            inline function onKnob1Control(component, value)
                            {
                            	Sampler1.setAttribute(Sampler1.Timestretching, value);
                            };
                            
                            Content.getComponent("Knob1").setControlCallback(onKnob1Control);
                            

                            But it returns an error that implies the attribute hasn't been setup in the HISE source. I'll take a look and see if it's a simple fix I can do.

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

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

                              @d-healey
                              Ahh ok makes sense now, thank you sir!

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

                                Oh actually I think you're meant to do it through the JSON thingy - https://forum.hise.audio/topic/7303/timestretching-pitchshifting/77?_=1692482537361

                                But then I guess it shouldn't show up as an option in the parameter ID dropdown

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

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

                                  @d-healey
                                  I can script the ratio but the timestretch mode still does nothing.

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

                                    You have to use the names of the modes not a number.

                                    I took this from the docs - https://docs.hise.audio/hise-modules/sound-generators/list/streamingsampler.html#timestretching

                                    HiseSnippet 1325.3ocyX8+aSbCE2WacGIvPCDSZ+xjNEseHHwpRfBLooIBMsEUAkF0qflDBgbuyI0q9rOY6qqYS7+z9SX+Iw+AaO66tbNgnRZFvH+PUdO+9xG+7yedNcfRFS0ZoBEz3nwYTTv0vQiElS5eBgIP6sMJ3awFVJUaTTS7I6KSnGABnsFmQzZZBJHX0mXMMnwZH2m28nsHbhHlVqBgdojESeFKkYp0Nn2SYb9tDHhPBp0uYu8hkh9RtLGf0p3NnLR7ojQzmSrlsBFEr9NILiTEYHFpFrYKYx3nSj+tnv9Wxzri4TqPWTDDnB0n9mv3ICp1xZDJ.Ont.rZQA3V38YIrI5qKDeiagvZO7qAAqbQPp6k.RAdPZsBHcCbTrhkYpWwhmqh2SXnpgDnT6CkBaQqzdEbeIXgvrQJ4T5tJPXhGsePmN2ID9ys+4lMgxs1DdFQEFQRy3TU2veIz0FrwHpoTW6VUK1x5CSvYBZ3vbQrgIEgRwSExi6ZynRxaGKSyjBH22AhKOmd6l+YyFbYLgGJO92rguLX1LbTcC1AY1noaConz7TnkSCN7pVayzDnFlz5NgsbMTPwVYrR1.7RhhQDEhTH4.9iAaeMDHHiaX6bgn3h1qbPBVoYiIvPOWX.dBH4sfkUkR.t8q1asa41ysts06xcdeBmeLzu1d5BBDEuR0ykF5Ah1thRy21Lb1kFNbtqUFK6gw7V1he0E4XaQd5wTk+Qh0PnOa5l20Wrl23hRhmgRwdBl4fLZo7tRdhsoz982uUGUVSsM8kHDL03Z4udYKeDmkPUHFDjuB6JnHG38IWPuXusIFRUXfHBYIipLL6lIXa5YPuRwMoF3so5SMxLmskGi.o2GLomCbEAWM.gFa+xtPR0lw1Rx5NCPorjDNcfTyrkbe1PsglEw9CvTLt6Fc.KE9fOkbds3U5oyGNjctikaHimBsirr8RAxOTvMwuPSCSnCI4bSn9THNvUvSoIGIc1idehCfxRljyIlo4wrD1kKXAqO4gkfP.ahw9agKA4VmKjbaQg3MvCXESalCFWYNXDN6+TfwxQBeMdmgCowlZ.tFd2ecY4+W7z+8Eo+l3HfUh.MNiJoqbXnIth75iwz3rEdZ7.EkKIIE8zUl8281B5bopo09W8bo5woxbwT4pD4GRynDikZ1+NvgG9DkLOaVud2ibMEGo.1UnT3uvABJTqM96w9JoVOD1NtXo8WZPtZjsVUq4P5YTkdZcOOOENuEBJWauxGX4Yz1QNFV79D3d449V6xRmiHtyX3xnSt6Lx2cF46Mi7lyHe+YjevLxOrVtnftOIy1YXehzLT5WYwnzg.Lf.aYOK2hMZRvKzLM8gmoSp4Nb48frHpw.GYZOamyKeV+S0iwVawtL9AlV8kO85TucrQEFiX1SucDmAWaAMVLdSXLnaLRk1ooP1WJjYmHEr3ouj.M8iFQU9XetanGaLvczZM2p2gTNkn8tk+C8dF77QhZ569WpZwk+czy8756vEvMzx6E9e4b6yZa1ENhb0EZD4Gc7t7iK+rV5td4fyP2ue3K7y4qgcT8g1Iy+eA0Ck4V56podXXzXD7bfXp+.xUrCcKj6Xks.JhJRbB+C7obwtUSSsK1sZQTbUnf8V42cOpOXUpv8q9ru7iCyo49szdOW9yBJSIwJ4ahK9wJVrdEmF.kB2+bhF38sxgS9UJXbG2a9SXuIN1dQ3G6hPy2m6tD9bukvmMWBet+R3yCVBed3R3yOcg9XelviyMxzBRRPwfcJZrB1YRi0pn+E7KkaDE
                                    

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

                                    B 1 Reply Last reply Reply Quote 1
                                    • B
                                      BWSounds @d.healey
                                      last edited by

                                      @d-healey
                                      got it, I have something like that earlier but I had numbers instead of the actual names... I appreciate your help

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

                                        @BWSounds Yeah I tried numbers first as well :)

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

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

                                          @d-healey I tried, but it's not working... I tried with Tonality = 0.01, it changes the pitch but impossible to define which one.

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

                                            @Lumi283 I just looked at the docs and I don't think the tonality parameter does what you want - https://docs.hise.audio/hise-modules/sound-generators/list/streamingsampler.html#timestretching

                                            Looks like you can just use any standard pitch modulator as long as timestretching is enabled for the sampler

                                            If the timestretching is enabled, any pitch modulation (using the modulation or root note detune) will not change the pitch using resampling but with the pitch transposition of the timestretch algorithm which retains the duration of the sample.

                                            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

                                            14

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            102.4k

                                            Posts