=?UTF-8?Q?J=C3=B6rg=20H=C3=B6hle=20?=: winealsa: Have GetStreamLatency reflect the ALSA period.

Alexandre Julliard julliard at winehq.org
Fri Jan 6 15:31:34 CST 2012


Module: wine
Branch: master
Commit: 92d8e93acb34f561a7c381a3fca954474d0c0bc0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=92d8e93acb34f561a7c381a3fca954474d0c0bc0

Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date:   Thu Jan  5 18:36:43 2012 +0100

winealsa: Have GetStreamLatency reflect the ALSA period.

---

 dlls/winealsa.drv/mmdevdrv.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/winealsa.drv/mmdevdrv.c b/dlls/winealsa.drv/mmdevdrv.c
index 3168e8f..cb118cff 100644
--- a/dlls/winealsa.drv/mmdevdrv.c
+++ b/dlls/winealsa.drv/mmdevdrv.c
@@ -1138,7 +1138,9 @@ static HRESULT WINAPI AudioClient_GetStreamLatency(IAudioClient *iface,
 
     LeaveCriticalSection(&This->lock);
 
-    *latency = 500000;
+    /* one mmdevapi period plus one period we hide in the ALSA buffer */
+    *latency = MulDiv(This->alsa_period_frames, 10000000, This->fmt->nSamplesPerSec)
+             + This->mmdev_period_rt;
 
     return S_OK;
 }




More information about the wine-cvs mailing list