HISE Logo Forum
    • Categories
    • Register
    • Login

    Changing pitch...

    Scheduled Pinned Locked Moved General Questions
    28 Posts 9 Posters 2.0k 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.
    • A
      arminh
      last edited by

      It's possible with the new version of hise? :D

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

        Does anybody know if FX pitch shifting is possible with the new scriptnode-codegen-rewrite (aka develop) at all?

        ? 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @LeeC
          last edited by

          @LeeC It might be possible with the FFT stuff but I don't think it's ready yet. I think the Granulator also has realtime pitch shifting, apparently you can copy the code of it into a SNEX node to see how it works, i just can't find the code for it :P

          1 Reply Last reply Reply Quote 0
          • ?
            A Former User
            last edited by

            Okay found the granulator code... HISE/hi_modules/nodes/HiseNodeFactory.cpp

            now to implement :)

            ? 1 Reply Last reply Reply Quote 0
            • L
              LeeC
              last edited by LeeC

              Interesting stuff @iamlamprey. Just noticed the pitch shift control in the Granular node that you mentioned actually.
              Would be great if it could be used independently to shift audio up and down ⭐

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @LeeC
                last edited by

                @LeeC There's things like:

                ExternalData ed;
                	
                StereoSample nextSample;
                

                and then nextSample.getPitchFactor();

                No idea how to make use of them, or if you can even do it realtime yet 😲

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

                  No this all works on audio samples for synthesis - for real time pitch shifting you will have to implement a varying delay line.

                  1 Reply Last reply Reply Quote 0
                  • ?
                    A Former User
                    last edited by

                    damn 😂

                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @A Former User
                      last edited by

                      @iamlamprey said in Changing pitch...:

                      Okay found the granulator code... HISE/hi_modules/nodes/HiseNodeFactory.cpp

                      now to implement :)
                      I saw your post yesterday. I couldn’t find it in the source code then! Great find!

                      ? 1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User @A Former User
                        last edited by

                        @UrsBollhalder I'm actually really dumb and forgot I could just search for it in Visual Studio 😂

                        1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User
                          last edited by

                          @Christoph-Hart do we need SNEX to make a varying delay line? or can we do it with fix_delay and some node wizardry?

                          1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User
                            last edited by

                            ab8640f8-7380-4844-a9cc-d4facf0da701-image.png

                            Sounds like dBlue glitch lol

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

                              Yeah, you will need a varying delay line - the fix_delay will not work because it fades between different fade times to avoid the Doppler effect, but you want precisely that effect for the pitch change.

                              Also you will need to use two parallel signal chains and fade between them in an intelligent manner in order to avoid the artifacts when going from the end of the variable delay line to the start. I've seen a matlab graph somewhere.

                              But this is actually a good idea for a tutorial project since it covers many things that you need for DSP development, so I might add it to the list of examples in the docs sometime.

                              ? ustkU 2 Replies Last reply Reply Quote 2
                              • ?
                                A Former User @Christoph Hart
                                last edited by

                                @Christoph-Hart That would be great! Is the FFT stuff for SNEX added yet? I think FFT and Pitch Shifting are among the most requested things that I've seen on the forum

                                1 Reply Last reply Reply Quote 2
                                • NatanN
                                  Natan @A Former User
                                  last edited by

                                  @iamlamprey Mate, What is The Instructor For The Above Example??
                                  The Screen is Cutted,

                                  ? 1 Reply Last reply Reply Quote 0
                                  • ?
                                    A Former User @Natan
                                    last edited by

                                    @Natan You can click the video title to open it in a tab to fullscreen. I don't have SNEX workbench atm cause I formatted

                                    chain.png

                                    Note: this is not even close to a pitch shifter, as shown in the video. It is kind of a fun glitchy thing to play around with but

                                    NatanN 1 Reply Last reply Reply Quote 1
                                    • NatanN
                                      Natan @A Former User
                                      last edited by

                                      @iamlamprey ah Thank You 👏
                                      It is Made On Snex? right?

                                      But How i can Build Snex?
                                      Where to Download?

                                      ? 1 Reply Last reply Reply Quote 0
                                      • ?
                                        A Former User @Natan
                                        last edited by

                                        @Natan develop branch, then in HISE->Tools->SNEX workbench

                                        NatanN 1 Reply Last reply Reply Quote 1
                                        • NatanN
                                          Natan @A Former User
                                          last edited by

                                          @iamlamprey 👏 Thanks Man👏 Will Check In A sec 👏😍

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

                                            @Christoph-Hart said in Changing pitch...:

                                            Also you will need to use two parallel signal chains and fade between them in an intelligent manner in order to avoid the artifacts when going from the end of the variable delay line to the start. I've seen a matlab graph somewhere.

                                            I've done this about a year ago but I never succeeded in Hise, always having artifacts despite the crossfades. I'm 99% sure my math was correct. But even when the crossfades reached -100 I still had artifacts from the delay nodes when responding to the ramp's edge, and no crossfade could cut them... I might try later in the new scriptnode ;)

                                            Can't help pressing F5 in the forum...

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

                                            27

                                            Online

                                            1.8k

                                            Users

                                            12.0k

                                            Topics

                                            104.3k

                                            Posts