Jörg Höhle : winmm/tests: Correct (IMA)ADPCM test .
Alexandre Julliard
julliard at winehq.org
Tue Oct 6 10:35:52 CDT 2009
Module: wine
Branch: master
Commit: ad75d9a21722a9516b50868b1ec18f0a6e74f508
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ad75d9a21722a9516b50868b1ec18f0a6e74f508
Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date: Tue Oct 6 06:37:06 2009 +0200
winmm/tests: Correct (IMA)ADPCM test.
---
dlls/winmm/tests/wave.c | 30 ++++++++++++++++--------------
1 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/dlls/winmm/tests/wave.c b/dlls/winmm/tests/wave.c
index 97544c0..8a9caf2 100644
--- a/dlls/winmm/tests/wave.c
+++ b/dlls/winmm/tests/wave.c
@@ -825,6 +825,7 @@ static void wave_out_test_device(UINT_PTR device)
WAVEOUTCAPSW capsW;
WAVEFORMATEX format, oformat;
WAVEFORMATEXTENSIBLE wfex;
+ IMAADPCMWAVEFORMAT wfa;
HWAVEOUT wout;
MMRESULT rc;
UINT f;
@@ -1159,7 +1160,6 @@ static void wave_out_test_device(UINT_PTR device)
format.nBlockAlign=format.nChannels*format.wBitsPerSample/8;
format.nAvgBytesPerSec=format.nSamplesPerSec*format.nBlockAlign;
format.cbSize=0;
- oformat=format;
rc=waveOutOpen(&wout,device,&format,0,0,CALLBACK_NULL|WAVE_FORMAT_DIRECT);
ok(rc==MMSYSERR_NOERROR ||rc==WAVERR_BADFORMAT ||
rc==MMSYSERR_INVALFLAG || rc==MMSYSERR_INVALPARAM,
@@ -1176,28 +1176,30 @@ static void wave_out_test_device(UINT_PTR device)
trace("waveOutOpen(%s): WAVE_FORMAT_MULAW not supported\n",
dev_name(device));
- format.wFormatTag=WAVE_FORMAT_ADPCM;
- format.nChannels=2;
- format.wBitsPerSample=4;
- format.nSamplesPerSec=22050;
- format.nBlockAlign=format.nChannels*format.wBitsPerSample/8;
- format.nAvgBytesPerSec=format.nSamplesPerSec*format.nBlockAlign;
- format.cbSize=0;
- oformat=format;
- rc=waveOutOpen(&wout,device,&format,0,0,CALLBACK_NULL|WAVE_FORMAT_DIRECT);
+ wfa.wfx.wFormatTag=WAVE_FORMAT_IMA_ADPCM;
+ wfa.wfx.nChannels=1;
+ wfa.wfx.nSamplesPerSec=11025;
+ wfa.wfx.nAvgBytesPerSec=5588;
+ wfa.wfx.nBlockAlign=256;
+ wfa.wfx.wBitsPerSample=4; /* see imaadp32.c */
+ wfa.wfx.cbSize=2;
+ wfa.wSamplesPerBlock=505;
+ rc=waveOutOpen(&wout,device,&wfa.wfx,0,0,CALLBACK_NULL|WAVE_FORMAT_DIRECT);
ok(rc==MMSYSERR_NOERROR ||rc==WAVERR_BADFORMAT ||
rc==MMSYSERR_INVALFLAG || rc==MMSYSERR_INVALPARAM,
"waveOutOpen(%s): returned %s\n",dev_name(device),wave_out_error(rc));
if (rc==MMSYSERR_NOERROR) {
waveOutClose(wout);
- wave_out_test_deviceOut(device,1.0,1,0,&format,0,CALLBACK_EVENT,
+ /* TODO: teach wave_generate_* ADPCM
+ wave_out_test_deviceOut(device,1.0,1,0,&wfa.wfx,0,CALLBACK_EVENT,
&capsA,winetest_interactive,TRUE,FALSE);
- wave_out_test_deviceOut(device,1.0,10,0,&format,0,CALLBACK_EVENT,
+ wave_out_test_deviceOut(device,1.0,10,0,&wfa.wfx,0,CALLBACK_EVENT,
&capsA,winetest_interactive,TRUE,FALSE);
- wave_out_test_deviceOut(device,1.0,5,1,&format,0,CALLBACK_EVENT,
+ wave_out_test_deviceOut(device,1.0,5,1,&wfa.wfx,0,CALLBACK_EVENT,
&capsA,winetest_interactive,TRUE,FALSE);
+ */
} else
- trace("waveOutOpen(%s): WAVE_FORMAT_ADPCM not supported\n",
+ trace("waveOutOpen(%s): WAVE_FORMAT_IMA_ADPCM not supported\n",
dev_name(device));
/* test if WAVEFORMATEXTENSIBLE supported */
More information about the wine-cvs
mailing list