Add filter veltrack oncc

This commit is contained in:
Paul Fd 2021-07-05 09:24:39 +02:00
parent 3658de4497
commit 5dbeb58eb0

View file

@ -38,8 +38,15 @@ void sfz::FilterHolder::setup(const Region& region, unsigned filterId, int noteN
}
const auto keytrack = description->keytrack * float(noteNumber - description->keycenter);
baseCutoff *= centsFactor(keytrack);
const auto veltrack = description->veltrack * velocity;
baseCutoff *= centsFactor(veltrack);
auto veltrack = description->veltrack;
for (const auto& mod : description->veltrackCC) {
const auto& curve = resources.getCurves().getCurve(mod.data.curve);
const float value = resources.getMidiState().getCCValue(mod.cc);
veltrack += curve.evalNormalized(value) * mod.data.modifier;
}
baseCutoff *= centsFactor(veltrack * velocity);
baseCutoff = Default::filterCutoff.bounds.clamp(baseCutoff);
baseGain = description->gain;