summaryrefslogtreecommitdiffstats
path: root/audio/out
diff options
context:
space:
mode:
Diffstat (limited to 'audio/out')
-rw-r--r--audio/out/ao_wasapi_utils.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/audio/out/ao_wasapi_utils.c b/audio/out/ao_wasapi_utils.c
index 8d0ea30bd7..0e7dec885a 100644
--- a/audio/out/ao_wasapi_utils.c
+++ b/audio/out/ao_wasapi_utils.c
@@ -364,17 +364,9 @@ static bool search_samplerates(struct ao *ao, WAVEFORMATEXTENSIBLE *wformat,
}
}
- for (int i = 0; supported[i]; i++) {
- // first choose the lowest integer multiple of the sample rate
- if (!(supported[i] % ao->samplerate)) {
- change_waveformat_samplerate(wformat, supported[i]);
- return true;
- }
- }
-
- // then choose the highest supported (if any)
- if (n) {
- change_waveformat_samplerate(wformat, supported[n-1]);
+ int samplerate = af_select_best_samplerate(ao->samplerate, supported);
+ if (samplerate > 0) {
+ change_waveformat_samplerate(wformat, samplerate);
return true;
}