diff --git a/src/sfizz/Voice.cpp b/src/sfizz/Voice.cpp index 685388d8..480f3d5e 100644 --- a/src/sfizz/Voice.cpp +++ b/src/sfizz/Voice.cpp @@ -104,7 +104,7 @@ void sfz::Voice::startVoice(Region* region, int delay, int channel, int number, sourcePosition = region->getOffset(); initialDelay = delay + static_cast(region->getDelay() * sampleRate); - baseFrequency = midiNoteFrequency(number) * pitchRatio; + baseFrequency = midiNoteFrequency(number); prepareEGEnvelope(initialDelay, value); } @@ -463,6 +463,7 @@ void sfz::Voice::fillWithGenerator(AudioSpan buffer) noexcept pitchBendEnvelope.getQuantizedBlock(bends, region->bendStep); else pitchBendEnvelope.getBlock(bends); + applyGain(bends, jumps); jumps[0] += phase; cumsum(jumps, phases);