Timestretching Vs Pitchshifting

I believe there may be a realtime workaround for timestretching that is better than sample offset. When trying to stretch a sample out, I don’t like the sample offset solution because it is too much of a hack and the sound quality often isn’t great.

This leads me to wonder, what is the difference between timestretching in real time vs pitch shifting in real time?

I can’t find any good time stretching VST’s, but I have found some decent free pitch shifters. (Braindoc Pitch-Shifter and Son of a pitch).

For an example – If I have a vocal that is too short, I can play it at a lower note in renoise to slow it down and get the timing right. (Playing a B4 instead of a C5). Then, I can use a VST pitch shifter to bring it back up in real time to the correct pitch, accomplishing real time timestretching.

My question is this – Isn’t this the same as timestretching in real time? Is there a significant quality difference? In the background, isn’t the work being done the exact same?

I’ve been thinking about this and experimenting this weekend. I haven’t used this yet in a song, but tested with a vocal and a breakbeat and it works. The only problem I can think of is if a vocal is too long or short to drop by a full semitone, and therefore needs to use finetuning to get the length right - when shifting the pitch back up it won’t be clean in semi-tones and I’ll need to use fine adjustments which I guess I’d have to work out mathematically (since my ears aren’t good enough at tuning to just do it by ear).

In any case, am I far off with this? Isn’t a good pitch shifter a fully workable replacment for a time stretch, or at the very least a far better solution than just slicing and offsetting a sample?

David

SAMPLE PROPERTIES…

CHECK THE BOX ENTITLED SYNC…

That helps me out a little with time-streching, combo that with a perfectly looped sample and your golden.

Hi Rian, I think what you are referring to is more about fitting a loop into a pattern. I’m more referring to if a vocal is out of key and also out of sync, I believe what I posted above accomplishes the task of timestretching it to fit properly into the sequence, and at the correct pitch.

What I am curious of though, is if I am confused here about the quality or I am missing something. To me pitchshifting and timestretching are really the same thing… do we really need time stretching if you can use pitchshifting with a VST to accomplish the same thing?

Those real-time pitchshifters often sound a little dodgy to me.
My gut feeling is that if I went into a standalone wave editor and stretched a sample, the sample quality would be different than when following your idea.

The offset works best with short samples (the shorter the better). That’s because there are only 255 markers in the offset command. So the markers are obviously closer on short samples. Also, if you track at a higher bpm/lpb it won’t stutter as much cause the markers are activated in order faster.

Yeah, I’m not too crazy about pitchshifters either, I use em here and there, but that’s about it.

What I am curious to know though - is from a conceptual point of view - isn’t a pitch shifter really the same as a timestretcher? Aren’t they doing the exact same thing?

I guess I’m just trying to understand if there is any real difference between pitch shifting and time stretching?

In that example, yes. They both are accomplishing the same thing. As far as which one’s got better quality, I’m not sure. I guess it depends on the pitch shifter (and how you’re using the 09xx command in comparison).

Then again on the opposite side of the spectrum. What about time compression? Playing the note higher as to speed up what’s playing and then bend it down. I think that would bring back two different results. 09xx would play the sample at original quality, but chopping/compressing it at the same time. On the other hand I think the pitch shifter would be like taking a photo, shrinking it down, and then enlarging it resulting in a photo with pixels.

But then again, I might be wrong, I’m still trying to wrap my mind around “32bit floating.”

no it’s not, it’s only that pitch shifting is using time stretching technology, but you can timestretch something without touching pitch at all, you can keep pitch intact while expanding 1second sound to 10 seconds or other way around, when you pitch shift, you are changing pitch and you use timestretch to maintain the length, not the same thing at all imo.

B-complex - pitch shifting can also accomplish the task of stretching without adjusting pitch (in the case of renoise) with just the extra step of playing the note at a higher or lower pitch (to stretch or compress respectively) and then using the pitchshifter to bring it right back into the correct pitch.

I think this is what is happening with a classic timestretcher, except these calculations happen all ‘under the hood’ so to speak.

Then again, I’m not positive about how the algorhythms work, so I’m guessing. The reason I’m going on about this is because I believe the VST format doesn’t support enough information to do real time timestretching. But I think with a bit of math a program like Renoise could take care of those mathamatical things about adjusing the sample pitch, in the same way it has a “sync” option, and then in the background use a pitch shifter to accomplish the same goal of the timestretch.

