Tell the stream that you're done sending data, and anything being buffered should be converted/resampled and made available immediately.
int SDL_AudioStreamFlush(SDL_AudioStream *stream);
It is legal to add more data to a stream after flushing, but there will be audio gaps in the output. Generally this is intended to signal the end of input, so the complete output becomes available.
This function is available since SDL 3.0.0.