audio: Fix audio stream callback calculations when future buffer has space.

We were subtracting backwards.  :/
This commit is contained in:
Ryan C. Gordon
2023-08-08 21:40:23 -04:00
parent 917e036f6f
commit 0714da37a4

View File

@@ -1038,7 +1038,7 @@ int SDL_GetAudioStreamData(SDL_AudioStream *stream, void *voidbuf, int len)
// calculate difference in dataset size after resampling. Use a Uint64 so the multiplication doesn't overflow.
approx_request = (int) (size_t) ((((Uint64) approx_request) * stream->src_spec.freq) / stream->dst_spec.freq);
if (!stream->flushed) { // do we need to fill the future buffer to accomodate this, too?
approx_request += stream->future_buffer_filled_frames - stream->resampler_padding_frames;
approx_request += stream->resampler_padding_frames - stream->future_buffer_filled_frames;
}
}