-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
See these pitch calculations:
Touch
plinky_public/sw/Core/Src/plinky.c
Lines 2077 to 2078 in 08dd1e8
| int fine = 128 - (position & 255); | |
| int pitch = pitchbase + (lookupscale(scale, ystep + root)) + ((i & 1) ? interval : 0) + ((fine * microtune) >> 14); |
The
position variable has small variations for each oscillator, which detunes the oscillators from the pitch of the pressed pad
Midi
plinky_public/sw/Core/Src/plinky.c
Line 2046 in 08dd1e8
| int pitch = pitchbase + ((i & 1) ? interval : 0) + (i-2)*64 + midinote; // (lookupscale(scale, ystep + root)) + +((fine * microtune) >> 14); |
The
(i-2)*64 term adds a hard-coded detuning of +64 to oscillators 1 and 3. This is a pretty significant spread between the oscillators, while the pitch from touches is generally more detuned from the pad-pitch as a whole, with the oscilatters themselves being closer together
As a result they sound pretty different from eachother
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels