Hi,
I'm a newbie in Pure Data and I have an idea which is to make a looper but that looper would take the loop and increase the speed of the playback each time the loop repeat. How would you do that ? Is anyone has advice on this ? Thanks very much
Buffer delay loop
Hi,
I'm a newbie in Pure Data and I have an idea which is to make a looper but that looper would take the loop and increase the speed of the playback each time the loop repeat. How would you do that ? Is anyone has advice on this ? Thanks very much
@DesignDefault Welcome to the Forum...!
Sorry, this will be a lot for a newbie.
You will see in the video @ricky has linked to that the [phasor~] object controls the speed at which the array is being read.
So you will need to increase the number that it receives at its left inlet in order to increase the speed.
It is an audio rate inlet, so you will need [sig~] to convert a control rate 1 to a signal rate 1.
1 will play at normal speed, 2 at double that speed etc.
Unfortunately you will need to "catch" a moment in the [phasor~] loop using [edge~] and then increment that value to [sig~] by whatever increase you want each time that [edge~] outputs a bang.
Catching the exact moment that it loops can be awkward and you might well need to add or subtract a value from the output of [phasor~] before sending it into [edge~]
A more reliable method would be to use a [metro] to increase the [sig~] with the metro rate set by the value from [timer].
Also, before playback (it only needs to be done once for the array after it has been filled) extra data points should be added.
That will stop clicks as [phasor~] wraps back to the beginning of the array.
https://forum.pdpatchrepo.info/topic/14301/add-delete-guard-points-of-an-array-for-4-point-interpolation-of-tabread4-ect
That will add 3 data points to the array, allowing [tabread4~] to correctly interpolate the samples at wrap around.
For that to work properly you should then add 3.... [+ 3] to the total number of samples after the [* 44.1]
Also, if you are running Pd at 48000Hz the [* 44.1] should be changed to [* 48] for the initial playback speed to be correct.
David.
if you drive a phasor object to play a audio file. you can decide how fast the phasor goes from 0 to 1 . and therfore you know when it hits 1 which means the end of the audio file. you need to see someone drive a phasor with line because there are more than a few ways
pd_help_file1.pd
here is a setup you could try and finnish this
helpfile2.pd
this one is probably set up better
https://patchstorage.com/audio-player-and-speed-pitcher-pd-vanilla/#downloadssampler_help.pd
Oops! Looks like something went wrong!