Skip to content

Commit dfaba2a

Browse files
committed
added squash() fx
1 parent 9628ab2 commit dfaba2a

File tree

2 files changed

+1749
-362
lines changed

2 files changed

+1749
-362
lines changed

docs/04-fx.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,51 @@
11
# Sound Effects (fx)
22

3+
The sound FX currently have a fixed chain when using the Mercury standalone version in Max. The chain of effects is as following:
4+
5+
```
6+
synth / sample / polySynth / loop (mono)
7+
|
8+
freeze (spectral freezer)
9+
|
10+
shift (pitchshifter)
11+
|
12+
envFilter (envelope modulated filter)
13+
|
14+
kink (distortion)
15+
|
16+
drive (distortion)
17+
|
18+
filter (low/hi/band filter with optional LFO modulation)
19+
|
20+
chip (downsampling)
21+
|
22+
comb (combfiltering)
23+
|
24+
squash (basic compression/distortion)
25+
|
26+
gain (the volume of the sound)
27+
| >-----------------------> v
28+
panning reverb (stereo reverberation)
29+
|| ||
30+
double ||
31+
(automated double tracking ||
32+
/chorus) ||
33+
|| <====================== <<
34+
lfo
35+
(low frequency oscillator)
36+
|| >---------------------> vv
37+
|| delay (stereo pingpong delay)
38+
|| <====================== <<
39+
output
40+
```
41+
42+
```
43+
| mono
44+
- mono
45+
|| stereo
46+
= stereo
47+
```
48+
349
## reverb
450

551
Add an reverberation effect to the sound. The effect has 2 arguments, the amplitude of the reverb and the reverb-length. The amplitude is specified in floating-point linear gain and the length is a value between `0` and `20`. The default is `0.5` amplitude and `10` length.
@@ -76,6 +122,18 @@ Make a time-domain pitchshifting effect to change the pitch of the sound. The fi
76122
new sample violin_c time(1/4) fx(shift 7 0.5)
77123
```
78124

125+
## squash
126+
127+
A simple compression/distortion algorithm based on a design by Peter McCulloch. Raise the amount to squash the incoming signal, first creating some kind of simple compression, but quickly introduces nice distortion harmonics.
128+
129+
**arguments**
130+
- {Number+} -> input gain amount, greater than 1 (default=2)
131+
- {Float} -> compression factor greater than 0 (default=0.28)
132+
133+
```java
134+
new sample piano_e time(1) fx(squash 2.3)
135+
```
136+
79137
## lfo
80138

81139
Add an Low Frequency Oscillator effect to the sound.

0 commit comments

Comments
 (0)