Skip to content

Midi notes inject pitch spread which makes midi notes sound different from touch notes #72

@RJ-Eckie

Description

@RJ-Eckie

See these pitch calculations:

Touch

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

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions