please test inconsistent WAVEFORMAT on MS-Windows (compiler needed)

Joerg-Cyril.Hoehle at t-systems.com Joerg-Cyril.Hoehle at t-systems.com
Thu Sep 17 10:43:12 CDT 2009


Hi,

One MS-Windows machine passes all the attached tests, proving that MS-Windows ignores nBlockAlign and nAvgBytesPerSec. It would be helpful to get confirmation from more machines.
Please build with the attached patch, execute it in interactive mode
set WINETEST_INTERACTIVE=1
winetest.exe wave
and listen to the sound and especially the pauses.

OTOH, Wine fails at least one test:
- One waveOutGetPosition test in WAVE_MAPPER fails.
- My recently accepted patches (for OSS and CoreAudio) do something
  forbidden, that the test was written to reveal: they fix broken values
  in the WAVEFORMAT description, because both winmm and dsound depend on
  their correctness.  But Wine should not touch user-supplied data.  That
  is a todo_wine until dsound learns how to live with broken input.  I'll
  add todo_wine before submitting these tests as a patch.

Try this out with <= 1.1.29 (test with WINETEST_INTERACTIVE=1 make test)
and you'll hear how Wine's winmm incorrectly computes the duration of the
sound when given inconsistent format descriptions, causing silence where
none should be, because MS-Windows does not care about BlockAlign and
AvgBytesPerSec. With the upcoming 1.1.30, this will be corrected for OSS
and CoreAudio, but not yet with the WAVE_MAPPER (ALSA is still broken).

Regards,
	Jörg Höhle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: winmm-tests.patch
Type: application/octet-stream
Size: 4938 bytes
Desc: winmm-tests.patch
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20090917/04f582fb/attachment.obj>


More information about the wine-devel mailing list