PITCH/RATE deck: Rate and Pitch knobs compounded into one read increment, on a three-state commit predicate and payload v16
This commit is contained in:
@@ -158,6 +158,15 @@ struct PlayParams {
|
||||
TriggerParams trigger; // Trigger play span
|
||||
AhdParams trigAhd; // Trigger amp
|
||||
PitchEngine pitchEngine = PitchEngine::Varispeed;
|
||||
// Playback RATE, as source frames consumed per output frame. Under Varispeed it is one more
|
||||
// factor of the read increment, so it moves pitch and duration together; under Preserve it
|
||||
// drives duration alone and the shifter holds the pitch. Latched at note-on either way (the
|
||||
// loop fold and the contour scale it composes with are both note-on folds), and clamped by
|
||||
// the stretcher's own clampStretchRate — never here. 1.0 is the bare engine, bit for bit.
|
||||
double playRate = 1.0;
|
||||
// A baseline pitch offset in semitones, folded into the note's ratio beside key-tracking and
|
||||
// the velocity->pitch transpose. Live on a sounding voice under both engines.
|
||||
double pitchOffsetSemitones = 0.0;
|
||||
PitchEnvParams pitchEnv;
|
||||
// Velocity -> pitch offset, scaled by kVelocityPitchRangeSemitones. Bipolar and flat at 0
|
||||
// by default, so it transposes nothing until a curve is drawn. Folded into the voice's
|
||||
|
||||
Reference in New Issue
Block a user