I’ve been rambling on about this pitch shifting vs. timestretching thing for quite a while, and to be honest it’s not that important of an issue. I think the zoom view for advanced timing and punch-in recording are much more important features that are needed. It’s just that so many people seem to talking about timestretching and using sample offsets – which is dating back to the days of impulse tracker and fast tracker (and maybe longer?). So I thought I would mention maybe this is a better interim solution.

Appreciated, but I feel like it might be more work to get the note to play in sync and then pitch bend up or down instead of just 0900 on the first line, 09FF on the last line, and then just interpolate.

You want a good timestretch vst? use dblue’s timestretch.

His stretch is available in glitch vst, however, the standalone timestretch is awesome when you only need to stretch things, much easier to use with envelopes and stuff.

It is very hard to find but if you want it, pm me, I have it and it’s free to distribute.

Dblue’s timestretch vst is one of my favorite vst of all time.

Quite simple really, in the case of digital audio, the amount of potential amplitude levels for a single sample to lie between -1 and 1 is equal to (2^24)^256 which equals 16777216^256. Basically what this means is that 24bits are integers with an exponent of 8bits (256). In other words…don’t try to wrap your head around it, that’s a big ass number, so just trust that with that kind of bit depth it will be impossible to notice any quantization error in the A/D conversion.

not hard to find at all.
on dblue’s website:

http://illformed.org/data/plugins/dblue_Stretch.zip

Ableton’s timestreching and pitch shifting kick significant ass. They’re very clean sounding and don’t dull transients or add audible artifacts.

To me it does sometimes. When you load a slower loop into a faster tempo (or vise versa).

have you read up on the various warp modes? each one caters to a certain type of sound and if you know what you are doing you usually can get pretty clean results.

Hmmmm, I’ve only used ableton for a few months, but I’ll look further into that. I imagined that warping is warping, and that they all would do pretty much the same thing.

RTFM!!!

lol, jk.

so if you want a quick lesson…

I assume you know where the warp modes are selected, if not, they are to the left of the audio when you double click on an audio file, below the “Warp” button and “Seg BPM”.

5 warp modes:
Beats - Used obviously on beats. Set the transients to a musical value that matches the lowest one that you are working with in that audio file (for example if there is a 16th note high hat groove don’t set it any higher than “1/16”, etc.)
Tones - This is kinda my go to warp mode, this one’s good for most instruments that have more of a sustained sound, like vocals, bass, synth, etc. Adjust the grain size to get a level that sounds good to you, the higher values are going to sound more choppy, the lower values, while smoother, will start to sound artificial. Finding the perfect middle point usually renders pretty good results.
Texture - If you can’t get something decent sounding with Tones, then go next to Texture. Use the same process as you did previously for the grain size value, and now you also have a parameter called “Flux” which basically incorporates fluctuations into the grains, so that the grains aren’t the same size. “Flux” takes away from getting that granular tones that you see arise with anything under 40-50ms (same as those tones we get when we use the retrigger effect on breaks). Play around with this value to hopefully take away some of that artificial sound that you were getting previously with the Tones warp mode.
Repitch - This one is pretty simple, this just follows the old school sampling rule that pitch and time are linked as one. In this mode you aren’t doing any timestretching, so your sounds will always come out in perfect quality, but what happens is as you start to move away from the original tempo of the audio file (for example if the drum loop was originally 120bpm and you are warping the beat to an Ableton Project Tempo of 180bpm) the pitch will either go up or down. One thing to watch out for with this one is that if you have multiple warp markers in the audio file, then you are probably applying different warp amounts to different sections of it (for example drummer was a little late on the snare on beat 4, but was fine in the first half of the bar). This will result in a changing pitch from warp marker to marker.
Complex - This one is good if you are trying to warp multiple instruments in one audio file (for example you are sampling 4 bars from an old soul tune, including drums, bass, guitar, vocals, everything in the song). Simply set to complex, there are no parameters to adjust here. A lot of people run straight to complex for everything, this is NOT a good idea.

I’ve been using Ableton for a long time and i confess that for a long time i didn’t read the manual and ignored the warp modes, but my god man when you actually start warping properly it makes such an amazing difference. It’s the difference between going into surgery with a machete vs going in with a surgical blade. Hope this helps, and maybe saves you some time searching through the manual, but that being said, I highly recommend checking the manuals on ALL the software you use, because it’s amazing some of the things you find out that you can do.

No dude, you’re right. But where can I get the manual? I didn’t buy ableton. And the manuals I saw cost money as well.

you can always get manuals on the net:

http://www.ableton.com/pages/downloads/manuals