summaryrefslogtreecommitdiffstats
path: root/audio/out/ao_wasapi.c
diff options
context:
space:
mode:
authorDiogo Franco (Kovensky) <diogomfranco@gmail.com>2013-12-08 18:47:36 -0300
committerDiogo Franco (Kovensky) <diogomfranco@gmail.com>2013-12-08 19:03:26 -0300
commit2329e462291b9803450a67f7e3fac531823b95a6 (patch)
tree958499c16521e883082da03eb6a764b02d9f91cb /audio/out/ao_wasapi.c
parent62925a5c15a76568c155259bafa1361ec139c66b (diff)
downloadmpv-2329e462291b9803450a67f7e3fac531823b95a6.tar.bz2
mpv-2329e462291b9803450a67f7e3fac531823b95a6.tar.xz
ao_wasapi: fix audio buffering delay calculation
When get_space was converted to returning samples instead of bytes, a unit type mismatch in get_delay's calculation returned bogus values. Fix by converting get_space's value back to bytes. Fixes playback with ao_wasapi when reaching EOF, or seeking past it.
Diffstat (limited to 'audio/out/ao_wasapi.c')
-rw-r--r--audio/out/ao_wasapi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/audio/out/ao_wasapi.c b/audio/out/ao_wasapi.c
index b43bf04753..4bdad1d242 100644
--- a/audio/out/ao_wasapi.c
+++ b/audio/out/ao_wasapi.c
@@ -1364,7 +1364,7 @@ static float get_delay(struct ao *ao)
if (!ao || !ao->priv)
return -1.0f;
struct wasapi_state *state = (struct wasapi_state *)ao->priv;
- return (float)(RING_BUFFER_COUNT * state->buffer_block_size - get_space(ao)) /
+ return (float)(RING_BUFFER_COUNT * state->buffer_block_size - get_space(ao) * ao->sstride) /
(float)state->format.Format.nAvgBytesPerSec;
}