Browse Source

wasapi: Clamp device->spec.samples to the hardware buffer size.

Reference Issue #8924.
Ryan C. Gordon 1 year ago
parent
commit
ad1a11164c
1 changed files with 5 additions and 0 deletions
  1. 5 0
      src/audio/wasapi/SDL_wasapi.c

+ 5 - 0
src/audio/wasapi/SDL_wasapi.c

@@ -486,6 +486,11 @@ int WASAPI_PrepDevice(_THIS, const SDL_bool updatestream)
         this->spec.samples = (Uint16)SDL_ceilf(period_frames);
     }
 
+    /* regardless of what we calculated for the period size, clamp it to the expected hardware buffer size. */
+    if (this->spec.samples > bufsize) {
+        this->spec.samples = bufsize;
+    }
+
     /* Update the fragment size as size in bytes */
     SDL_CalculateAudioSpec(&this->spec);