http://bugs.winehq.org/show_bug.cgi?id=33045
--- Comment #13 from Jörg Höhle hoehle@users.sourceforge.net 2013-03-08 07:09:19 CST --- Another possibility for handling bytes not matching ACM or PCM block alignment is: after the header is consumed (ignoring remainder bytes), bump GetPosition to follow, i.e. pretend all bytes were played. IOW, GetPosition matches the sum of dwBufferLength. This is to work-around the weakness of the WINMM API that one receives no feedback about how many bytes were relevant in waveOutWrite.