Cubase: VST3: processBlock: stops getting called after 12s of silence

Is this right?

Doesn’t this result in Vst::kNoTail pretty much… all the time?

I debugged it with Cubase 9.5 and it always returns kNoTail, beacuse there always is sampleRate > 0.0.

@jules Shouldn’t this be like that?

Steinberg::uint32 PLUGIN_API getTailSamples() override
 {
    auto tailLengthSeconds = getPluginInstance().getTailLengthSeconds();

    if (tailLengthSeconds <= 0.0 || processSetup.sampleRate <= 0.0)
        return Vst::kNoTail;

    return (Steinberg::uint32) roundToIntAccurate (tailLengthSeconds * processSetup.sampleRate);
}

Update:
I missed to report that changing the condition didn’t make a difference in Cubase specifically, but I am not sure how other hosts would react. Very weird that no one has hit this for 4 years…

2 Likes