Really easy time stretching on the Digitakt

Thanks for sharing these techniques!

I had issues the first video (just with one track) with popping sounds, especially in the bass register. Is this an unavoidable issue with this type of time-stretching? No amount of fade in really made it sound palatable. Any advice here?

Can you please explain what difference 8 tracks (most recent video) makes? I guess that you get a lot of off grid granules. What is the benefit of that?

Again I had glitchy/popping issues, especially in bass drums. Is that normal? I can high pass to clear out the bass but at that point loses a lot of the character.

Any advice welcome, can’t help but feel like I am doing it wrong somehow even after following the instructions a few times. Is this technique better suited for certain types of samples?

1 Like

@sezare56 Using an lfo to modulate sample slot is confusing tbh because the lfo depth has floating point precision but the thing it’s modulating is an integer. To be honest I haven’t fully figured out the intricacies of how it works. For more predictable results you might try a square or tri wave. Also I’m pretty sure lfo depth exactly on integer values complicates things, eg 0.99 will behave differently than 1.0 (I think).

@memac It’s hard to prescribe an exact solution because there’s so many factors at play, but in my experience even the most clicky and poppy samples can be made smooth for a wide range of pitch shifting and stretching by using multiple tracks like in my latest video. Longish attack times help too.

Using just one track is inherently a bit glitchy because instead of cross fading between grains like most time stretching literature describes the amp envelope simply retriggers. Hope that helps

3 Likes

The weird thing I notice is that it doesn’t seem equally bipolar, as if neutral value was below the actual value, between 2 slots.

3 Likes

Thanks!

Getting some improved results. I see now that that longer attack and decay times can be used with multi track as it acts as a kind of cross-fade between grains.

I also have to remember “ctrl-all” for all adjustments. It just takes one lapse of attention to get out of sync. This was contributing to my issues.

Still get some chopping with sustained bass but not so bad now so I can filter it out without losing half the sound.

I definitely will be adding this setup to a pattern in my Bank H toolkit.

1 Like

@sezare56 someone at elektron would know better than me but I’m curious as well.

@memac I have a hard time NOT holding down control all these days :laughing: sometimes I’m like wtf is going on?? Oh wait… muscle memory is a double edged sword

2 Likes

Not sure if this is the right place to post this or if I should post on another timestretching post or in “Quantising” LFO on sample start to play slices which is exactly what I was looking for but that’s quite an old thread.

I’ve been experimenting quite a lot about random slicing over a single loop sample and I’ve came out with a kind of solution for random slices while using a single entry in the sample pool.

The main idea is to use both LFOs to modulate the sample start, if both are set to square and trigger free, with different frequencies, multipliers and depths we can jump pseudo-ramdomly to 4 places in the sample. If we’re using a well trimmeed loop and set depth to an exact division of 120 the jumps will be at an exact beat position. Sample start value must be set so that start - abs(LFO1 depth) - abs(LFO2 depth) >= 0.

Then, this can be used in conjunction with the now classical timestretch approach for the Digitakt. If we use the first LFO to achieve the timestretching, we only have 2 random positions but with conditional triggers and p-locking the 2nd LFO depth we can get interesting results.

2 Likes

Seems interesting. Could you give DT pages settings instead of math? :content:

Still wonder how it can be randomed with square values…Trig conditions on speed, ok, but what about random depth?

As LFO square wave is bipolar, the value for the starting point of the sample playback will be the sample start plus the LFO depth value or minus the depth value and since negative values are considered as zero we need to offset the sample start.

It is not random, but by setting the speed to a value not in sync with the tempo and without retriggering the LFO it would be perceived as random WRT the song tempo. At some point will resync but this won’t be noticeable.

As you have pointed out, there is no way to get random depth but you could set LFO depth with p-locks and use conditional triggers to add even more variation. In fact, we do not want random depth but quantized depth, otherwise sample start will not be on time.

It’s complicated and it’s really far from being perfect but it’s another approach for emulating slicing on the DT.

2 Likes

Thanks for precisions. I’d need to try to get it.
IIRC it was accurate with lfo square wave indeed.

I also tried midi loopback and DT midi tracks, but for the moment, I prefer to use TRC, lock trigs % or % followed by PRE with - 23 microtiming to alternate precise values.

Works perfectly with OT! Grid generator, editable slices, random depth precision, crossfader control…
Definitely more complicated and not perfect with DT…I also tried wirh AR and M:S with apparently same disappointing behaviors…

1 Like

