winepulse: Don't rely on pulseaudio callbacks for timing.
commita10824a03cb7ad1a2a1987433c5ad832dcdf6962
authorAndrew Eikum <aeikum@codeweavers.com>
Mon, 17 Aug 2020 15:38:18 +0000 (17 10:38 -0500)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 18 Aug 2020 19:40:02 +0000 (18 21:40 +0200)
tree6de231aae8ff44800bf23199a52a973c1b53fe0a
parent30596feb03098b392bd5078a1a2d390567681b3c
winepulse: Don't rely on pulseaudio callbacks for timing.

Contains contributions from Mark Harmstone and Zhiyi Zhang.

Some devices, especially USB devices, have very irregular timing or
very long periods. Some Windows applications (The Witcher 3) are built
to expect regular, short period times, and so would underrun when the
device timing didn't match their expectations. This patch decouples
the Windows-side timing from the OS-side timing so we can meet those
applications' requirements.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
dlls/winepulse.drv/mmdevdrv.c