oscillator_multi
Configure a region to use more than one oscillator.
Assuming oscillator_mode=0:
- If the value is 1, the region operates normally, in single oscillator mode.
- If the value is 2, the region operates in ring modulation mode.
- If between 3 and 9, this defines a unison, with the value being the number of oscillators. In this case, oscillator_detune must also be set to indicate the spread between the oscillators.
Cakewalk unison
Let m
be the number of oscillators defined by oscillator_multi
,
and d
the detune value defined by oscillator_detune.
The array of m oscillators is tuned by multiplying d
for each oscillator by its coefficient.
Oscillator | Coefficient |
---|---|
1 | 0 |
2 | -1 |
3 | 1 |
4 | -1/4 |
5 | 1/4 |
6 | -1/2 |
7 | 1/2 |
8 | -3/4 |
9 | 3/4 |
{: .table .table-sm .table-bordered .table-striped } |
The oscillators sum into left and right channels with declining linear gain,
opposite for each channel.
With i
the number of the oscillator (starting at 1),
the left gain is (i-1)/(m-1)
, and the right gain is 1-((i-1)/(m-1))
.
Example
/*
# Left:
[4] 25 cents, 0 dB
[3] -25 cents, -2.49878 dB
[2] 100 cents, -6.0206 dB
[1] -100 cents, -12.0412 dB
[0] 0 cents, -inf dB
# Right:
[0] 0 cents, 0 dB
[1] -100 cents, -2.49878 dB
[2] 100 cents, -6.0206 dB
[3] -25 cents, -12.0412 dB
[4] 25 cents, -inf dB
*/
<region>
oscillator_detune=100
oscillator_multi=5
Name | Version | Type | Default | Range | Unit |
---|---|---|---|---|---|
oscillator_multi | SFZ v2 | integer | 1 | 1 to 9 | N/A |
Category: Wavetable Oscillator