Sfoglia il codice sorgente

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

Reference Issue #8924.

(cherry picked from commit ad1a11164c872aecd72803fb9a319c4e5fcbcfaf)
Ryan C. Gordon 1 anno fa
parent
commit
1e06a3614f
1 ha cambiato i file con 5 aggiunte e 0 eliminazioni
  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);
         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 */
     /* Update the fragment size as size in bytes */
     SDL_CalculateAudioSpec(&this->spec);
     SDL_CalculateAudioSpec(&this->spec);