diff --git a/src/audio/SDL_audio.c b/src/audio/SDL_audio.c index c34aee5b98..18b5f533f2 100644 --- a/src/audio/SDL_audio.c +++ b/src/audio/SDL_audio.c @@ -1708,7 +1708,10 @@ int SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int logdev->bound_streams = stream; if (iscapture) { - stream->src_spec.format = logdev->postmix ? SDL_AUDIO_F32 : device->spec.format; + SDL_copyp(&stream->src_spec, &device->spec); + if (logdev->postmix) { + stream->src_spec.format = SDL_AUDIO_F32; + } } SDL_UnlockMutex(stream->lock);