Files
Cagire/docs/engine_space.md

119 lines
3.2 KiB
Markdown

# Space & Time
Spatial effects position sounds in the stereo field and add depth through delays and reverbs.
## Pan
Pan positions a sound in the stereo field.
```forth
hat -0.5 pan . ( slightly left )
perc 1 pan . ( hard right )
kick 0 pan . ( center )
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `pan` | -1 to 1 | Stereo position (-1 = left, 0 = center, 1 = right) |
## Width
Width controls the stereo spread using mid-side processing.
```forth
pad 1.5 width . ( wider stereo )
pad 0 width . ( mono )
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `width` | 0+ | Stereo width (0 = mono, 1 = unchanged, 2 = exaggerated) |
## Haas Effect
The Haas effect delays one channel slightly, creating a sense of stereo width and spatial placement.
```forth
snare 15 haas . ( 15ms delay on right channel )
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `haas` | ms | Delay time (1-10ms = subtle width, 10-35ms = distinct echo) |
## Delay
Delay is a send effect that creates echoes. The `delay` parameter sets how much signal is sent to the delay bus.
```forth
snare 0.3 delay 0.25 delaytime 0.5 delayfeedback .
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `delay` | 0-1 | Send level |
| `delaytime` | seconds | Delay time |
| `delayfeedback` | 0-0.95 | Feedback amount |
| `delaytype` | type | Delay algorithm |
### Delay Types
| Type | Description |
|------|-------------|
| `standard` | Clean digital repeats |
| `pingpong` | Bounces between left and right |
| `tape` | Each repeat gets darker (analog warmth) |
| `multitap` | 4 taps with swing control via feedback |
```forth
snare 0.4 delay pingpong delaytype .
pad 0.3 delay tape delaytype .
```
## Reverb
Reverb is a send effect that simulates acoustic spaces. The `verb` parameter sets the send level.
```forth
snare 0.2 verb 2 verbdecay .
pad 0.4 verb 4 verbdecay 0.7 verbdamp .
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `verb` | 0-1 | Send level |
| `verbdecay` | seconds | Reverb tail length |
| `verbdamp` | 0-1 | High frequency damping |
| `verbpredelay` | ms | Initial delay before reverb |
| `verbdiff` | 0-1 | Diffusion (smears transients) |
| `verbtype` | type | Reverb algorithm |
### Reverb Types
| Type | Description |
|------|-------------|
| `dattorro` | Plate reverb, bright and metallic shimmer |
| `fdn` | Hall reverb, dense and smooth |
```forth
snare 0.3 verb dattorro verbtype . ( plate )
pad 0.5 verb fdn verbtype . ( hall )
```
## Comb Filter
The comb filter creates resonant pitched delays, useful for Karplus-Strong string synthesis and metallic tones.
```forth
white 0.5 comb 220 combfreq 0.9 combfeedback . ( plucked string )
```
| Parameter | Range | Description |
|-----------|-------|-------------|
| `comb` | 0-1 | Send level |
| `combfreq` | Hz | Resonant frequency |
| `combfeedback` | 0-0.99 | Feedback (higher = longer decay) |
| `combdamp` | 0-1 | High frequency damping |
Higher feedback creates longer, ringing tones. Add damping for more natural string-like decay.