For streaming data, pass the available frame - the padding size
Otherwise in some cases you might have interpolators reading uninitialized/zero data if they're close to the streaming bound
This commit is contained in:
parent
acf4f00b9d
commit
fe730333c6
1 changed files with 4 additions and 3 deletions
|
|
@ -68,12 +68,13 @@ struct FilePromise
|
||||||
return AudioSpan<const float>(fileData)
|
return AudioSpan<const float>(fileData)
|
||||||
.subspan(sfz::config::excessFileFrames,
|
.subspan(sfz::config::excessFileFrames,
|
||||||
fileData.getNumFrames() - 2 * sfz::config::excessFileFrames);
|
fileData.getNumFrames() - 2 * sfz::config::excessFileFrames);
|
||||||
else if (availableFrames > preloadedData->getNumFrames())
|
else if (availableFrames > preloadedData->getNumFrames() + sfz::config::excessFileFrames)
|
||||||
return AudioSpan<const float>(fileData).subspan(sfz::config::excessFileFrames, availableFrames);
|
return AudioSpan<const float>(fileData)
|
||||||
|
.subspan(sfz::config::excessFileFrames, availableFrames - sfz::config::excessFileFrames);
|
||||||
else
|
else
|
||||||
return AudioSpan<const float>(*preloadedData)
|
return AudioSpan<const float>(*preloadedData)
|
||||||
.subspan(sfz::config::excessFileFrames,
|
.subspan(sfz::config::excessFileFrames,
|
||||||
preloadedData->getNumFrames() - sfz::config::excessFileFrames);
|
preloadedData->getNumFrames() - 2 * sfz::config::excessFileFrames);
|
||||||
}
|
}
|
||||||
|
|
||||||
void reset()
|
void reset()
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue