Feat: document time stretching
All checks were successful
Deploy Website / deploy (push) Has been skipped
All checks were successful
Deploy Website / deploy (push) Has been skipped
This commit is contained in:
@@ -50,6 +50,7 @@ snare sound 0.5 speed . ( play snare at half speed )
|
|||||||
| `slice` | 1+ | Divide sample into N equal slices |
|
| `slice` | 1+ | Divide sample into N equal slices |
|
||||||
| `pick` | 0+ | Select which slice to play (0-indexed, wraps) |
|
| `pick` | 0+ | Select which slice to play (0-indexed, wraps) |
|
||||||
| `speed` | any | Playback speed multiplier |
|
| `speed` | any | Playback speed multiplier |
|
||||||
|
| `stretch` | 0+ | Time-stretch factor (pitch-independent) |
|
||||||
| `freq` | Hz | Base frequency for pitch tracking |
|
| `freq` | Hz | Base frequency for pitch tracking |
|
||||||
| `fit` | seconds | Stretch/compress sample to fit duration |
|
| `fit` | seconds | Stretch/compress sample to fit duration |
|
||||||
| `cut` | 0+ | Choke group |
|
| `cut` | 0+ | Choke group |
|
||||||
@@ -105,6 +106,24 @@ crow sound -1 speed . ( play backwards at nominal speed )
|
|||||||
crow sound -4 speed . ( play backwards, 4 times faster )
|
crow sound -4 speed . ( play backwards, 4 times faster )
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Time Stretching
|
||||||
|
|
||||||
|
The `stretch` parameter changes sample duration without affecting pitch, using a phase vocoder algorithm. This contrasts with `speed`, which changes both tempo and pitch together.
|
||||||
|
|
||||||
|
```forth
|
||||||
|
kick sound 2 stretch . ( twice as long, same pitch )
|
||||||
|
kick sound 0.5 stretch . ( half as long, same pitch )
|
||||||
|
kick sound 0 stretch . ( freeze — holds at current position )
|
||||||
|
```
|
||||||
|
|
||||||
|
Combine with `slice` and `pick` for pitch-locked breakbeat manipulation:
|
||||||
|
|
||||||
|
```forth
|
||||||
|
break sound 8 slice step pick 2 stretch . ( sliced break, stretched x2, original pitch )
|
||||||
|
```
|
||||||
|
|
||||||
|
Reverse playback is not available with `stretch` — use `speed` for that.
|
||||||
|
|
||||||
## Fitting to Duration
|
## Fitting to Duration
|
||||||
|
|
||||||
The `fit` parameter stretches or compresses a sample to match a target duration in seconds. This adjusts speed automatically.
|
The `fit` parameter stretches or compresses a sample to match a target duration in seconds. This adjusts speed automatically.
|
||||||
|
|||||||
Reference in New Issue
Block a user