Dude you are reading my mind. My next video (coming soon) will be about using a time stretching saw LFO + a square wave LFO as a way to scramble samples exactly on musical beats like you’re describing. Combined with parameter locks and the fill button it’s super powerful.

Since I “discovered” time stretching on the DT I’ve always wanted some way to quantize the random LFO to divisions of 120. The saw + square approach is as close as I’ve found because you can parameter lock exact depths (30, 15, 7.5, etc) then use probability and fills for pseudo random slicing.

Its funny, reading the other thread you linked does have me wondering why they chose 120 for the sample length. 128 would be so much better because powers of two… but we work with what we’ve got. Cheers dude.

3 Likes

I think I read somewhere the reason is that 120 has many useful divisors (2, 3, 4, 5, 6, 8, 10, 12…) from a musical POV. Having powers of 2 would have been very limiting and having 7 as divisor would probably have been too much. Also, usually loops come in 4/4 but you can rearrange them as odd rhythms with the sequencer.

I was trying to use the fill button too and I found it hard to use in a successful way. But I’ve just came up with a formula.

  1. Load a perfect 4 bar loop of whatever you want.
  2. Apply the timestretching approach for just one bar.
  3. Configure the LFO 2 as square, trigger free with sample start as destination and choose an odd and high speed.
  4. For every pair of steps but the first one, proceed as this.
  • Set the first as a 2 sixteenth retrigger on no fill.
  • Set the second to a 2 sixteenth retrigger on fill, use microtiming to shift it to the earliest position and set the LFO 2 depth to 3.75 (this value is for a loop length of 30, which is a single bar in the 4 bar loops).

I hope I haven’t missed a step in the recipe.

4 Likes

Imho 120 is definitely a shitty value rhythmically, decimals being PITA to set with DT, and it’s not really needed chromatically. 64/128 is no brainer for me. OT again.

With DT, I’d only use 30 slices, because of push button 4 values increments. Still frustrating…

This is just shameless self promotion at this point but this technique goes hand in hand with time stretching so I figured I’d post anyway. Let me know what you think, or even better share something you’ve made using this idea (or any of the ideas in this thread). Cheers!

11 Likes

Nice!!! I’ve been playing around with your time stretching technique with drum loops and playing around with fill trigs and this is def a good addition.

1 Like

I’ve finally gotten around to trying to use this, and I’ve got some questions.

1 - I should be able to make this work with a regular 64-step pattern that isn’t time stretched, right? My pattern is using 4 one shot samples, not a perfect loop like your example in the video.

2 - One of my samples is a 4 step ride sample that repeats, so step 9 (where you placed your retrig) has a sample on it. Seems like this is causing an issue for me. Can I place that retrig on say step 8 instead?

I imagine I just haven’t yet got this set up perfectly, so maybe I figure it all out before you get back to me, but maybe your answering these two questions will help me.

What I would do is create a copy of the pattern, apply the pitch drop LFO to all tracks, then switch over to that one when you want the effect. It’s possible to do it with the fill button and one shots but it’s tedious unless you’re time stretching.

Also you could try resampling your beat into a loop then time stretching that and putting the pitch drop fill in there - but ofc I’m biased :laughing:

After a few hours of toiling, I think you’re right. Resample and loop it is.

Thank you so much for sharing the passion!

I finally got into trying and first try, instant love. Just transformed an old sounding percussion loop into a lovely part for an ambient jam I’m doing at the moment, delicious!

Glad ur enjoying it :blush::blush::blush:

1 Like

Hey guys - I feel like I’ve let you down by taking so long to follow up with more videos on this subject. Truth be told I’m depressed as shit and every time I try to make a video I pick it apart and tell myself it aint shit and I end up scrapping it. The good news is I am DONE with this attitude and am accepting the imperfections in the things that I create.

For now I’m posting some links to desmos graphs I made that visualize sample playback and the timestretch LFO on the digitakt. I can’t quite figure out how to incorporate them smoothly into a video, but I figured some folks on here who have been looking for a deeper explanation of what’s going on might appreciate them - or they might confuse you further lol. I included comments in each that hopefully will help :slight_smile:

My next video will be on the best practices I’ve developed for chopping perfect loops using just the digitakt. Nothing groundbreaking but that’s one of the more common questions I’ve gotten on previous vids. My goal is to make a couple short vids addressing these types of questions then move on to more fun stuff you can do with time stretching. Also exploring modular gear I have and the sp404 mk2 which I have been absolutely loving. mute groups ftw.

anyways peace and luv hope you understand, I really do appreciate all the support and feedback - I promise that I’m not done and the best is yet to come. talk to you soon <3

20 Likes