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)
|
||||
.subspan(sfz::config::excessFileFrames,
|
||||
fileData.getNumFrames() - 2 * sfz::config::excessFileFrames);
|
||||
else if (availableFrames > preloadedData->getNumFrames())
|
||||
return AudioSpan<const float>(fileData).subspan(sfz::config::excessFileFrames, availableFrames);
|
||||
else if (availableFrames > preloadedData->getNumFrames() + sfz::config::excessFileFrames)
|
||||
return AudioSpan<const float>(fileData)
|
||||
.subspan(sfz::config::excessFileFrames, availableFrames - sfz::config::excessFileFrames);
|
||||
else
|
||||
return AudioSpan<const float>(*preloadedData)
|
||||
.subspan(sfz::config::excessFileFrames,
|
||||
preloadedData->getNumFrames() - sfz::config::excessFileFrames);
|
||||
preloadedData->getNumFrames() - 2 * sfz::config::excessFileFrames);
|
||||
}
|
||||
|
||||
void reset()
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue