dsound/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com> Signed-off-by: Andrew Eikum <aeikum@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
030a686010
commit
5adca71cd7
|
@ -1,4 +1,3 @@
|
||||||
EXTRADEFS = -DWINE_NO_LONG_TYPES
|
|
||||||
TESTDLL = dsound.dll
|
TESTDLL = dsound.dll
|
||||||
IMPORTS = dmoguids dsound msdmo ole32 version user32
|
IMPORTS = dmoguids dsound msdmo ole32 version user32
|
||||||
|
|
||||||
|
|
|
@ -90,7 +90,7 @@ const char * format_string(const WAVEFORMATEX* wfx)
|
||||||
{
|
{
|
||||||
static char str[64];
|
static char str[64];
|
||||||
|
|
||||||
sprintf(str, "%5dx%2dx%d %s",
|
sprintf(str, "%5ldx%2dx%d %s",
|
||||||
wfx->nSamplesPerSec, wfx->wBitsPerSample, wfx->nChannels,
|
wfx->nSamplesPerSec, wfx->wBitsPerSample, wfx->nChannels,
|
||||||
get_format_str(wfx->wFormatTag));
|
get_format_str(wfx->wFormatTag));
|
||||||
|
|
||||||
|
@ -110,14 +110,14 @@ static void IDirectSoundCapture_test(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
rc=IDirectSoundCapture_QueryInterface(dsco, &IID_IUnknown,
|
rc=IDirectSoundCapture_QueryInterface(dsco, &IID_IUnknown,
|
||||||
(LPVOID*)&unknown);
|
(LPVOID*)&unknown);
|
||||||
ok(rc==DS_OK, "IDirectSoundCapture_QueryInterface(IID_IUnknown) "
|
ok(rc==DS_OK, "IDirectSoundCapture_QueryInterface(IID_IUnknown) "
|
||||||
"failed: %08x\n", rc);
|
"failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK)
|
if (rc==DS_OK)
|
||||||
IUnknown_Release(unknown);
|
IUnknown_Release(unknown);
|
||||||
|
|
||||||
rc=IDirectSoundCapture_QueryInterface(dsco, &IID_IDirectSoundCapture,
|
rc=IDirectSoundCapture_QueryInterface(dsco, &IID_IDirectSoundCapture,
|
||||||
(LPVOID*)&dsc);
|
(LPVOID*)&dsc);
|
||||||
ok(rc==DS_OK, "IDirectSoundCapture_QueryInterface(IID_IDirectSoundCapture) "
|
ok(rc==DS_OK, "IDirectSoundCapture_QueryInterface(IID_IDirectSoundCapture) "
|
||||||
"failed: %08x\n", rc);
|
"failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK)
|
if (rc==DS_OK)
|
||||||
IDirectSoundCapture_Release(dsc);
|
IDirectSoundCapture_Release(dsc);
|
||||||
|
|
||||||
|
@ -126,16 +126,16 @@ static void IDirectSoundCapture_test(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco,0);
|
rc=IDirectSoundCapture_GetCaps(dsco,0);
|
||||||
ok(rc==DSERR_UNINITIALIZED||rc==E_INVALIDARG,
|
ok(rc==DSERR_UNINITIALIZED||rc==E_INVALIDARG,
|
||||||
"IDirectSoundCapture_GetCaps(NULL) should have returned "
|
"IDirectSoundCapture_GetCaps(NULL) should have returned "
|
||||||
"DSERR_UNINITIALIZED or E_INVALIDARG, returned: %08x\n", rc);
|
"DSERR_UNINITIALIZED or E_INVALIDARG, returned: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
||||||
ok(rc==DSERR_UNINITIALIZED,"IDirectSoundCapture_GetCaps() "
|
ok(rc==DSERR_UNINITIALIZED,"IDirectSoundCapture_GetCaps() "
|
||||||
"should have returned DSERR_UNINITIALIZED, returned: %08x\n", rc);
|
"should have returned DSERR_UNINITIALIZED, returned: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCapture_Initialize(dsco, lpGuid);
|
rc=IDirectSoundCapture_Initialize(dsco, lpGuid);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||
|
||||||
rc==E_FAIL||rc==E_INVALIDARG,
|
rc==E_FAIL||rc==E_INVALIDARG,
|
||||||
"IDirectSoundCapture_Initialize() failed: %08x\n", rc);
|
"IDirectSoundCapture_Initialize() failed: %08lx\n", rc);
|
||||||
if (rc==DSERR_NODRIVER||rc==E_INVALIDARG) {
|
if (rc==DSERR_NODRIVER||rc==E_INVALIDARG) {
|
||||||
trace(" No Driver\n");
|
trace(" No Driver\n");
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
@ -150,25 +150,25 @@ static void IDirectSoundCapture_test(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
|
|
||||||
rc=IDirectSoundCapture_Initialize(dsco, lpGuid);
|
rc=IDirectSoundCapture_Initialize(dsco, lpGuid);
|
||||||
ok(rc==DSERR_ALREADYINITIALIZED, "IDirectSoundCapture_Initialize() "
|
ok(rc==DSERR_ALREADYINITIALIZED, "IDirectSoundCapture_Initialize() "
|
||||||
"should have returned DSERR_ALREADYINITIALIZED: %08x\n", rc);
|
"should have returned DSERR_ALREADYINITIALIZED: %08lx\n", rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid caps buffer */
|
/* DSOUND: Error: Invalid caps buffer */
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco, 0);
|
rc=IDirectSoundCapture_GetCaps(dsco, 0);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundCapture_GetCaps(NULL) "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundCapture_GetCaps(NULL) "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
ZeroMemory(&dsccaps, sizeof(dsccaps));
|
ZeroMemory(&dsccaps, sizeof(dsccaps));
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid caps buffer */
|
/* DSOUND: Error: Invalid caps buffer */
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSound_GetCaps() "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSound_GetCaps() "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
dsccaps.dwSize=sizeof(dsccaps);
|
dsccaps.dwSize=sizeof(dsccaps);
|
||||||
|
|
||||||
/* DSOUND: Running on a certified driver */
|
/* DSOUND: Running on a certified driver */
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
rc=IDirectSoundCapture_GetCaps(dsco, &dsccaps);
|
||||||
ok(rc==DS_OK, "IDirectSoundCapture_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK, "IDirectSoundCapture_GetCaps() failed: %08lx\n", rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSoundCapture_Release(dsco);
|
ref=IDirectSoundCapture_Release(dsco);
|
||||||
|
@ -187,17 +187,17 @@ static void test_capture(void)
|
||||||
rc=CoGetClassObject(&CLSID_DirectSoundCapture, CLSCTX_INPROC_SERVER, NULL,
|
rc=CoGetClassObject(&CLSID_DirectSoundCapture, CLSCTX_INPROC_SERVER, NULL,
|
||||||
&IID_IClassFactory, (void**)&cf);
|
&IID_IClassFactory, (void**)&cf);
|
||||||
ok(rc==S_OK,"CoGetClassObject(CLSID_DirectSoundCapture, IID_IClassFactory) "
|
ok(rc==S_OK,"CoGetClassObject(CLSID_DirectSoundCapture, IID_IClassFactory) "
|
||||||
"failed: %08x\n", rc);
|
"failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=CoGetClassObject(&CLSID_DirectSoundCapture, CLSCTX_INPROC_SERVER, NULL,
|
rc=CoGetClassObject(&CLSID_DirectSoundCapture, CLSCTX_INPROC_SERVER, NULL,
|
||||||
&IID_IUnknown, (void**)&cf);
|
&IID_IUnknown, (void**)&cf);
|
||||||
ok(rc==S_OK,"CoGetClassObject(CLSID_DirectSoundCapture, IID_IUnknown) "
|
ok(rc==S_OK,"CoGetClassObject(CLSID_DirectSoundCapture, IID_IUnknown) "
|
||||||
"failed: %08x\n", rc);
|
"failed: %08lx\n", rc);
|
||||||
|
|
||||||
/* try the COM class factory method of creation with no device specified */
|
/* try the COM class factory method of creation with no device specified */
|
||||||
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IDirectSoundCapture, (void**)&dsco);
|
&IID_IDirectSoundCapture, (void**)&dsco);
|
||||||
ok(rc==S_OK||rc==REGDB_E_CLASSNOTREG,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08x\n", rc);
|
ok(rc==S_OK||rc==REGDB_E_CLASSNOTREG,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08lx\n", rc);
|
||||||
if (rc==REGDB_E_CLASSNOTREG) {
|
if (rc==REGDB_E_CLASSNOTREG) {
|
||||||
trace(" Class Not Registered\n");
|
trace(" Class Not Registered\n");
|
||||||
return;
|
return;
|
||||||
|
@ -209,7 +209,7 @@ static void test_capture(void)
|
||||||
* device specified */
|
* device specified */
|
||||||
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IDirectSoundCapture, (void**)&dsco);
|
&IID_IDirectSoundCapture, (void**)&dsco);
|
||||||
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08x\n", rc);
|
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08lx\n", rc);
|
||||||
if (dsco)
|
if (dsco)
|
||||||
IDirectSoundCapture_test(dsco, FALSE, &DSDEVID_DefaultCapture);
|
IDirectSoundCapture_test(dsco, FALSE, &DSDEVID_DefaultCapture);
|
||||||
|
|
||||||
|
@ -217,7 +217,7 @@ static void test_capture(void)
|
||||||
* capture device specified */
|
* capture device specified */
|
||||||
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
rc=CoCreateInstance(&CLSID_DirectSoundCapture, NULL, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IDirectSoundCapture, (void**)&dsco);
|
&IID_IDirectSoundCapture, (void**)&dsco);
|
||||||
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08x\n", rc);
|
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundCapture) failed: %08lx\n", rc);
|
||||||
if (dsco)
|
if (dsco)
|
||||||
IDirectSoundCapture_test(dsco, FALSE, &DSDEVID_DefaultVoiceCapture);
|
IDirectSoundCapture_test(dsco, FALSE, &DSDEVID_DefaultVoiceCapture);
|
||||||
|
|
||||||
|
@ -227,26 +227,26 @@ static void test_capture(void)
|
||||||
&CLSID_DirectSoundPrivate, (void**)&dsco);
|
&CLSID_DirectSoundPrivate, (void**)&dsco);
|
||||||
ok(rc==E_NOINTERFACE,
|
ok(rc==E_NOINTERFACE,
|
||||||
"CoCreateInstance(CLSID_DirectSoundCapture,CLSID_DirectSoundPrivate) "
|
"CoCreateInstance(CLSID_DirectSoundCapture,CLSID_DirectSoundPrivate) "
|
||||||
"should have failed: %08x\n",rc);
|
"should have failed: %08lx\n",rc);
|
||||||
|
|
||||||
/* try with no device specified */
|
/* try with no device specified */
|
||||||
rc = DirectSoundCaptureCreate(NULL, &dsco, NULL);
|
rc = DirectSoundCaptureCreate(NULL, &dsco, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCaptureCreate(NULL) failed: %08x\n",rc);
|
"DirectSoundCaptureCreate(NULL) failed: %08lx\n",rc);
|
||||||
if (rc==S_OK && dsco)
|
if (rc==S_OK && dsco)
|
||||||
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
||||||
|
|
||||||
/* try with default capture device specified */
|
/* try with default capture device specified */
|
||||||
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultCapture, &dsco, NULL);
|
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultCapture, &dsco, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCaptureCreate(DSDEVID_DefaultCapture) failed: %08x\n", rc);
|
"DirectSoundCaptureCreate(DSDEVID_DefaultCapture) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && dsco)
|
if (rc==DS_OK && dsco)
|
||||||
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
||||||
|
|
||||||
/* try with default voice capture device specified */
|
/* try with default voice capture device specified */
|
||||||
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultVoiceCapture, &dsco, NULL);
|
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultVoiceCapture, &dsco, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCaptureCreate(DSDEVID_DefaultVoiceCapture) failed: %08x\n", rc);
|
"DirectSoundCaptureCreate(DSDEVID_DefaultVoiceCapture) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && dsco)
|
if (rc==DS_OK && dsco)
|
||||||
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
IDirectSoundCapture_test(dsco, TRUE, NULL);
|
||||||
|
|
||||||
|
@ -254,7 +254,7 @@ static void test_capture(void)
|
||||||
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultVoicePlayback, &dsco, NULL);
|
rc = DirectSoundCaptureCreate(&DSDEVID_DefaultVoicePlayback, &dsco, NULL);
|
||||||
ok(rc==DSERR_NODRIVER,
|
ok(rc==DSERR_NODRIVER,
|
||||||
"DirectSoundCaptureCreate(DSDEVID_DefaultVoicePlatback) "
|
"DirectSoundCaptureCreate(DSDEVID_DefaultVoicePlatback) "
|
||||||
"should have failed: %08x\n",rc);
|
"should have failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK && dsco)
|
if (rc==DS_OK && dsco)
|
||||||
IDirectSoundCapture_Release(dsco);
|
IDirectSoundCapture_Release(dsco);
|
||||||
}
|
}
|
||||||
|
@ -286,18 +286,18 @@ static BOOL capture_buffer_service(capture_state_t* state)
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_GetCurrentPosition(state->dscbo,&capture_pos,
|
rc=IDirectSoundCaptureBuffer_GetCurrentPosition(state->dscbo,&capture_pos,
|
||||||
&read_pos);
|
&read_pos);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCurrentPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCurrentPosition() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_Lock(state->dscbo,state->offset,state->size,
|
rc=IDirectSoundCaptureBuffer_Lock(state->dscbo,state->offset,state->size,
|
||||||
&ptr1,&len1,&ptr2,&len2,0);
|
&ptr1,&len1,&ptr2,&len2,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Lock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Lock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_Unlock(state->dscbo,ptr1,len1,ptr2,len2);
|
rc=IDirectSoundCaptureBuffer_Unlock(state->dscbo,ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Unlock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Unlock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
|
@ -319,19 +319,19 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
/* Private dsound.dll: Error: Invalid caps pointer */
|
/* Private dsound.dll: Error: Invalid caps pointer */
|
||||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,0);
|
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
||||||
"have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
/* Private dsound.dll: Error: Invalid caps pointer */
|
/* Private dsound.dll: Error: Invalid caps pointer */
|
||||||
dscbcaps.dwSize=0;
|
dscbcaps.dwSize=0;
|
||||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
||||||
"have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
dscbcaps.dwSize=sizeof(dscbcaps);
|
dscbcaps.dwSize=sizeof(dscbcaps);
|
||||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Caps: size = %d flags=0x%08x buffer size=%d\n",
|
trace(" Caps: size = %ld flags=0x%08lx buffer size=%ld\n",
|
||||||
dscbcaps.dwSize,dscbcaps.dwFlags,dscbcaps.dwBufferBytes);
|
dscbcaps.dwSize,dscbcaps.dwFlags,dscbcaps.dwBufferBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -340,17 +340,17 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
* be non-NULL */
|
* be non-NULL */
|
||||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,NULL);
|
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetFormat() should "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetFormat() should "
|
||||||
"have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
size=0;
|
size=0;
|
||||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,&size);
|
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,&size);
|
||||||
ok(rc==DS_OK && size!=0,"IDirectSoundCaptureBuffer_GetFormat() should "
|
ok(rc==DS_OK && size!=0,"IDirectSoundCaptureBuffer_GetFormat() should "
|
||||||
"have returned the needed size: rc=%08x, size=%d\n", rc,size);
|
"have returned the needed size: rc=%08lx, size=%ld\n", rc,size);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,&wfx,sizeof(wfx),NULL);
|
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,&wfx,sizeof(wfx),NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetFormat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetFormat() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Format: tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace(" Format: tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||||
}
|
}
|
||||||
|
@ -358,12 +358,12 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
/* Private dsound.dll: Error: Invalid status pointer */
|
/* Private dsound.dll: Error: Invalid status pointer */
|
||||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,0);
|
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetStatus() should "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetStatus() should "
|
||||||
"have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Status=0x%04x\n",status);
|
trace(" Status=0x%04lx\n",status);
|
||||||
}
|
}
|
||||||
|
|
||||||
ZeroMemory(&state, sizeof(state));
|
ZeroMemory(&state, sizeof(state));
|
||||||
|
@ -377,7 +377,7 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
rc=IDirectSoundCaptureBuffer_QueryInterface(dscbo,&IID_IDirectSoundNotify,
|
rc=IDirectSoundCaptureBuffer_QueryInterface(dscbo,&IID_IDirectSoundNotify,
|
||||||
(void **)&(state.notify));
|
(void **)&(state.notify));
|
||||||
ok((rc==DS_OK)&&(state.notify!=NULL),
|
ok((rc==DS_OK)&&(state.notify!=NULL),
|
||||||
"IDirectSoundCaptureBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundCaptureBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
|
|
||||||
for (i = 0; i < TIMESTAMP_NOTIFICATIONS; i++) {
|
for (i = 0; i < TIMESTAMP_NOTIFICATIONS; i++) {
|
||||||
state.posnotify[i].dwOffset = (i * state.size) + state.size - 1;
|
state.posnotify[i].dwOffset = (i * state.size) + state.size - 1;
|
||||||
|
@ -389,32 +389,32 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
|
|
||||||
rc = IDirectSoundNotify_SetNotificationPositions(state.notify, TOTAL_NOTIFICATIONS,
|
rc = IDirectSoundNotify_SetNotificationPositions(state.notify, TOTAL_NOTIFICATIONS,
|
||||||
state.posnotify);
|
state.posnotify);
|
||||||
ok(rc==DS_OK,"IDirectSoundNotify_SetNotificationPositions() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundNotify_SetNotificationPositions() failed: %08lx\n", rc);
|
||||||
|
|
||||||
ref=IDirectSoundNotify_Release(state.notify);
|
ref=IDirectSoundNotify_Release(state.notify);
|
||||||
ok(ref==0,"IDirectSoundNotify_Release(): has %d references, should have "
|
ok(ref==0,"IDirectSoundNotify_Release(): has %d references, should have "
|
||||||
"0\n",ref);
|
"0\n",ref);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_Start(dscbo,DSCBSTART_LOOPING);
|
rc=IDirectSoundCaptureBuffer_Start(dscbo,DSCBSTART_LOOPING);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Start() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Start() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_Start(dscbo,0);
|
rc=IDirectSoundCaptureBuffer_Start(dscbo,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Start() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Start() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
ok(status==(DSCBSTATUS_CAPTURING|DSCBSTATUS_LOOPING) || broken(status==DSCBSTATUS_CAPTURING),
|
ok(status==(DSCBSTATUS_CAPTURING|DSCBSTATUS_LOOPING) || broken(status==DSCBSTATUS_CAPTURING),
|
||||||
"GetStatus: bad status: %x\n",status);
|
"GetStatus: bad status: %lx\n",status);
|
||||||
|
|
||||||
if (record) {
|
if (record) {
|
||||||
/* wait for timestamp notifications */
|
/* wait for timestamp notifications */
|
||||||
for (i = 0; i < (TIMESTAMP_NOTIFICATIONS * 2); i++) {
|
for (i = 0; i < (TIMESTAMP_NOTIFICATIONS * 2); i++) {
|
||||||
rc = WaitForMultipleObjects(TOTAL_NOTIFICATIONS, state.event, FALSE, 3000);
|
rc = WaitForMultipleObjects(TOTAL_NOTIFICATIONS, state.event, FALSE, 3000);
|
||||||
ok(rc == (WAIT_OBJECT_0 + (i % TIMESTAMP_NOTIFICATIONS)),
|
ok(rc == (WAIT_OBJECT_0 + (i % TIMESTAMP_NOTIFICATIONS)),
|
||||||
"WaitForMultipleObjects failed: 0x%x\n",rc);
|
"WaitForMultipleObjects failed: 0x%lx\n",rc);
|
||||||
if (rc != (WAIT_OBJECT_0 + (i % TIMESTAMP_NOTIFICATIONS))) {
|
if (rc != (WAIT_OBJECT_0 + (i % TIMESTAMP_NOTIFICATIONS))) {
|
||||||
ok((rc==WAIT_TIMEOUT)||(rc==WAIT_FAILED),
|
ok((rc==WAIT_TIMEOUT)||(rc==WAIT_FAILED),
|
||||||
"Wrong notification: should be %d, got %d\n",
|
"Wrong notification: should be %d, got %ld\n",
|
||||||
i % TIMESTAMP_NOTIFICATIONS, rc - WAIT_OBJECT_0);
|
i % TIMESTAMP_NOTIFICATIONS, rc - WAIT_OBJECT_0);
|
||||||
}
|
}
|
||||||
if (!capture_buffer_service(&state))
|
if (!capture_buffer_service(&state))
|
||||||
|
@ -423,14 +423,14 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
||||||
|
|
||||||
}
|
}
|
||||||
rc=IDirectSoundCaptureBuffer_Stop(dscbo);
|
rc=IDirectSoundCaptureBuffer_Stop(dscbo);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Stop() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Stop() failed: %08lx\n", rc);
|
||||||
|
|
||||||
/* wait for stop notification */
|
/* wait for stop notification */
|
||||||
rc = WaitForSingleObject(state.event[TIMESTAMP_NOTIFICATIONS], 3000);
|
rc = WaitForSingleObject(state.event[TIMESTAMP_NOTIFICATIONS], 3000);
|
||||||
ok(rc == WAIT_OBJECT_0, "WaitForSingleObject failed: 0x%x\n", rc);
|
ok(rc == WAIT_OBJECT_0, "WaitForSingleObject failed: 0x%lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundCaptureBuffer_Stop(dscbo);
|
rc=IDirectSoundCaptureBuffer_Stop(dscbo);
|
||||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Stop() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Stop() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
|
@ -449,11 +449,11 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
trace("*** Testing %s - %s ***\n",lpcstrDescription,lpcstrModule);
|
trace("*** Testing %s - %s ***\n",lpcstrDescription,lpcstrModule);
|
||||||
rc = DirectSoundCaptureCreate(lpGuid, NULL, NULL);
|
rc = DirectSoundCaptureCreate(lpGuid, NULL, NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"DirectSoundCaptureCreate() should have "
|
ok(rc==DSERR_INVALIDPARAM,"DirectSoundCaptureCreate() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc = DirectSoundCaptureCreate(lpGuid, &dsco, NULL);
|
rc = DirectSoundCaptureCreate(lpGuid, &dsco, NULL);
|
||||||
ok((rc==DS_OK)||(rc==DSERR_NODRIVER)||(rc==E_FAIL)||(rc==DSERR_ALLOCATED),
|
ok((rc==DS_OK)||(rc==DSERR_NODRIVER)||(rc==E_FAIL)||(rc==DSERR_ALLOCATED),
|
||||||
"DirectSoundCaptureCreate() failed: %08x\n",rc);
|
"DirectSoundCaptureCreate() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==DSERR_NODRIVER)
|
if (rc==DSERR_NODRIVER)
|
||||||
trace(" No Driver\n");
|
trace(" No Driver\n");
|
||||||
|
@ -467,19 +467,19 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
/* Private dsound.dll: Error: Invalid caps buffer */
|
/* Private dsound.dll: Error: Invalid caps buffer */
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco,NULL);
|
rc=IDirectSoundCapture_GetCaps(dsco,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* Private dsound.dll: Error: Invalid caps buffer */
|
/* Private dsound.dll: Error: Invalid caps buffer */
|
||||||
dsccaps.dwSize=0;
|
dsccaps.dwSize=0;
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
dsccaps.dwSize=sizeof(dsccaps);
|
dsccaps.dwSize=sizeof(dsccaps);
|
||||||
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundCapture_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundCapture_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Caps: size=%d flags=0x%08x formats=%05x channels=%d\n",
|
trace(" Caps: size=%ld flags=0x%08lx formats=%05lx channels=%ld\n",
|
||||||
dsccaps.dwSize,dsccaps.dwFlags,dsccaps.dwFormats,
|
dsccaps.dwSize,dsccaps.dwFlags,dsccaps.dwFormats,
|
||||||
dsccaps.dwChannels);
|
dsccaps.dwChannels);
|
||||||
}
|
}
|
||||||
|
@ -494,7 +494,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
bufdesc.lpwfxFormat=NULL;
|
bufdesc.lpwfxFormat=NULL;
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||||
|
@ -511,7 +511,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
bufdesc.lpwfxFormat=NULL;
|
bufdesc.lpwfxFormat=NULL;
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||||
|
@ -529,7 +529,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
bufdesc.lpwfxFormat=&wfx;
|
bufdesc.lpwfxFormat=&wfx;
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||||
|
@ -547,7 +547,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
bufdesc.lpwfxFormat=&wfx;
|
bufdesc.lpwfxFormat=&wfx;
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||||
"should have returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"should have returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||||
|
@ -571,7 +571,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
|| rc==DSERR_BADFORMAT || rc==DSERR_INVALIDCALL || rc==DSERR_NODRIVER
|
|| rc==DSERR_BADFORMAT || rc==DSERR_INVALIDCALL || rc==DSERR_NODRIVER
|
||||||
|| rc==DSERR_ALLOCATED || rc==E_INVALIDARG || rc==E_FAIL,
|
|| rc==DSERR_ALLOCATED || rc==E_INVALIDARG || rc==E_FAIL,
|
||||||
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
|
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
|
||||||
"%s capture buffer: %08x\n",format_string(&wfx),rc);
|
"%s capture buffer: %08lx\n",format_string(&wfx),rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
|
@ -599,7 +599,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
(DSCBUFFERDESC*)&bufdesc1,&dscbo,NULL);
|
(DSCBUFFERDESC*)&bufdesc1,&dscbo,NULL);
|
||||||
ok(rc==DS_OK || broken(rc==DSERR_INVALIDPARAM),
|
ok(rc==DS_OK || broken(rc==DSERR_INVALIDPARAM),
|
||||||
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
|
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
|
||||||
"%s capture buffer: %08x\n",format_string(&wfx), rc);
|
"%s capture buffer: %08lx\n",format_string(&wfx), rc);
|
||||||
if (rc==DSERR_INVALIDPARAM) {
|
if (rc==DSERR_INVALIDPARAM) {
|
||||||
skip("broken driver\n");
|
skip("broken driver\n");
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
@ -634,7 +634,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok((rc==DS_OK)&&(dscbo!=NULL),"IDirectSoundCapture_CreateCaptureBuffer() "
|
ok((rc==DS_OK)&&(dscbo!=NULL),"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||||
"failed to create a capture buffer: %08x\n",rc);
|
"failed to create a capture buffer: %08lx\n",rc);
|
||||||
if ((rc==DS_OK)&&(dscbo!=NULL)) {
|
if ((rc==DS_OK)&&(dscbo!=NULL)) {
|
||||||
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
||||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||||
|
@ -658,7 +658,7 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
||||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||||
ok(rc!=DS_OK,"IDirectSoundCapture_CreateCaptureBuffer() should have failed "
|
ok(rc!=DS_OK,"IDirectSoundCapture_CreateCaptureBuffer() should have failed "
|
||||||
"at 2 MHz %08x\n",rc);
|
"at 2 MHz %08lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
|
@ -675,7 +675,7 @@ static void test_enumerate(void)
|
||||||
{
|
{
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
rc = DirectSoundCaptureEnumerateA(dscenum_callback, NULL);
|
rc = DirectSoundCaptureEnumerateA(dscenum_callback, NULL);
|
||||||
ok(rc==DS_OK,"DirectSoundCaptureEnumerateA() failed: %08x\n", rc);
|
ok(rc==DS_OK,"DirectSoundCaptureEnumerateA() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void test_COM(void)
|
static void test_COM(void)
|
||||||
|
@ -691,7 +691,7 @@ static void test_COM(void)
|
||||||
|
|
||||||
hr = DirectSoundCaptureCreate(NULL, &dsc, (IUnknown *)0xdeadbeef);
|
hr = DirectSoundCaptureCreate(NULL, &dsc, (IUnknown *)0xdeadbeef);
|
||||||
ok(hr == DSERR_NOAGGREGATION,
|
ok(hr == DSERR_NOAGGREGATION,
|
||||||
"DirectSoundCaptureCreate failed: %08x, expected DSERR_NOAGGREGATION\n", hr);
|
"DirectSoundCaptureCreate failed: %08lx, expected DSERR_NOAGGREGATION\n", hr);
|
||||||
ok(dsc == (IDirectSoundCapture*)0xdeadbeef, "dsc = %p\n", dsc);
|
ok(dsc == (IDirectSoundCapture*)0xdeadbeef, "dsc = %p\n", dsc);
|
||||||
|
|
||||||
hr = DirectSoundCaptureCreate(NULL, &dsc, NULL);
|
hr = DirectSoundCaptureCreate(NULL, &dsc, NULL);
|
||||||
|
@ -699,15 +699,15 @@ static void test_COM(void)
|
||||||
skip("No driver\n");
|
skip("No driver\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ok(hr == DS_OK, "DirectSoundCaptureCreate failed: %08x, expected DS_OK\n", hr);
|
ok(hr == DS_OK, "DirectSoundCaptureCreate failed: %08lx, expected DS_OK\n", hr);
|
||||||
|
|
||||||
/* Different refcount for IDirectSoundCapture and for IUnknown */
|
/* Different refcount for IDirectSoundCapture and for IUnknown */
|
||||||
refcount = IDirectSoundCapture_AddRef(dsc);
|
refcount = IDirectSoundCapture_AddRef(dsc);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
hr = IDirectSoundCapture_QueryInterface(dsc, &IID_IUnknown, (void**)&unk);
|
hr = IDirectSoundCapture_QueryInterface(dsc, &IID_IUnknown, (void**)&unk);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08lx\n", hr);
|
||||||
refcount = IUnknown_AddRef(unk);
|
refcount = IUnknown_AddRef(unk);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
IUnknown_Release(unk);
|
IUnknown_Release(unk);
|
||||||
IUnknown_Release(unk);
|
IUnknown_Release(unk);
|
||||||
IDirectSoundCapture_Release(dsc);
|
IDirectSoundCapture_Release(dsc);
|
||||||
|
@ -725,37 +725,37 @@ static void test_COM(void)
|
||||||
hr = IDirectSoundCapture_CreateCaptureBuffer(dsc, &bufdesc, &buffer, (IUnknown*)0xdeadbeef);
|
hr = IDirectSoundCapture_CreateCaptureBuffer(dsc, &bufdesc, &buffer, (IUnknown*)0xdeadbeef);
|
||||||
}
|
}
|
||||||
ok(hr == DSERR_NOAGGREGATION,
|
ok(hr == DSERR_NOAGGREGATION,
|
||||||
"IDirectSoundCapture_CreateCaptureBuffer failed: %08x, expected DSERR_NOAGGREGATION\n", hr);
|
"IDirectSoundCapture_CreateCaptureBuffer failed: %08lx, expected DSERR_NOAGGREGATION\n", hr);
|
||||||
ok(buffer == (IDirectSoundCaptureBuffer*)0xdeadbeef || !buffer /* Win2k without DirectX9 */,
|
ok(buffer == (IDirectSoundCaptureBuffer*)0xdeadbeef || !buffer /* Win2k without DirectX9 */,
|
||||||
"buffer = %p\n", buffer);
|
"buffer = %p\n", buffer);
|
||||||
|
|
||||||
hr = IDirectSoundCapture_CreateCaptureBuffer(dsc, &bufdesc, &buffer, NULL);
|
hr = IDirectSoundCapture_CreateCaptureBuffer(dsc, &bufdesc, &buffer, NULL);
|
||||||
ok(hr == DS_OK, "IDirectSoundCapture_CreateCaptureBuffer failed: %08x, expected DS_OK\n", hr);
|
ok(hr == DS_OK, "IDirectSoundCapture_CreateCaptureBuffer failed: %08lx, expected DS_OK\n", hr);
|
||||||
|
|
||||||
/* IDirectSoundCaptureBuffer and IDirectSoundNotify have separate refcounts */
|
/* IDirectSoundCaptureBuffer and IDirectSoundNotify have separate refcounts */
|
||||||
IDirectSoundCaptureBuffer_AddRef(buffer);
|
IDirectSoundCaptureBuffer_AddRef(buffer);
|
||||||
refcount = IDirectSoundCaptureBuffer_AddRef(buffer);
|
refcount = IDirectSoundCaptureBuffer_AddRef(buffer);
|
||||||
ok(refcount == 3, "IDirectSoundCaptureBuffer refcount is %u, expected 3\n", refcount);
|
ok(refcount == 3, "IDirectSoundCaptureBuffer refcount is %lu, expected 3\n", refcount);
|
||||||
hr = IDirectSoundCaptureBuffer_QueryInterface(buffer, &IID_IDirectSoundNotify, (void**)¬ify);
|
hr = IDirectSoundCaptureBuffer_QueryInterface(buffer, &IID_IDirectSoundNotify, (void**)¬ify);
|
||||||
ok(hr == DS_OK, "IDirectSoundCapture_QueryInterface failed: %08x, expected DS_OK\n", hr);
|
ok(hr == DS_OK, "IDirectSoundCapture_QueryInterface failed: %08lx, expected DS_OK\n", hr);
|
||||||
refcount = IDirectSoundNotify_AddRef(notify);
|
refcount = IDirectSoundNotify_AddRef(notify);
|
||||||
ok(refcount == 2, "IDirectSoundNotify refcount is %u, expected 2\n", refcount);
|
ok(refcount == 2, "IDirectSoundNotify refcount is %lu, expected 2\n", refcount);
|
||||||
IDirectSoundCaptureBuffer_AddRef(buffer);
|
IDirectSoundCaptureBuffer_AddRef(buffer);
|
||||||
refcount = IDirectSoundCaptureBuffer_Release(buffer);
|
refcount = IDirectSoundCaptureBuffer_Release(buffer);
|
||||||
ok(refcount == 3, "IDirectSoundCaptureBuffer refcount is %u, expected 3\n", refcount);
|
ok(refcount == 3, "IDirectSoundCaptureBuffer refcount is %lu, expected 3\n", refcount);
|
||||||
|
|
||||||
/* Release IDirectSoundCaptureBuffer while keeping IDirectSoundNotify alive */
|
/* Release IDirectSoundCaptureBuffer while keeping IDirectSoundNotify alive */
|
||||||
while (IDirectSoundCaptureBuffer_Release(buffer) > 0);
|
while (IDirectSoundCaptureBuffer_Release(buffer) > 0);
|
||||||
refcount = IDirectSoundNotify_AddRef(notify);
|
refcount = IDirectSoundNotify_AddRef(notify);
|
||||||
ok(refcount == 3, "IDirectSoundNotify refcount is %u, expected 3\n", refcount);
|
ok(refcount == 3, "IDirectSoundNotify refcount is %lu, expected 3\n", refcount);
|
||||||
refcount = IDirectSoundCaptureBuffer_AddRef(buffer);
|
refcount = IDirectSoundCaptureBuffer_AddRef(buffer);
|
||||||
ok(refcount == 1, "IDirectSoundCaptureBuffer refcount is %u, expected 1\n", refcount);
|
ok(refcount == 1, "IDirectSoundCaptureBuffer refcount is %lu, expected 1\n", refcount);
|
||||||
|
|
||||||
while (IDirectSoundNotify_Release(notify) > 0);
|
while (IDirectSoundNotify_Release(notify) > 0);
|
||||||
refcount = IDirectSoundCaptureBuffer_Release(buffer);
|
refcount = IDirectSoundCaptureBuffer_Release(buffer);
|
||||||
ok(refcount == 0, "IDirectSoundCaptureBuffer refcount is %u, expected 0\n", refcount);
|
ok(refcount == 0, "IDirectSoundCaptureBuffer refcount is %lu, expected 0\n", refcount);
|
||||||
refcount = IDirectSoundCapture_Release(dsc);
|
refcount = IDirectSoundCapture_Release(dsc);
|
||||||
ok(refcount == 0, "IDirectSoundCapture refcount is %u, expected 0\n", refcount);
|
ok(refcount == 0, "IDirectSoundCapture refcount is %lu, expected 0\n", refcount);
|
||||||
}
|
}
|
||||||
|
|
||||||
START_TEST(capture)
|
START_TEST(capture)
|
||||||
|
|
|
@ -197,10 +197,10 @@ static int buffer_refill(play_state_t* state, DWORD size)
|
||||||
/* some broken apps like Navyfield mistakenly pass NULL for a ppValue */
|
/* some broken apps like Navyfield mistakenly pass NULL for a ppValue */
|
||||||
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
||||||
&ptr1,NULL,&ptr2,&len2,0);
|
&ptr1,NULL,&ptr2,&len2,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"expected %08x got %08x\n",DSERR_INVALIDPARAM, rc);
|
ok(rc==DSERR_INVALIDPARAM,"expected %08lx got %08lx\n",DSERR_INVALIDPARAM, rc);
|
||||||
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
||||||
&ptr1,&len1,&ptr2,&len2,0);
|
&ptr1,&len1,&ptr2,&len2,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -213,9 +213,9 @@ static int buffer_refill(play_state_t* state, DWORD size)
|
||||||
state->offset=state->written % state->buffer_size;
|
state->offset=state->written % state->buffer_size;
|
||||||
/* some apps blindly pass &ptr1 instead of ptr1 */
|
/* some apps blindly pass &ptr1 instead of ptr1 */
|
||||||
rc=IDirectSoundBuffer_Unlock(state->dsbo,&ptr1,len1,ptr2,len2);
|
rc=IDirectSoundBuffer_Unlock(state->dsbo,&ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDDirectSoundBuffer_Unlock(): expected %08x got %08x, %p %p\n",DSERR_INVALIDPARAM, rc, &ptr1, ptr1);
|
ok(rc==DSERR_INVALIDPARAM, "IDDirectSoundBuffer_Unlock(): expected %08lx got %08lx, %p %p\n",DSERR_INVALIDPARAM, rc, &ptr1, ptr1);
|
||||||
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
return size;
|
return size;
|
||||||
|
@ -230,7 +230,7 @@ static int buffer_silence(play_state_t* state, DWORD size)
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
||||||
&ptr1,&len1,&ptr2,&len2,0);
|
&ptr1,&len1,&ptr2,&len2,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -241,7 +241,7 @@ static int buffer_silence(play_state_t* state, DWORD size)
|
||||||
}
|
}
|
||||||
state->offset=(state->offset+size) % state->buffer_size;
|
state->offset=(state->offset+size) % state->buffer_size;
|
||||||
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
return size;
|
return size;
|
||||||
|
@ -253,7 +253,7 @@ static BOOL buffer_service(play_state_t* state)
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetCurrentPosition(state->dsbo,&play_pos,NULL);
|
rc=IDirectSoundBuffer_GetCurrentPosition(state->dsbo,&play_pos,NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCurrentPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCurrentPosition() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
goto STOP;
|
goto STOP;
|
||||||
}
|
}
|
||||||
|
@ -266,7 +266,7 @@ static BOOL buffer_service(play_state_t* state)
|
||||||
state->played+=play_pos-last_play_pos;
|
state->played+=play_pos-last_play_pos;
|
||||||
|
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("buf size=%d last_play_pos=%d play_pos=%d played=%d / %d\n",
|
trace("buf size=%ld last_play_pos=%ld play_pos=%ld played=%ld / %ld\n",
|
||||||
state->buffer_size,last_play_pos,play_pos,state->played,
|
state->buffer_size,last_play_pos,play_pos,state->played,
|
||||||
state->wave_len);
|
state->wave_len);
|
||||||
|
|
||||||
|
@ -283,7 +283,7 @@ static BOOL buffer_service(play_state_t* state)
|
||||||
buf_free=state->buffer_size-state->offset+play_pos;
|
buf_free=state->buffer_size-state->offset+play_pos;
|
||||||
|
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("offset=%d free=%d written=%d / %d\n",
|
trace("offset=%ld free=%ld written=%ld / %ld\n",
|
||||||
state->offset,buf_free,state->written,state->wave_len);
|
state->offset,buf_free,state->written,state->wave_len);
|
||||||
if (buf_free==0)
|
if (buf_free==0)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -295,14 +295,14 @@ static BOOL buffer_service(play_state_t* state)
|
||||||
goto STOP;
|
goto STOP;
|
||||||
buf_free-=w;
|
buf_free-=w;
|
||||||
if (state->written==state->wave_len && winetest_debug > 1)
|
if (state->written==state->wave_len && winetest_debug > 1)
|
||||||
trace("last sound byte at %d\n",
|
trace("last sound byte at %ld\n",
|
||||||
(state->written % state->buffer_size));
|
(state->written % state->buffer_size));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (buf_free>0) {
|
if (buf_free>0) {
|
||||||
/* Fill with silence */
|
/* Fill with silence */
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("writing %d bytes of silence\n",buf_free);
|
trace("writing %ld bytes of silence\n",buf_free);
|
||||||
if (buffer_silence(state,buf_free)==-1)
|
if (buffer_silence(state,buf_free)==-1)
|
||||||
goto STOP;
|
goto STOP;
|
||||||
}
|
}
|
||||||
|
@ -312,7 +312,7 @@ STOP:
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("stopping playback\n");
|
trace("stopping playback\n");
|
||||||
rc=IDirectSoundBuffer_Stop(state->dsbo);
|
rc=IDirectSoundBuffer_Stop(state->dsbo);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Stop() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Stop() failed: %08lx\n", rc);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -333,7 +333,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
if (set_frequency) {
|
if (set_frequency) {
|
||||||
rc=IDirectSoundBuffer_SetFrequency(*dsbo,frequency);
|
rc=IDirectSoundBuffer_SetFrequency(*dsbo,frequency);
|
||||||
ok(rc==DS_OK||rc==DSERR_CONTROLUNAVAIL,
|
ok(rc==DS_OK||rc==DSERR_CONTROLUNAVAIL,
|
||||||
"IDirectSoundBuffer_SetFrequency() failed to set frequency %08x\n",rc);
|
"IDirectSoundBuffer_SetFrequency() failed to set frequency %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -341,20 +341,20 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
/* DSOUND: Error: Invalid caps pointer */
|
/* DSOUND: Error: Invalid caps pointer */
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,0);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
ZeroMemory(&dsbcaps, sizeof(dsbcaps));
|
ZeroMemory(&dsbcaps, sizeof(dsbcaps));
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid caps pointer */
|
/* DSOUND: Error: Invalid caps pointer */
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
dsbcaps.dwSize=sizeof(dsbcaps);
|
dsbcaps.dwSize=sizeof(dsbcaps);
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Caps: flags=0x%08x size=%d\n",dsbcaps.dwFlags,
|
trace(" Caps: flags=0x%08lx size=%ld\n",dsbcaps.dwFlags,
|
||||||
dsbcaps.dwBufferBytes);
|
dsbcaps.dwBufferBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -362,10 +362,10 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
size=0;
|
size=0;
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,NULL,0,&size);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,NULL,0,&size);
|
||||||
ok(rc==DS_OK && size!=0,"IDirectSoundBuffer_GetFormat() should have "
|
ok(rc==DS_OK && size!=0,"IDirectSoundBuffer_GetFormat() should have "
|
||||||
"returned the needed size: rc=%08x size=%d\n",rc,size);
|
"returned the needed size: rc=%08lx size=%ld\n",rc,size);
|
||||||
|
|
||||||
ok(size == sizeof(WAVEFORMATEX) || size == sizeof(WAVEFORMATEXTENSIBLE),
|
ok(size == sizeof(WAVEFORMATEX) || size == sizeof(WAVEFORMATEXTENSIBLE),
|
||||||
"Expected a correct structure size, got %d\n", size);
|
"Expected a correct structure size, got %ld\n", size);
|
||||||
|
|
||||||
if (size == sizeof(WAVEFORMATEX)) {
|
if (size == sizeof(WAVEFORMATEX)) {
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,size,NULL);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,size,NULL);
|
||||||
|
@ -380,9 +380,9 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(rc==DS_OK,
|
ok(rc==DS_OK,
|
||||||
"IDirectSoundBuffer_GetFormat() failed: %08x\n", rc);
|
"IDirectSoundBuffer_GetFormat() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Format: %s tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace(" Format: %s tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
is_primary ? "Primary" : "Secondary",
|
is_primary ? "Primary" : "Secondary",
|
||||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||||
|
@ -391,45 +391,45 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
/* DSOUND: Error: Invalid frequency buffer */
|
/* DSOUND: Error: Invalid frequency buffer */
|
||||||
rc=IDirectSoundBuffer_GetFrequency(*dsbo,0);
|
rc=IDirectSoundBuffer_GetFrequency(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetFrequency() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetFrequency() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Primary buffers don't support CTRLFREQUENCY */
|
/* DSOUND: Error: Primary buffers don't support CTRLFREQUENCY */
|
||||||
rc=IDirectSoundBuffer_GetFrequency(*dsbo,&freq);
|
rc=IDirectSoundBuffer_GetFrequency(*dsbo,&freq);
|
||||||
ok((rc==DS_OK && !is_primary) || (rc==DSERR_CONTROLUNAVAIL&&is_primary) ||
|
ok((rc==DS_OK && !is_primary) || (rc==DSERR_CONTROLUNAVAIL&&is_primary) ||
|
||||||
(rc==DSERR_CONTROLUNAVAIL&&!(dsbcaps.dwFlags&DSBCAPS_CTRLFREQUENCY)),
|
(rc==DSERR_CONTROLUNAVAIL&&!(dsbcaps.dwFlags&DSBCAPS_CTRLFREQUENCY)),
|
||||||
"IDirectSoundBuffer_GetFrequency() failed: %08x\n",rc);
|
"IDirectSoundBuffer_GetFrequency() failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
DWORD f = set_frequency?frequency:wfx.nSamplesPerSec;
|
DWORD f = set_frequency?frequency:wfx.nSamplesPerSec;
|
||||||
ok(freq==f,"The frequency returned by GetFrequency "
|
ok(freq==f,"The frequency returned by GetFrequency "
|
||||||
"%d does not match the format %d\n",freq,f);
|
"%ld does not match the format %ld\n",freq,f);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid status pointer */
|
/* DSOUND: Error: Invalid status pointer */
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,0);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetStatus() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetStatus() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
ok(status==0,"status=0x%x instead of 0\n",status);
|
ok(status==0,"status=0x%lx instead of 0\n",status);
|
||||||
|
|
||||||
if (is_primary) {
|
if (is_primary) {
|
||||||
DSBCAPS new_dsbcaps;
|
DSBCAPS new_dsbcaps;
|
||||||
/* We must call SetCooperativeLevel to be allowed to call SetFormat */
|
/* We must call SetCooperativeLevel to be allowed to call SetFormat */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid format pointer */
|
/* DSOUND: Error: Invalid format pointer */
|
||||||
rc=IDirectSoundBuffer_SetFormat(*dsbo,0);
|
rc=IDirectSoundBuffer_SetFormat(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_SetFormat() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_SetFormat() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
init_format(&wfx2,WAVE_FORMAT_PCM,11025,16,2);
|
init_format(&wfx2,WAVE_FORMAT_PCM,11025,16,2);
|
||||||
rc=IDirectSoundBuffer_SetFormat(*dsbo,&wfx2);
|
rc=IDirectSoundBuffer_SetFormat(*dsbo,&wfx2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetFormat(%s) failed: %08x\n",
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetFormat(%s) failed: %08lx\n",
|
||||||
format_string(&wfx2), rc);
|
format_string(&wfx2), rc);
|
||||||
|
|
||||||
/* There is no guarantee that SetFormat will actually change the
|
/* There is no guarantee that SetFormat will actually change the
|
||||||
|
@ -437,16 +437,16 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
* supports. So we must re-query the format.
|
* supports. So we must re-query the format.
|
||||||
*/
|
*/
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,sizeof(wfx),NULL);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,sizeof(wfx),NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK &&
|
if (rc==DS_OK &&
|
||||||
(wfx.wFormatTag!=wfx2.wFormatTag ||
|
(wfx.wFormatTag!=wfx2.wFormatTag ||
|
||||||
wfx.nSamplesPerSec!=wfx2.nSamplesPerSec ||
|
wfx.nSamplesPerSec!=wfx2.nSamplesPerSec ||
|
||||||
wfx.wBitsPerSample!=wfx2.wBitsPerSample ||
|
wfx.wBitsPerSample!=wfx2.wBitsPerSample ||
|
||||||
wfx.nChannels!=wfx2.nChannels)) {
|
wfx.nChannels!=wfx2.nChannels)) {
|
||||||
trace("Requested format tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace("Requested format tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
wfx2.wFormatTag,wfx2.nSamplesPerSec,wfx2.wBitsPerSample,
|
wfx2.wFormatTag,wfx2.nSamplesPerSec,wfx2.wBitsPerSample,
|
||||||
wfx2.nChannels,wfx2.nAvgBytesPerSec,wfx2.nBlockAlign);
|
wfx2.nChannels,wfx2.nAvgBytesPerSec,wfx2.nBlockAlign);
|
||||||
trace("Got tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace("Got tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||||
}
|
}
|
||||||
|
@ -454,29 +454,29 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
ZeroMemory(&new_dsbcaps, sizeof(new_dsbcaps));
|
ZeroMemory(&new_dsbcaps, sizeof(new_dsbcaps));
|
||||||
new_dsbcaps.dwSize = sizeof(new_dsbcaps);
|
new_dsbcaps.dwSize = sizeof(new_dsbcaps);
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&new_dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&new_dsbcaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" new Caps: flags=0x%08x size=%d\n",new_dsbcaps.dwFlags,
|
trace(" new Caps: flags=0x%08lx size=%ld\n",new_dsbcaps.dwFlags,
|
||||||
new_dsbcaps.dwBufferBytes);
|
new_dsbcaps.dwBufferBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check for primary buffer size change */
|
/* Check for primary buffer size change */
|
||||||
ok(new_dsbcaps.dwBufferBytes == dsbcaps.dwBufferBytes,
|
ok(new_dsbcaps.dwBufferBytes == dsbcaps.dwBufferBytes,
|
||||||
" buffer size changed after SetFormat() - "
|
" buffer size changed after SetFormat() - "
|
||||||
"previous size was %u, current size is %u\n",
|
"previous size was %lu, current size is %lu\n",
|
||||||
dsbcaps.dwBufferBytes, new_dsbcaps.dwBufferBytes);
|
dsbcaps.dwBufferBytes, new_dsbcaps.dwBufferBytes);
|
||||||
dsbcaps.dwBufferBytes = new_dsbcaps.dwBufferBytes;
|
dsbcaps.dwBufferBytes = new_dsbcaps.dwBufferBytes;
|
||||||
|
|
||||||
/* Check for primary buffer flags change */
|
/* Check for primary buffer flags change */
|
||||||
ok(new_dsbcaps.dwFlags == dsbcaps.dwFlags,
|
ok(new_dsbcaps.dwFlags == dsbcaps.dwFlags,
|
||||||
" flags changed after SetFormat() - "
|
" flags changed after SetFormat() - "
|
||||||
"previous flags were %08x, current flags are %08x\n",
|
"previous flags were %08lx, current flags are %08lx\n",
|
||||||
dsbcaps.dwFlags, new_dsbcaps.dwFlags);
|
dsbcaps.dwFlags, new_dsbcaps.dwFlags);
|
||||||
|
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (play) {
|
if (play) {
|
||||||
|
@ -490,12 +490,12 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
|
|
||||||
if (winetest_interactive) {
|
if (winetest_interactive) {
|
||||||
if (set_frequency)
|
if (set_frequency)
|
||||||
trace(" Playing %g second 440Hz tone at %dx%dx%d with a "
|
trace(" Playing %g second 440Hz tone at %ldx%dx%d with a "
|
||||||
"frequency of %d (%dHz)\n", duration,
|
"frequency of %ld (%ldHz)\n", duration,
|
||||||
wfx.nSamplesPerSec, wfx.wBitsPerSample, wfx.nChannels,
|
wfx.nSamplesPerSec, wfx.wBitsPerSample, wfx.nChannels,
|
||||||
frequency, (440 * frequency) / wfx.nSamplesPerSec);
|
frequency, (440 * frequency) / wfx.nSamplesPerSec);
|
||||||
else
|
else
|
||||||
trace(" Playing %g second 440Hz tone at %dx%dx%d\n", duration,
|
trace(" Playing %g second 440Hz tone at %ldx%dx%d\n", duration,
|
||||||
wfx.nSamplesPerSec, wfx.wBitsPerSample, wfx.nChannels);
|
wfx.nSamplesPerSec, wfx.wBitsPerSample, wfx.nChannels);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -506,7 +506,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),
|
||||||
DSSCL_WRITEPRIMARY);
|
DSSCL_WRITEPRIMARY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_WRITEPRIMARY) "
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_WRITEPRIMARY) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -515,7 +515,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_QueryInterface(*dsbo,&IID_IDirectSound3DBuffer,
|
rc=IDirectSoundBuffer_QueryInterface(*dsbo,&IID_IDirectSound3DBuffer,
|
||||||
(LPVOID *)&buffer);
|
(LPVOID *)&buffer);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -523,7 +523,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSoundBuffer_QueryInterface(*dsbo, &IID_IDirectSoundBuffer,
|
rc=IDirectSoundBuffer_QueryInterface(*dsbo, &IID_IDirectSoundBuffer,
|
||||||
(LPVOID *)&temp_buffer);
|
(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==*dsbo,"COM interface broken: %p != %p\n",
|
ok(temp_buffer==*dsbo,"COM interface broken: %p != %p\n",
|
||||||
temp_buffer,*dsbo);
|
temp_buffer,*dsbo);
|
||||||
ref=IDirectSoundBuffer_Release(temp_buffer);
|
ref=IDirectSoundBuffer_Release(temp_buffer);
|
||||||
|
@ -538,37 +538,37 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
&IID_IDirectSoundBuffer,
|
&IID_IDirectSoundBuffer,
|
||||||
(LPVOID *)dsbo);
|
(LPVOID *)dsbo);
|
||||||
ok(rc==DS_OK && *dsbo!=NULL,"IDirectSound3DBuffer_QueryInterface() "
|
ok(rc==DS_OK && *dsbo!=NULL,"IDirectSound3DBuffer_QueryInterface() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,0);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
ZeroMemory(&buffer_param, sizeof(buffer_param));
|
ZeroMemory(&buffer_param, sizeof(buffer_param));
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
buffer_param.dwSize=sizeof(buffer_param);
|
buffer_param.dwSize=sizeof(buffer_param);
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3DBuffer_GetAllParameters() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3DBuffer_GetAllParameters() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
if (set_volume) {
|
if (set_volume) {
|
||||||
if (dsbcaps.dwFlags & DSBCAPS_CTRLVOLUME) {
|
if (dsbcaps.dwFlags & DSBCAPS_CTRLVOLUME) {
|
||||||
LONG val;
|
LONG val;
|
||||||
rc=IDirectSoundBuffer_GetVolume(*dsbo,&val);
|
rc=IDirectSoundBuffer_GetVolume(*dsbo,&val);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(*dsbo,volume);
|
rc=IDirectSoundBuffer_SetVolume(*dsbo,volume);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume() failed: %08lx\n", rc);
|
||||||
} else {
|
} else {
|
||||||
/* DSOUND: Error: Buffer does not have CTRLVOLUME */
|
/* DSOUND: Error: Buffer does not have CTRLVOLUME */
|
||||||
rc=IDirectSoundBuffer_GetVolume(*dsbo,&volume);
|
rc=IDirectSoundBuffer_GetVolume(*dsbo,&volume);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetVolume() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetVolume() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -576,15 +576,15 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
if (dsbcaps.dwFlags & DSBCAPS_CTRLPAN) {
|
if (dsbcaps.dwFlags & DSBCAPS_CTRLPAN) {
|
||||||
LONG val;
|
LONG val;
|
||||||
rc=IDirectSoundBuffer_GetPan(*dsbo,&val);
|
rc=IDirectSoundBuffer_GetPan(*dsbo,&val);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetPan(*dsbo,pan);
|
rc=IDirectSoundBuffer_SetPan(*dsbo,pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed: %08lx\n", rc);
|
||||||
} else {
|
} else {
|
||||||
/* DSOUND: Error: Buffer does not have CTRLPAN */
|
/* DSOUND: Error: Buffer does not have CTRLPAN */
|
||||||
rc=IDirectSoundBuffer_GetPan(*dsbo,&pan);
|
rc=IDirectSoundBuffer_GetPan(*dsbo,&pan);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -593,14 +593,14 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
&length1, NULL, NULL,
|
&length1, NULL, NULL,
|
||||||
DSBLOCK_ENTIREBUFFER);
|
DSBLOCK_ENTIREBUFFER);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
|
|
||||||
/* try a size larger than the buffer */
|
/* try a size larger than the buffer */
|
||||||
rc = IDirectSoundBuffer_Lock(*dsbo, 0, dsbcaps.dwBufferBytes + 1,
|
rc = IDirectSoundBuffer_Lock(*dsbo, 0, dsbcaps.dwBufferBytes + 1,
|
||||||
&buffer1, &length1, NULL, NULL,
|
&buffer1, &length1, NULL, NULL,
|
||||||
DSBLOCK_FROMWRITECURSOR);
|
DSBLOCK_FROMWRITECURSOR);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
|
|
||||||
if (set_frequency)
|
if (set_frequency)
|
||||||
state.wave=wave_generate_la(&wfx,(duration*frequency)/wfx.nSamplesPerSec,&state.wave_len,ieee);
|
state.wave=wave_generate_la(&wfx,(duration*frequency)/wfx.nSamplesPerSec,&state.wave_len,ieee);
|
||||||
|
@ -614,12 +614,12 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
buffer_refill(&state,state.buffer_size);
|
buffer_refill(&state,state.buffer_size);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_Play(*dsbo,0,0,DSBPLAY_LOOPING);
|
rc=IDirectSoundBuffer_Play(*dsbo,0,0,DSBPLAY_LOOPING);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Play() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Play() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
ok(status==(DSBSTATUS_PLAYING|DSBSTATUS_LOOPING),
|
ok(status==(DSBSTATUS_PLAYING|DSBSTATUS_LOOPING),
|
||||||
"GetStatus: bad status: %x\n",status);
|
"GetStatus: bad status: %lx\n",status);
|
||||||
|
|
||||||
if (listener) {
|
if (listener) {
|
||||||
ZeroMemory(&listener_param,sizeof(listener_param));
|
ZeroMemory(&listener_param,sizeof(listener_param));
|
||||||
|
@ -627,7 +627,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,
|
rc=IDirectSound3DListener_GetAllParameters(listener,
|
||||||
&listener_param);
|
&listener_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (move_listener) {
|
if (move_listener) {
|
||||||
listener_param.vPosition.x = -5.0f;
|
listener_param.vPosition.x = -5.0f;
|
||||||
listener_param.vVelocity.x = (float)(10.0/duration);
|
listener_param.vVelocity.x = (float)(10.0/duration);
|
||||||
|
@ -635,7 +635,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSound3DListener_SetAllParameters(listener,
|
rc=IDirectSound3DListener_SetAllParameters(listener,
|
||||||
&listener_param,
|
&listener_param,
|
||||||
DS3D_IMMEDIATE);
|
DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
if (buffer3d) {
|
if (buffer3d) {
|
||||||
if (move_sound) {
|
if (move_sound) {
|
||||||
|
@ -645,7 +645,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
buffer_param.flMinDistance = 10;
|
buffer_param.flMinDistance = 10;
|
||||||
rc=IDirectSound3DBuffer_SetAllParameters(buffer,&buffer_param,
|
rc=IDirectSound3DBuffer_SetAllParameters(buffer,&buffer_param,
|
||||||
DS3D_IMMEDIATE);
|
DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
start_time=GetTickCount();
|
start_time=GetTickCount();
|
||||||
|
@ -659,7 +659,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSound3DListener_SetPosition(listener,
|
rc=IDirectSound3DListener_SetPosition(listener,
|
||||||
listener_param.vPosition.x,listener_param.vPosition.y,
|
listener_param.vPosition.x,listener_param.vPosition.y,
|
||||||
listener_param.vPosition.z,DS3D_IMMEDIATE);
|
listener_param.vPosition.z,DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
if (buffer3d && move_sound) {
|
if (buffer3d && move_sound) {
|
||||||
buffer_param.vPosition.x = (float)(100-200.0*(now-start_time)/1000/duration);
|
buffer_param.vPosition.x = (float)(100-200.0*(now-start_time)/1000/duration);
|
||||||
|
@ -668,13 +668,13 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
rc=IDirectSound3DBuffer_SetPosition(buffer,
|
rc=IDirectSound3DBuffer_SetPosition(buffer,
|
||||||
buffer_param.vPosition.x,buffer_param.vPosition.y,
|
buffer_param.vPosition.x,buffer_param.vPosition.y,
|
||||||
buffer_param.vPosition.z,DS3D_IMMEDIATE);
|
buffer_param.vPosition.z,DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Check the sound duration was within 10% of the expected value */
|
/* Check the sound duration was within 10% of the expected value */
|
||||||
now=GetTickCount();
|
now=GetTickCount();
|
||||||
ok(fabs(1000*duration-now+start_time)<=100*duration,
|
ok(fabs(1000*duration-now+start_time)<=100*duration,
|
||||||
"The sound played for %d ms instead of %g ms\n",
|
"The sound played for %ld ms instead of %g ms\n",
|
||||||
now-start_time,1000*duration);
|
now-start_time,1000*duration);
|
||||||
|
|
||||||
HeapFree(GetProcessHeap(), 0, state.wave);
|
HeapFree(GetProcessHeap(), 0, state.wave);
|
||||||
|
@ -683,7 +683,7 @@ void test_buffer(LPDIRECTSOUND dso, LPDIRECTSOUNDBUFFER *dsbo,
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) "
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
if (buffer3d) {
|
if (buffer3d) {
|
||||||
ref=IDirectSound3DBuffer_Release(buffer);
|
ref=IDirectSound3DBuffer_Release(buffer);
|
||||||
|
@ -708,14 +708,14 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before creating primary buffer */
|
/* We must call SetCooperativeLevel before creating primary buffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -728,12 +728,12 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
bufdesc.dwFlags|=(DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN);
|
bufdesc.dwFlags|=(DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN);
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok((rc==DS_OK && primary!=NULL) || (rc==DSERR_CONTROLUNAVAIL),
|
ok((rc==DS_OK && primary!=NULL) || (rc==DSERR_CONTROLUNAVAIL),
|
||||||
"IDirectSound_CreateSoundBuffer() failed to create a %sprimary buffer: %08x\n",has_3d?"3D ":"", rc);
|
"IDirectSound_CreateSoundBuffer() failed to create a %sprimary buffer: %08lx\n",has_3d?"3D ":"", rc);
|
||||||
if (rc==DSERR_CONTROLUNAVAIL)
|
if (rc==DSERR_CONTROLUNAVAIL)
|
||||||
trace(" No Primary\n");
|
trace(" No Primary\n");
|
||||||
else if (rc==DS_OK && primary!=NULL) {
|
else if (rc==DS_OK && primary!=NULL) {
|
||||||
rc=IDirectSoundBuffer_GetFormat(primary,&wfx1,sizeof(wfx1),NULL);
|
rc=IDirectSoundBuffer_GetFormat(primary,&wfx1,sizeof(wfx1),NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer8_Getformat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer8_Getformat() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT1;
|
goto EXIT1;
|
||||||
|
|
||||||
|
@ -742,7 +742,7 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
&IID_IDirectSound3DListener,
|
&IID_IDirectSound3DListener,
|
||||||
(void **)&listener);
|
(void **)&listener);
|
||||||
ok(rc==DS_OK && listener!=NULL,
|
ok(rc==DS_OK && listener!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed to get a 3D listener: %08x\n",rc);
|
"IDirectSoundBuffer_QueryInterface() failed to get a 3D listener: %08lx\n",rc);
|
||||||
ref=IDirectSoundBuffer_Release(primary);
|
ref=IDirectSoundBuffer_Release(primary);
|
||||||
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
||||||
"should have 0\n",ref);
|
"should have 0\n",ref);
|
||||||
|
@ -753,20 +753,20 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,0);
|
rc=IDirectSound3DListener_GetAllParameters(listener,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound3dListener_GetAllParameters() should have "
|
"IDirectSound3dListener_GetAllParameters() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,
|
rc=IDirectSound3DListener_GetAllParameters(listener,
|
||||||
&listener_param);
|
&listener_param);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound3dListener_GetAllParameters() should have "
|
"IDirectSound3dListener_GetAllParameters() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
listener_param.dwSize=sizeof(listener_param);
|
listener_param.dwSize=sizeof(listener_param);
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,
|
rc=IDirectSound3DListener_GetAllParameters(listener,
|
||||||
&listener_param);
|
&listener_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
} else {
|
} else {
|
||||||
ok(listener==NULL, "IDirectSoundBuffer_QueryInterface() "
|
ok(listener==NULL, "IDirectSoundBuffer_QueryInterface() "
|
||||||
"failed but returned a listener anyway\n");
|
"failed but returned a listener anyway\n");
|
||||||
|
@ -793,8 +793,8 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
wfx.nBlockAlign);
|
wfx.nBlockAlign);
|
||||||
bufdesc.lpwfxFormat=&wfx;
|
bufdesc.lpwfxFormat=&wfx;
|
||||||
if (winetest_interactive) {
|
if (winetest_interactive) {
|
||||||
trace(" Testing a %s%ssecondary buffer %s%s%s%sat %dx%dx%d "
|
trace(" Testing a %s%ssecondary buffer %s%s%s%sat %ldx%dx%d "
|
||||||
"with a primary buffer at %dx%dx%d\n",
|
"with a primary buffer at %ldx%dx%d\n",
|
||||||
has_3dbuffer?"3D ":"",
|
has_3dbuffer?"3D ":"",
|
||||||
has_duplicate?"duplicated ":"",
|
has_duplicate?"duplicated ":"",
|
||||||
listener!=NULL||move_sound?"with ":"",
|
listener!=NULL||move_sound?"with ":"",
|
||||||
|
@ -807,7 +807,7 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
}
|
}
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
||||||
ok((rc==DS_OK && secondary!=NULL) || broken(rc == DSERR_CONTROLUNAVAIL), /* vmware drivers on w2k */
|
ok((rc==DS_OK && secondary!=NULL) || broken(rc == DSERR_CONTROLUNAVAIL), /* vmware drivers on w2k */
|
||||||
"IDirectSound_CreateSoundBuffer() failed to create a %s%ssecondary buffer %s%s%s%sat %dx%dx%d (%s): %08x\n",
|
"IDirectSound_CreateSoundBuffer() failed to create a %s%ssecondary buffer %s%s%s%sat %ldx%dx%d (%s): %08lx\n",
|
||||||
has_3dbuffer?"3D ":"", has_duplicate?"duplicated ":"",
|
has_3dbuffer?"3D ":"", has_duplicate?"duplicated ":"",
|
||||||
listener!=NULL||move_sound?"with ":"", move_listener?"moving ":"",
|
listener!=NULL||move_sound?"with ":"", move_listener?"moving ":"",
|
||||||
listener!=NULL?"listener ":"",
|
listener!=NULL?"listener ":"",
|
||||||
|
@ -820,7 +820,7 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_QueryInterface(secondary, &IID_IDirectSound3DBuffer, (void**)&ds3d);
|
rc=IDirectSoundBuffer_QueryInterface(secondary, &IID_IDirectSound3DBuffer, (void**)&ds3d);
|
||||||
ok((has_3dbuffer && rc==DS_OK) || (!has_3dbuffer && rc==E_NOINTERFACE),
|
ok((has_3dbuffer && rc==DS_OK) || (!has_3dbuffer && rc==E_NOINTERFACE),
|
||||||
"Wrong return trying to get 3D buffer on %s3D secondary interface: %08x\n", has_3dbuffer ? "" : "non-", rc);
|
"Wrong return trying to get 3D buffer on %s3D secondary interface: %08lx\n", has_3dbuffer ? "" : "non-", rc);
|
||||||
if(rc==DS_OK)
|
if(rc==DS_OK)
|
||||||
IDirectSound3DBuffer_Release(ds3d);
|
IDirectSound3DBuffer_Release(ds3d);
|
||||||
|
|
||||||
|
@ -829,53 +829,53 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
|
|
||||||
/* Check the initial secondary buffer's volume and pan */
|
/* Check the initial secondary buffer's volume and pan */
|
||||||
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(secondary) failed: %08lx\n",rc);
|
||||||
ok(vol==0,"wrong volume for a new secondary buffer: %d\n",vol);
|
ok(vol==0,"wrong volume for a new secondary buffer: %ld\n",vol);
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08lx\n",rc);
|
||||||
ok(pan==0,"wrong pan for a new secondary buffer: %d\n",pan);
|
ok(pan==0,"wrong pan for a new secondary buffer: %ld\n",pan);
|
||||||
|
|
||||||
/* Check that changing the secondary buffer's volume and pan
|
/* Check that changing the secondary buffer's volume and pan
|
||||||
* does not impact the primary buffer's volume and pan
|
* does not impact the primary buffer's volume and pan
|
||||||
*/
|
*/
|
||||||
rc=IDirectSoundBuffer_GetVolume(primary,&refvol);
|
rc=IDirectSoundBuffer_GetVolume(primary,&refvol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetPan(primary,&refpan);
|
rc=IDirectSoundBuffer_GetPan(primary,&refpan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(secondary,-1000);
|
rc=IDirectSoundBuffer_SetVolume(secondary,-1000);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
ok(vol==-1000,"secondary: wrong volume %d instead of -1000\n",
|
ok(vol==-1000,"secondary: wrong volume %ld instead of -1000\n",
|
||||||
vol);
|
vol);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,-1000);
|
rc=IDirectSoundBuffer_SetPan(secondary,-1000);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08lx\n",rc);
|
||||||
ok(pan==-1000,"secondary: wrong pan %d instead of -1000\n",
|
ok(pan==-1000,"secondary: wrong pan %ld instead of -1000\n",
|
||||||
pan);
|
pan);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetVolume(primary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(primary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08lx\n",rc);
|
||||||
ok(vol==refvol,"The primary volume changed from %d to %d\n",
|
ok(vol==refvol,"The primary volume changed from %ld to %ld\n",
|
||||||
refvol,vol);
|
refvol,vol);
|
||||||
rc=IDirectSoundBuffer_GetPan(primary,&pan);
|
rc=IDirectSoundBuffer_GetPan(primary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08lx\n", rc);
|
||||||
ok(pan==refpan,"The primary pan changed from %d to %d\n",
|
ok(pan==refpan,"The primary pan changed from %ld to %ld\n",
|
||||||
refpan,pan);
|
refpan,pan);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(secondary,0);
|
rc=IDirectSoundBuffer_SetVolume(secondary,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08lx\n",rc);
|
||||||
} else if (has_3dbuffer) {
|
} else if (has_3dbuffer) {
|
||||||
LONG pan;
|
LONG pan;
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed, returned: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed, returned: %08lx\n", rc);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed, returned: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (has_duplicate) {
|
if (has_duplicate) {
|
||||||
|
@ -885,26 +885,26 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
|
||||||
rc=IDirectSound_DuplicateSoundBuffer(dso,0,0);
|
rc=IDirectSound_DuplicateSoundBuffer(dso,0,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid dest buffer */
|
/* DSOUND: Error: Invalid dest buffer */
|
||||||
rc=IDirectSound_DuplicateSoundBuffer(dso,secondary,0);
|
rc=IDirectSound_DuplicateSoundBuffer(dso,secondary,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid source buffer */
|
/* DSOUND: Error: Invalid source buffer */
|
||||||
rc=IDirectSound_DuplicateSoundBuffer(dso,0,&duplicated);
|
rc=IDirectSound_DuplicateSoundBuffer(dso,0,&duplicated);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
"IDirectSound_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
duplicated=NULL;
|
duplicated=NULL;
|
||||||
rc=IDirectSound_DuplicateSoundBuffer(dso,secondary,
|
rc=IDirectSound_DuplicateSoundBuffer(dso,secondary,
|
||||||
&duplicated);
|
&duplicated);
|
||||||
ok(rc==DS_OK && duplicated!=NULL,
|
ok(rc==DS_OK && duplicated!=NULL,
|
||||||
"IDirectSound_DuplicateSoundBuffer() failed to duplicate "
|
"IDirectSound_DuplicateSoundBuffer() failed to duplicate "
|
||||||
"a secondary buffer: %08x\n",rc);
|
"a secondary buffer: %08lx\n",rc);
|
||||||
|
|
||||||
if (rc==DS_OK && duplicated!=NULL) {
|
if (rc==DS_OK && duplicated!=NULL) {
|
||||||
ref=IDirectSoundBuffer_Release(secondary);
|
ref=IDirectSoundBuffer_Release(secondary);
|
||||||
|
@ -951,7 +951,7 @@ EXIT2:
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n", rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound_Release(dso);
|
ref=IDirectSound_Release(dso);
|
||||||
|
@ -971,7 +971,7 @@ static HRESULT test_for_driver(LPGUID lpGuid)
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCreate() failed: %08x\n",rc);
|
"DirectSoundCreate() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -994,7 +994,7 @@ static HRESULT test_primary(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -1002,14 +1002,14 @@ static HRESULT test_primary(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound_GetCaps(dso,&dscaps);
|
rc=IDirectSound_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -1020,7 +1020,7 @@ static HRESULT test_primary(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN;
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok((rc==DS_OK && primary!=NULL) || (rc==DSERR_CONTROLUNAVAIL),
|
ok((rc==DS_OK && primary!=NULL) || (rc==DSERR_CONTROLUNAVAIL),
|
||||||
"IDirectSound_CreateSoundBuffer() failed to create a primary buffer: %08x\n",rc);
|
"IDirectSound_CreateSoundBuffer() failed to create a primary buffer: %08lx\n",rc);
|
||||||
if (rc==DSERR_CONTROLUNAVAIL)
|
if (rc==DSERR_CONTROLUNAVAIL)
|
||||||
trace(" No Primary\n");
|
trace(" No Primary\n");
|
||||||
else if (rc==DS_OK && primary!=NULL) {
|
else if (rc==DS_OK && primary!=NULL) {
|
||||||
|
@ -1055,7 +1055,7 @@ static HRESULT test_primary(LPGUID lpGuid)
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n", rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound_Release(dso);
|
ref=IDirectSound_Release(dso);
|
||||||
|
@ -1077,7 +1077,7 @@ static HRESULT test_primary_3d(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -1085,14 +1085,14 @@ static HRESULT test_primary_3d(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound_GetCaps(dso,&dscaps);
|
rc=IDirectSound_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -1102,7 +1102,7 @@ static HRESULT test_primary_3d(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER;
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() failed "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() failed "
|
||||||
"to create a primary buffer: %08x\n",rc);
|
"to create a primary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
ref=IDirectSoundBuffer_Release(primary);
|
ref=IDirectSoundBuffer_Release(primary);
|
||||||
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
||||||
|
@ -1113,7 +1113,7 @@ static HRESULT test_primary_3d(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() "
|
||||||
"failed to create a 3D primary buffer: %08x\n",rc);
|
"failed to create a 3D primary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
test_buffer(dso,&primary,1,FALSE,0,FALSE,0,winetest_interactive &&
|
test_buffer(dso,&primary,1,FALSE,0,FALSE,0,winetest_interactive &&
|
||||||
!(dscaps.dwFlags & DSCAPS_EMULDRIVER),1.0,0,0,0,0,
|
!(dscaps.dwFlags & DSCAPS_EMULDRIVER),1.0,0,0,0,0,
|
||||||
|
@ -1126,7 +1126,7 @@ static HRESULT test_primary_3d(LPGUID lpGuid)
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n", rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound_Release(dso);
|
ref=IDirectSound_Release(dso);
|
||||||
|
@ -1148,7 +1148,7 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -1156,14 +1156,14 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound_GetCaps(dso,&dscaps);
|
rc=IDirectSound_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_GetCaps() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
primary=NULL;
|
primary=NULL;
|
||||||
|
@ -1172,7 +1172,7 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() failed "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound_CreateSoundBuffer() failed "
|
||||||
"to create a 3D primary buffer: %08x\n",rc);
|
"to create a 3D primary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
LPDIRECTSOUND3DLISTENER listener=NULL;
|
LPDIRECTSOUND3DLISTENER listener=NULL;
|
||||||
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
|
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
|
||||||
|
@ -1181,13 +1181,13 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
rc=IDirectSoundBuffer_QueryInterface(primary,
|
rc=IDirectSoundBuffer_QueryInterface(primary,
|
||||||
&IID_IDirectSound3DListener,(void **)&listener);
|
&IID_IDirectSound3DListener,(void **)&listener);
|
||||||
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface() "
|
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface() "
|
||||||
"failed to get a 3D listener: %08x\n",rc);
|
"failed to get a 3D listener: %08lx\n",rc);
|
||||||
if (rc==DS_OK && listener!=NULL) {
|
if (rc==DS_OK && listener!=NULL) {
|
||||||
/* Checking the COM interface */
|
/* Checking the COM interface */
|
||||||
rc=IDirectSoundBuffer_QueryInterface(primary,
|
rc=IDirectSoundBuffer_QueryInterface(primary,
|
||||||
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==primary,
|
ok(temp_buffer==primary,
|
||||||
"COM interface broken: %p != %p\n",
|
"COM interface broken: %p != %p\n",
|
||||||
temp_buffer,primary);
|
temp_buffer,primary);
|
||||||
|
@ -1200,7 +1200,7 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
rc=IDirectSound3DListener_QueryInterface(listener,
|
rc=IDirectSound3DListener_QueryInterface(listener,
|
||||||
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==primary,
|
ok(temp_buffer==primary,
|
||||||
"COM interface broken: %p != %p\n",
|
"COM interface broken: %p != %p\n",
|
||||||
temp_buffer,primary);
|
temp_buffer,primary);
|
||||||
|
@ -1218,7 +1218,7 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
rc = IDirectSound3DListener_QueryInterface(listener, &IID_IKsPropertySet,
|
rc = IDirectSound3DListener_QueryInterface(listener, &IID_IKsPropertySet,
|
||||||
(void **)&propset);
|
(void **)&propset);
|
||||||
ok(rc == DS_OK && propset != NULL,
|
ok(rc == DS_OK && propset != NULL,
|
||||||
"IDirectSound3DListener_QueryInterface didn't handle IKsPropertySet: ret = %08x\n", rc);
|
"IDirectSound3DListener_QueryInterface didn't handle IKsPropertySet: ret = %08lx\n", rc);
|
||||||
IKsPropertySet_Release(propset);
|
IKsPropertySet_Release(propset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1231,7 +1231,7 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
|
||||||
propset = NULL;
|
propset = NULL;
|
||||||
rc = IDirectSoundBuffer_QueryInterface(primary, &IID_IKsPropertySet, (void **)&propset);
|
rc = IDirectSoundBuffer_QueryInterface(primary, &IID_IKsPropertySet, (void **)&propset);
|
||||||
ok(rc == DS_OK && propset != NULL,
|
ok(rc == DS_OK && propset != NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface didn't handle IKsPropertySet on primary buffer: ret = %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface didn't handle IKsPropertySet on primary buffer: ret = %08lx\n", rc);
|
||||||
IKsPropertySet_Release(propset);
|
IKsPropertySet_Release(propset);
|
||||||
|
|
||||||
/* Testing the reference counting */
|
/* Testing the reference counting */
|
||||||
|
@ -1302,7 +1302,7 @@ static void ds3d_tests(void)
|
||||||
{
|
{
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
||||||
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08x\n",rc);
|
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08lx\n",rc);
|
||||||
trace("tested %u DirectSound drivers\n", driver_count);
|
trace("tested %u DirectSound drivers\n", driver_count);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -57,7 +57,7 @@ static int buffer_refill8(play_state_t* state, DWORD size)
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
||||||
&ptr1,&len1,&ptr2,&len2,0);
|
&ptr1,&len1,&ptr2,&len2,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ static int buffer_refill8(play_state_t* state, DWORD size)
|
||||||
}
|
}
|
||||||
state->offset=state->written % state->buffer_size;
|
state->offset=state->written % state->buffer_size;
|
||||||
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
return size;
|
return size;
|
||||||
|
@ -84,7 +84,7 @@ static int buffer_silence8(play_state_t* state, DWORD size)
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
rc=IDirectSoundBuffer_Lock(state->dsbo,state->offset,size,
|
||||||
&ptr1,&len1,&ptr2,&len2,0);
|
&ptr1,&len1,&ptr2,&len2,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Lock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ static int buffer_silence8(play_state_t* state, DWORD size)
|
||||||
}
|
}
|
||||||
state->offset=(state->offset+size) % state->buffer_size;
|
state->offset=(state->offset+size) % state->buffer_size;
|
||||||
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
rc=IDirectSoundBuffer_Unlock(state->dsbo,ptr1,len1,ptr2,len2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Unlock() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return -1;
|
return -1;
|
||||||
return size;
|
return size;
|
||||||
|
@ -107,7 +107,7 @@ static BOOL buffer_service8(play_state_t* state)
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetCurrentPosition(state->dsbo,&play_pos,NULL);
|
rc=IDirectSoundBuffer_GetCurrentPosition(state->dsbo,&play_pos,NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCurrentPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCurrentPosition() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
goto STOP;
|
goto STOP;
|
||||||
}
|
}
|
||||||
|
@ -120,7 +120,7 @@ static BOOL buffer_service8(play_state_t* state)
|
||||||
state->played+=play_pos-last_play_pos;
|
state->played+=play_pos-last_play_pos;
|
||||||
|
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("buf size=%d last_play_pos=%d play_pos=%d played=%d / %d\n",
|
trace("buf size=%ld last_play_pos=%ld play_pos=%ld played=%ld / %ld\n",
|
||||||
state->buffer_size,last_play_pos,play_pos,state->played,
|
state->buffer_size,last_play_pos,play_pos,state->played,
|
||||||
state->wave_len);
|
state->wave_len);
|
||||||
|
|
||||||
|
@ -137,7 +137,7 @@ static BOOL buffer_service8(play_state_t* state)
|
||||||
buf_free=state->buffer_size-state->offset+play_pos;
|
buf_free=state->buffer_size-state->offset+play_pos;
|
||||||
|
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("offset=%d free=%d written=%d / %d\n",
|
trace("offset=%ld free=%ld written=%ld / %ld\n",
|
||||||
state->offset,buf_free,state->written,state->wave_len);
|
state->offset,buf_free,state->written,state->wave_len);
|
||||||
if (buf_free==0)
|
if (buf_free==0)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -149,14 +149,14 @@ static BOOL buffer_service8(play_state_t* state)
|
||||||
goto STOP;
|
goto STOP;
|
||||||
buf_free-=w;
|
buf_free-=w;
|
||||||
if (state->written==state->wave_len && winetest_debug > 1)
|
if (state->written==state->wave_len && winetest_debug > 1)
|
||||||
trace("last sound byte at %d\n",
|
trace("last sound byte at %ld\n",
|
||||||
(state->written % state->buffer_size));
|
(state->written % state->buffer_size));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (buf_free>0) {
|
if (buf_free>0) {
|
||||||
/* Fill with silence */
|
/* Fill with silence */
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("writing %d bytes of silence\n",buf_free);
|
trace("writing %ld bytes of silence\n",buf_free);
|
||||||
if (buffer_silence8(state,buf_free)==-1)
|
if (buffer_silence8(state,buf_free)==-1)
|
||||||
goto STOP;
|
goto STOP;
|
||||||
}
|
}
|
||||||
|
@ -166,7 +166,7 @@ STOP:
|
||||||
if (winetest_debug > 1)
|
if (winetest_debug > 1)
|
||||||
trace("stopping playback\n");
|
trace("stopping playback\n");
|
||||||
rc=IDirectSoundBuffer_Stop(state->dsbo);
|
rc=IDirectSoundBuffer_Stop(state->dsbo);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Stop() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Stop() failed: %08lx\n", rc);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -186,20 +186,20 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
/* DSOUND: Error: Invalid caps pointer */
|
/* DSOUND: Error: Invalid caps pointer */
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,0);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
ZeroMemory(&dsbcaps, sizeof(dsbcaps));
|
ZeroMemory(&dsbcaps, sizeof(dsbcaps));
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid caps pointer */
|
/* DSOUND: Error: Invalid caps pointer */
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetCaps() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
dsbcaps.dwSize=sizeof(dsbcaps);
|
dsbcaps.dwSize=sizeof(dsbcaps);
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&dsbcaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Caps: flags=0x%08x size=%d\n",dsbcaps.dwFlags,
|
trace(" Caps: flags=0x%08lx size=%ld\n",dsbcaps.dwFlags,
|
||||||
dsbcaps.dwBufferBytes);
|
dsbcaps.dwBufferBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -207,10 +207,10 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
size=0;
|
size=0;
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,NULL,0,&size);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,NULL,0,&size);
|
||||||
ok(rc==DS_OK && size!=0,"IDirectSoundBuffer_GetFormat() should have "
|
ok(rc==DS_OK && size!=0,"IDirectSoundBuffer_GetFormat() should have "
|
||||||
"returned the needed size: rc=%08x size=%d\n",rc,size);
|
"returned the needed size: rc=%08lx size=%ld\n",rc,size);
|
||||||
|
|
||||||
ok(size == sizeof(WAVEFORMATEX) || size == sizeof(WAVEFORMATEXTENSIBLE),
|
ok(size == sizeof(WAVEFORMATEX) || size == sizeof(WAVEFORMATEXTENSIBLE),
|
||||||
"Expected a correct structure size, got %d\n", size);
|
"Expected a correct structure size, got %ld\n", size);
|
||||||
|
|
||||||
if (size == sizeof(WAVEFORMATEX)) {
|
if (size == sizeof(WAVEFORMATEX)) {
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,size,NULL);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,size,NULL);
|
||||||
|
@ -223,9 +223,9 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
} else
|
} else
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" Format: %s tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace(" Format: %s tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
is_primary ? "Primary" : "Secondary",
|
is_primary ? "Primary" : "Secondary",
|
||||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||||
|
@ -234,26 +234,26 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
/* DSOUND: Error: Invalid frequency buffer */
|
/* DSOUND: Error: Invalid frequency buffer */
|
||||||
rc=IDirectSoundBuffer_GetFrequency(*dsbo,0);
|
rc=IDirectSoundBuffer_GetFrequency(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetFrequency() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetFrequency() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Primary buffers don't support CTRLFREQUENCY */
|
/* DSOUND: Error: Primary buffers don't support CTRLFREQUENCY */
|
||||||
rc=IDirectSoundBuffer_GetFrequency(*dsbo,&freq);
|
rc=IDirectSoundBuffer_GetFrequency(*dsbo,&freq);
|
||||||
ok((rc==DS_OK && !is_primary) || (rc==DSERR_CONTROLUNAVAIL&&is_primary) ||
|
ok((rc==DS_OK && !is_primary) || (rc==DSERR_CONTROLUNAVAIL&&is_primary) ||
|
||||||
(rc==DSERR_CONTROLUNAVAIL&&!(dsbcaps.dwFlags&DSBCAPS_CTRLFREQUENCY)),
|
(rc==DSERR_CONTROLUNAVAIL&&!(dsbcaps.dwFlags&DSBCAPS_CTRLFREQUENCY)),
|
||||||
"IDirectSoundBuffer_GetFrequency() failed: %08x\n",rc);
|
"IDirectSoundBuffer_GetFrequency() failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ok(freq==wfx.nSamplesPerSec,"The frequency returned by GetFrequency "
|
ok(freq==wfx.nSamplesPerSec,"The frequency returned by GetFrequency "
|
||||||
"%d does not match the format %d\n",freq,wfx.nSamplesPerSec);
|
"%ld does not match the format %ld\n",freq,wfx.nSamplesPerSec);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid status pointer */
|
/* DSOUND: Error: Invalid status pointer */
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,0);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetStatus() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_GetStatus() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
ok(status==0,"status=0x%x instead of 0\n",status);
|
ok(status==0,"status=0x%lx instead of 0\n",status);
|
||||||
|
|
||||||
if (is_primary) {
|
if (is_primary) {
|
||||||
DSBCAPS new_dsbcaps;
|
DSBCAPS new_dsbcaps;
|
||||||
|
@ -261,18 +261,18 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) "
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid format pointer */
|
/* DSOUND: Error: Invalid format pointer */
|
||||||
rc=IDirectSoundBuffer_SetFormat(*dsbo,0);
|
rc=IDirectSoundBuffer_SetFormat(*dsbo,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_SetFormat() should have "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundBuffer_SetFormat() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
init_format(&wfx2,WAVE_FORMAT_PCM,11025,16,2);
|
init_format(&wfx2,WAVE_FORMAT_PCM,11025,16,2);
|
||||||
rc=IDirectSoundBuffer_SetFormat(*dsbo,&wfx2);
|
rc=IDirectSoundBuffer_SetFormat(*dsbo,&wfx2);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetFormat(%s) failed: %08x\n",
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetFormat(%s) failed: %08lx\n",
|
||||||
format_string(&wfx2), rc);
|
format_string(&wfx2), rc);
|
||||||
|
|
||||||
/* There is no guarantee that SetFormat will actually change the
|
/* There is no guarantee that SetFormat will actually change the
|
||||||
|
@ -280,16 +280,16 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
* supports. So we must re-query the format.
|
* supports. So we must re-query the format.
|
||||||
*/
|
*/
|
||||||
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,sizeof(wfx),NULL);
|
rc=IDirectSoundBuffer_GetFormat(*dsbo,&wfx,sizeof(wfx),NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetFormat() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK &&
|
if (rc==DS_OK &&
|
||||||
(wfx.wFormatTag!=wfx2.wFormatTag ||
|
(wfx.wFormatTag!=wfx2.wFormatTag ||
|
||||||
wfx.nSamplesPerSec!=wfx2.nSamplesPerSec ||
|
wfx.nSamplesPerSec!=wfx2.nSamplesPerSec ||
|
||||||
wfx.wBitsPerSample!=wfx2.wBitsPerSample ||
|
wfx.wBitsPerSample!=wfx2.wBitsPerSample ||
|
||||||
wfx.nChannels!=wfx2.nChannels)) {
|
wfx.nChannels!=wfx2.nChannels)) {
|
||||||
trace("Requested format tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace("Requested format tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
wfx2.wFormatTag,wfx2.nSamplesPerSec,wfx2.wBitsPerSample,
|
wfx2.wFormatTag,wfx2.nSamplesPerSec,wfx2.wBitsPerSample,
|
||||||
wfx2.nChannels,wfx2.nAvgBytesPerSec,wfx2.nBlockAlign);
|
wfx2.nChannels,wfx2.nAvgBytesPerSec,wfx2.nBlockAlign);
|
||||||
trace("Got tag=0x%04x %dx%dx%d avg.B/s=%d align=%d\n",
|
trace("Got tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||||
}
|
}
|
||||||
|
@ -297,30 +297,30 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
ZeroMemory(&new_dsbcaps, sizeof(new_dsbcaps));
|
ZeroMemory(&new_dsbcaps, sizeof(new_dsbcaps));
|
||||||
new_dsbcaps.dwSize = sizeof(new_dsbcaps);
|
new_dsbcaps.dwSize = sizeof(new_dsbcaps);
|
||||||
rc=IDirectSoundBuffer_GetCaps(*dsbo,&new_dsbcaps);
|
rc=IDirectSoundBuffer_GetCaps(*dsbo,&new_dsbcaps);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetCaps() failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && winetest_debug > 1) {
|
if (rc==DS_OK && winetest_debug > 1) {
|
||||||
trace(" new Caps: flags=0x%08x size=%d\n",new_dsbcaps.dwFlags,
|
trace(" new Caps: flags=0x%08lx size=%ld\n",new_dsbcaps.dwFlags,
|
||||||
new_dsbcaps.dwBufferBytes);
|
new_dsbcaps.dwBufferBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check for primary buffer size change */
|
/* Check for primary buffer size change */
|
||||||
ok(new_dsbcaps.dwBufferBytes == dsbcaps.dwBufferBytes,
|
ok(new_dsbcaps.dwBufferBytes == dsbcaps.dwBufferBytes,
|
||||||
" buffer size changed after SetFormat() - "
|
" buffer size changed after SetFormat() - "
|
||||||
"previous size was %u, current size is %u\n",
|
"previous size was %lu, current size is %lu\n",
|
||||||
dsbcaps.dwBufferBytes, new_dsbcaps.dwBufferBytes);
|
dsbcaps.dwBufferBytes, new_dsbcaps.dwBufferBytes);
|
||||||
dsbcaps.dwBufferBytes = new_dsbcaps.dwBufferBytes;
|
dsbcaps.dwBufferBytes = new_dsbcaps.dwBufferBytes;
|
||||||
|
|
||||||
/* Check for primary buffer flags change */
|
/* Check for primary buffer flags change */
|
||||||
ok(new_dsbcaps.dwFlags == dsbcaps.dwFlags,
|
ok(new_dsbcaps.dwFlags == dsbcaps.dwFlags,
|
||||||
" flags changed after SetFormat() - "
|
" flags changed after SetFormat() - "
|
||||||
"previous flags were %08x, current flags are %08x\n",
|
"previous flags were %08lx, current flags are %08lx\n",
|
||||||
dsbcaps.dwFlags, new_dsbcaps.dwFlags);
|
dsbcaps.dwFlags, new_dsbcaps.dwFlags);
|
||||||
|
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) "
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (play) {
|
if (play) {
|
||||||
|
@ -333,7 +333,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
DWORD length1;
|
DWORD length1;
|
||||||
|
|
||||||
if (winetest_interactive) {
|
if (winetest_interactive) {
|
||||||
trace(" Playing %g second 440Hz tone at %dx%dx%d\n", duration,
|
trace(" Playing %g second 440Hz tone at %ldx%dx%d\n", duration,
|
||||||
wfx.nSamplesPerSec, wfx.wBitsPerSample,wfx.nChannels);
|
wfx.nSamplesPerSec, wfx.wBitsPerSample,wfx.nChannels);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -344,7 +344,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),
|
||||||
DSSCL_WRITEPRIMARY);
|
DSSCL_WRITEPRIMARY);
|
||||||
ok(rc==DS_OK,
|
ok(rc==DS_OK,
|
||||||
"IDirectSound8_SetCooperativeLevel(DSSCL_WRITEPRIMARY) failed: %08x\n",rc);
|
"IDirectSound8_SetCooperativeLevel(DSSCL_WRITEPRIMARY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -353,7 +353,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_QueryInterface(*dsbo,&IID_IDirectSound3DBuffer,
|
rc=IDirectSoundBuffer_QueryInterface(*dsbo,&IID_IDirectSound3DBuffer,
|
||||||
(LPVOID *)&buffer);
|
(LPVOID *)&buffer);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -361,7 +361,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
rc=IDirectSoundBuffer_QueryInterface(*dsbo, &IID_IDirectSoundBuffer,
|
rc=IDirectSoundBuffer_QueryInterface(*dsbo, &IID_IDirectSoundBuffer,
|
||||||
(LPVOID *)&temp_buffer);
|
(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==*dsbo,"COM interface broken: %p != %p\n",
|
ok(temp_buffer==*dsbo,"COM interface broken: %p != %p\n",
|
||||||
temp_buffer,*dsbo);
|
temp_buffer,*dsbo);
|
||||||
ref=IDirectSoundBuffer_Release(temp_buffer);
|
ref=IDirectSoundBuffer_Release(temp_buffer);
|
||||||
|
@ -376,37 +376,37 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
&IID_IDirectSoundBuffer,
|
&IID_IDirectSoundBuffer,
|
||||||
(LPVOID *)dsbo);
|
(LPVOID *)dsbo);
|
||||||
ok(rc==DS_OK && *dsbo!=NULL,"IDirectSound3DBuffer_QueryInterface() "
|
ok(rc==DS_OK && *dsbo!=NULL,"IDirectSound3DBuffer_QueryInterface() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,0);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
ZeroMemory(&buffer_param, sizeof(buffer_param));
|
ZeroMemory(&buffer_param, sizeof(buffer_param));
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
ok(rc==DSERR_INVALIDPARAM,"IDirectSound3DBuffer_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
|
|
||||||
buffer_param.dwSize=sizeof(buffer_param);
|
buffer_param.dwSize=sizeof(buffer_param);
|
||||||
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
rc=IDirectSound3DBuffer_GetAllParameters(buffer,&buffer_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3DBuffer_GetAllParameters() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3DBuffer_GetAllParameters() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
if (set_volume) {
|
if (set_volume) {
|
||||||
if (dsbcaps.dwFlags & DSBCAPS_CTRLVOLUME) {
|
if (dsbcaps.dwFlags & DSBCAPS_CTRLVOLUME) {
|
||||||
LONG val;
|
LONG val;
|
||||||
rc=IDirectSoundBuffer_GetVolume(*dsbo,&val);
|
rc=IDirectSoundBuffer_GetVolume(*dsbo,&val);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(*dsbo,volume);
|
rc=IDirectSoundBuffer_SetVolume(*dsbo,volume);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume() failed: %08lx\n", rc);
|
||||||
} else {
|
} else {
|
||||||
/* DSOUND: Error: Buffer does not have CTRLVOLUME */
|
/* DSOUND: Error: Buffer does not have CTRLVOLUME */
|
||||||
rc=IDirectSoundBuffer_GetVolume(*dsbo,&volume);
|
rc=IDirectSoundBuffer_GetVolume(*dsbo,&volume);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetVolume() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetVolume() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -414,15 +414,15 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
if (dsbcaps.dwFlags & DSBCAPS_CTRLPAN) {
|
if (dsbcaps.dwFlags & DSBCAPS_CTRLPAN) {
|
||||||
LONG val;
|
LONG val;
|
||||||
rc=IDirectSoundBuffer_GetPan(*dsbo,&val);
|
rc=IDirectSoundBuffer_GetPan(*dsbo,&val);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetPan(*dsbo,pan);
|
rc=IDirectSoundBuffer_SetPan(*dsbo,pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed: %08lx\n", rc);
|
||||||
} else {
|
} else {
|
||||||
/* DSOUND: Error: Buffer does not have CTRLPAN */
|
/* DSOUND: Error: Buffer does not have CTRLPAN */
|
||||||
rc=IDirectSoundBuffer_GetPan(*dsbo,&pan);
|
rc=IDirectSoundBuffer_GetPan(*dsbo,&pan);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -431,14 +431,14 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
&length1, NULL, NULL,
|
&length1, NULL, NULL,
|
||||||
DSBLOCK_ENTIREBUFFER);
|
DSBLOCK_ENTIREBUFFER);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
|
|
||||||
/* try a size larger than the buffer */
|
/* try a size larger than the buffer */
|
||||||
rc = IDirectSoundBuffer_Lock(*dsbo, 0, dsbcaps.dwBufferBytes + 1,
|
rc = IDirectSoundBuffer_Lock(*dsbo, 0, dsbcaps.dwBufferBytes + 1,
|
||||||
&buffer1, &length1, NULL, NULL,
|
&buffer1, &length1, NULL, NULL,
|
||||||
DSBLOCK_FROMWRITECURSOR);
|
DSBLOCK_FROMWRITECURSOR);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
ok(rc==DSERR_INVALIDPARAM, "IDirectSoundBuffer_Lock() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
|
|
||||||
state.wave=wave_generate_la(&wfx,duration,&state.wave_len,ieee);
|
state.wave=wave_generate_la(&wfx,duration,&state.wave_len,ieee);
|
||||||
|
|
||||||
|
@ -449,19 +449,19 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
buffer_refill8(&state,state.buffer_size);
|
buffer_refill8(&state,state.buffer_size);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_Play(*dsbo,0,0,DSBPLAY_LOOPING);
|
rc=IDirectSoundBuffer_Play(*dsbo,0,0,DSBPLAY_LOOPING);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_Play() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_Play() failed: %08lx\n", rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
rc=IDirectSoundBuffer_GetStatus(*dsbo,&status);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetStatus() failed: %08lx\n", rc);
|
||||||
ok(status==(DSBSTATUS_PLAYING|DSBSTATUS_LOOPING),
|
ok(status==(DSBSTATUS_PLAYING|DSBSTATUS_LOOPING),
|
||||||
"GetStatus: bad status: %x\n",status);
|
"GetStatus: bad status: %lx\n",status);
|
||||||
|
|
||||||
if (listener) {
|
if (listener) {
|
||||||
ZeroMemory(&listener_param,sizeof(listener_param));
|
ZeroMemory(&listener_param,sizeof(listener_param));
|
||||||
listener_param.dwSize=sizeof(listener_param);
|
listener_param.dwSize=sizeof(listener_param);
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,&listener_param);
|
rc=IDirectSound3DListener_GetAllParameters(listener,&listener_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (move_listener) {
|
if (move_listener) {
|
||||||
listener_param.vPosition.x = -5.0f;
|
listener_param.vPosition.x = -5.0f;
|
||||||
listener_param.vVelocity.x = (float)(10.0/duration);
|
listener_param.vVelocity.x = (float)(10.0/duration);
|
||||||
|
@ -469,7 +469,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
rc=IDirectSound3DListener_SetAllParameters(listener,
|
rc=IDirectSound3DListener_SetAllParameters(listener,
|
||||||
&listener_param,
|
&listener_param,
|
||||||
DS3D_IMMEDIATE);
|
DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
if (buffer3d) {
|
if (buffer3d) {
|
||||||
if (move_sound) {
|
if (move_sound) {
|
||||||
|
@ -479,7 +479,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
buffer_param.flMinDistance = 10;
|
buffer_param.flMinDistance = 10;
|
||||||
rc=IDirectSound3DBuffer_SetAllParameters(buffer,&buffer_param,
|
rc=IDirectSound3DBuffer_SetAllParameters(buffer,&buffer_param,
|
||||||
DS3D_IMMEDIATE);
|
DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
start_time=GetTickCount();
|
start_time=GetTickCount();
|
||||||
|
@ -493,7 +493,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
rc=IDirectSound3DListener_SetPosition(listener,
|
rc=IDirectSound3DListener_SetPosition(listener,
|
||||||
listener_param.vPosition.x,listener_param.vPosition.y,
|
listener_param.vPosition.x,listener_param.vPosition.y,
|
||||||
listener_param.vPosition.z,DS3D_IMMEDIATE);
|
listener_param.vPosition.z,DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound3dListener_SetPosition() failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
if (buffer3d && move_sound) {
|
if (buffer3d && move_sound) {
|
||||||
buffer_param.vPosition.x = (float)(100-200.0*(now-start_time)/1000/duration);
|
buffer_param.vPosition.x = (float)(100-200.0*(now-start_time)/1000/duration);
|
||||||
|
@ -502,13 +502,13 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
rc=IDirectSound3DBuffer_SetPosition(buffer,
|
rc=IDirectSound3DBuffer_SetPosition(buffer,
|
||||||
buffer_param.vPosition.x,buffer_param.vPosition.y,
|
buffer_param.vPosition.x,buffer_param.vPosition.y,
|
||||||
buffer_param.vPosition.z,DS3D_IMMEDIATE);
|
buffer_param.vPosition.z,DS3D_IMMEDIATE);
|
||||||
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSound3dBuffer_SetPosition() failed: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Check the sound duration was within 10% of the expected value */
|
/* Check the sound duration was within 10% of the expected value */
|
||||||
now=GetTickCount();
|
now=GetTickCount();
|
||||||
ok(fabs(1000*duration-now+start_time)<=100*duration,
|
ok(fabs(1000*duration-now+start_time)<=100*duration,
|
||||||
"The sound played for %d ms instead of %g ms\n",
|
"The sound played for %ld ms instead of %g ms\n",
|
||||||
now-start_time,1000*duration);
|
now-start_time,1000*duration);
|
||||||
|
|
||||||
HeapFree(GetProcessHeap(), 0, state.wave);
|
HeapFree(GetProcessHeap(), 0, state.wave);
|
||||||
|
@ -517,7 +517,7 @@ void test_buffer8(LPDIRECTSOUND8 dso, LPDIRECTSOUNDBUFFER * dsbo,
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) "
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
}
|
}
|
||||||
if (buffer3d) {
|
if (buffer3d) {
|
||||||
ref=IDirectSound3DBuffer_Release(buffer);
|
ref=IDirectSound3DBuffer_Release(buffer);
|
||||||
|
@ -542,14 +542,14 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before creating primary buffer */
|
/* We must call SetCooperativeLevel before creating primary buffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -562,12 +562,12 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
bufdesc.dwFlags|=(DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN);
|
bufdesc.dwFlags|=(DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN);
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok((rc==DS_OK && primary!=NULL) || (rc == DSERR_CONTROLUNAVAIL),
|
ok((rc==DS_OK && primary!=NULL) || (rc == DSERR_CONTROLUNAVAIL),
|
||||||
"IDirectSound8_CreateSoundBuffer() failed to create a %sprimary buffer: %08x\n",has_3d?"3D ":"", rc);
|
"IDirectSound8_CreateSoundBuffer() failed to create a %sprimary buffer: %08lx\n",has_3d?"3D ":"", rc);
|
||||||
if (rc == DSERR_CONTROLUNAVAIL)
|
if (rc == DSERR_CONTROLUNAVAIL)
|
||||||
trace(" No Primary\n");
|
trace(" No Primary\n");
|
||||||
else if (rc==DS_OK && primary!=NULL) {
|
else if (rc==DS_OK && primary!=NULL) {
|
||||||
rc=IDirectSoundBuffer_GetFormat(primary,&wfx1,sizeof(wfx1),NULL);
|
rc=IDirectSoundBuffer_GetFormat(primary,&wfx1,sizeof(wfx1),NULL);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer8_Getformat() failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer8_Getformat() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT1;
|
goto EXIT1;
|
||||||
|
|
||||||
|
@ -577,7 +577,7 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
(void **)&listener);
|
(void **)&listener);
|
||||||
ok(rc==DS_OK && listener!=NULL,
|
ok(rc==DS_OK && listener!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed to get a 3D "
|
"IDirectSoundBuffer_QueryInterface() failed to get a 3D "
|
||||||
"listener %08x\n",rc);
|
"listener %08lx\n",rc);
|
||||||
ref=IDirectSoundBuffer_Release(primary);
|
ref=IDirectSoundBuffer_Release(primary);
|
||||||
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
||||||
"should have 0\n",ref);
|
"should have 0\n",ref);
|
||||||
|
@ -588,20 +588,20 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,0);
|
rc=IDirectSound3DListener_GetAllParameters(listener,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound3dListener_GetAllParameters() should have "
|
"IDirectSound3dListener_GetAllParameters() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid buffer */
|
/* DSOUND: Error: Invalid buffer */
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,
|
rc=IDirectSound3DListener_GetAllParameters(listener,
|
||||||
&listener_param);
|
&listener_param);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound3dListener_GetAllParameters() should have "
|
"IDirectSound3dListener_GetAllParameters() should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n", rc);
|
||||||
|
|
||||||
listener_param.dwSize=sizeof(listener_param);
|
listener_param.dwSize=sizeof(listener_param);
|
||||||
rc=IDirectSound3DListener_GetAllParameters(listener,
|
rc=IDirectSound3DListener_GetAllParameters(listener,
|
||||||
&listener_param);
|
&listener_param);
|
||||||
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
ok(rc==DS_OK,"IDirectSound3dListener_GetAllParameters() "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
} else {
|
} else {
|
||||||
ok(listener==NULL, "IDirectSoundBuffer_QueryInterface() "
|
ok(listener==NULL, "IDirectSoundBuffer_QueryInterface() "
|
||||||
"failed but returned a listener anyway\n");
|
"failed but returned a listener anyway\n");
|
||||||
|
@ -634,7 +634,7 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound8_CreateSoundBuffer(secondary) should have "
|
"IDirectSound8_CreateSoundBuffer(secondary) should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
init_format(&wfx,WAVE_FORMAT_PCM,22050,16,1);
|
init_format(&wfx,WAVE_FORMAT_PCM,22050,16,1);
|
||||||
|
|
||||||
/* Invalid flag combination */
|
/* Invalid flag combination */
|
||||||
|
@ -642,13 +642,13 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound8_CreateSoundBuffer(secondary) should have "
|
"IDirectSound8_CreateSoundBuffer(secondary) should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned %08x\n", rc);
|
"returned DSERR_INVALIDPARAM, returned %08lx\n", rc);
|
||||||
bufdesc.dwFlags&=~DSBCAPS_CTRLPAN;
|
bufdesc.dwFlags&=~DSBCAPS_CTRLPAN;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (winetest_interactive) {
|
if (winetest_interactive) {
|
||||||
trace(" Testing a %s%ssecondary buffer %s%s%s%sat %dx%dx%d "
|
trace(" Testing a %s%ssecondary buffer %s%s%s%sat %ldx%dx%d "
|
||||||
"with a primary buffer at %dx%dx%d\n",
|
"with a primary buffer at %ldx%dx%d\n",
|
||||||
has_3dbuffer?"3D ":"",
|
has_3dbuffer?"3D ":"",
|
||||||
has_duplicate?"duplicated ":"",
|
has_duplicate?"duplicated ":"",
|
||||||
listener!=NULL||move_sound?"with ":"",
|
listener!=NULL||move_sound?"with ":"",
|
||||||
|
@ -661,7 +661,7 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
}
|
}
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
||||||
ok(rc==DS_OK && secondary!=NULL,"IDirectSound8_CreateSoundBuffer() "
|
ok(rc==DS_OK && secondary!=NULL,"IDirectSound8_CreateSoundBuffer() "
|
||||||
"failed to create a %s%ssecondary buffer %s%s%s%sat %dx%dx%d (%s): %08x\n",
|
"failed to create a %s%ssecondary buffer %s%s%s%sat %ldx%dx%d (%s): %08lx\n",
|
||||||
has_3dbuffer?"3D ":"", has_duplicate?"duplicated ":"",
|
has_3dbuffer?"3D ":"", has_duplicate?"duplicated ":"",
|
||||||
listener!=NULL||move_sound?"with ":"", move_listener?"moving ":"",
|
listener!=NULL||move_sound?"with ":"", move_listener?"moving ":"",
|
||||||
listener!=NULL?"listener ":"",
|
listener!=NULL?"listener ":"",
|
||||||
|
@ -675,55 +675,55 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
|
|
||||||
/* Check the initial secondary buffer's volume and pan */
|
/* Check the initial secondary buffer's volume and pan */
|
||||||
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(secondary) failed: %08lx\n",rc);
|
||||||
ok(vol==0,"wrong volume for a new secondary buffer: %d\n",vol);
|
ok(vol==0,"wrong volume for a new secondary buffer: %ld\n",vol);
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08lx\n",rc);
|
||||||
ok(pan==0,"wrong pan for a new secondary buffer: %d\n",pan);
|
ok(pan==0,"wrong pan for a new secondary buffer: %ld\n",pan);
|
||||||
|
|
||||||
/* Check that changing the secondary buffer's volume and pan
|
/* Check that changing the secondary buffer's volume and pan
|
||||||
* does not impact the primary buffer's volume and pan
|
* does not impact the primary buffer's volume and pan
|
||||||
*/
|
*/
|
||||||
rc=IDirectSoundBuffer_GetVolume(primary,&refvol);
|
rc=IDirectSoundBuffer_GetVolume(primary,&refvol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetVolume(primary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetPan(primary,&refpan);
|
rc=IDirectSoundBuffer_GetPan(primary,&refpan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08lx\n",rc);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(secondary,-1000);
|
rc=IDirectSoundBuffer_SetVolume(secondary,-1000);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(secondary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
ok(vol==-1000,"secondary: wrong volume %d instead of -1000\n",
|
ok(vol==-1000,"secondary: wrong volume %ld instead of -1000\n",
|
||||||
vol);
|
vol);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,-1000);
|
rc=IDirectSoundBuffer_SetPan(secondary,-1000);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(secondary) failed: %08lx\n",rc);
|
||||||
ok(pan==-1000,"secondary: wrong pan %d instead of -1000\n",
|
ok(pan==-1000,"secondary: wrong pan %ld instead of -1000\n",
|
||||||
pan);
|
pan);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetVolume(primary,&vol);
|
rc=IDirectSoundBuffer_GetVolume(primary,&vol);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_`GetVolume(primary) failed: i%08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_`GetVolume(primary) failed: i%08lx\n",rc);
|
||||||
ok(vol==refvol,"The primary volume changed from %d to %d\n",
|
ok(vol==refvol,"The primary volume changed from %ld to %ld\n",
|
||||||
refvol,vol);
|
refvol,vol);
|
||||||
rc=IDirectSoundBuffer_GetPan(primary,&pan);
|
rc=IDirectSoundBuffer_GetPan(primary,&pan);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_GetPan(primary) failed: %08lx\n",rc);
|
||||||
ok(pan==refpan,"The primary pan changed from %d to %d\n",
|
ok(pan==refpan,"The primary pan changed from %ld to %ld\n",
|
||||||
refpan,pan);
|
refpan,pan);
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_SetVolume(secondary,0);
|
rc=IDirectSoundBuffer_SetVolume(secondary,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetVolume(secondary) failed: %08lx\n",rc);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
||||||
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSoundBuffer_SetPan(secondary) failed: %08lx\n",rc);
|
||||||
} else {
|
} else {
|
||||||
LONG pan;
|
LONG pan;
|
||||||
|
|
||||||
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
rc=IDirectSoundBuffer_GetPan(secondary,&pan);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
rc=IDirectSoundBuffer_SetPan(secondary,0);
|
||||||
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_SetPan() "
|
ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_SetPan() "
|
||||||
"should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc);
|
"should have returned DSERR_CONTROLUNAVAIL, returned: %08lx\n", rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (has_duplicate) {
|
if (has_duplicate) {
|
||||||
|
@ -733,26 +733,26 @@ static HRESULT test_secondary8(LPGUID lpGuid, BOOL play,
|
||||||
rc=IDirectSound8_DuplicateSoundBuffer(dso,0,0);
|
rc=IDirectSound8_DuplicateSoundBuffer(dso,0,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid dest buffer */
|
/* DSOUND: Error: Invalid dest buffer */
|
||||||
rc=IDirectSound8_DuplicateSoundBuffer(dso,secondary,0);
|
rc=IDirectSound8_DuplicateSoundBuffer(dso,secondary,0);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* DSOUND: Error: Invalid source buffer */
|
/* DSOUND: Error: Invalid source buffer */
|
||||||
rc=IDirectSound8_DuplicateSoundBuffer(dso,0,&duplicated);
|
rc=IDirectSound8_DuplicateSoundBuffer(dso,0,&duplicated);
|
||||||
ok(rc==DSERR_INVALIDPARAM,
|
ok(rc==DSERR_INVALIDPARAM,
|
||||||
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
"IDirectSound8_DuplicateSoundBuffer() should have returned "
|
||||||
"DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
duplicated=NULL;
|
duplicated=NULL;
|
||||||
rc=IDirectSound8_DuplicateSoundBuffer(dso,secondary,
|
rc=IDirectSound8_DuplicateSoundBuffer(dso,secondary,
|
||||||
&duplicated);
|
&duplicated);
|
||||||
ok(rc==DS_OK && duplicated!=NULL,
|
ok(rc==DS_OK && duplicated!=NULL,
|
||||||
"IDirectSound8_DuplicateSoundBuffer() failed to duplicate "
|
"IDirectSound8_DuplicateSoundBuffer() failed to duplicate "
|
||||||
"a secondary buffer: %08x\n",rc);
|
"a secondary buffer: %08lx\n",rc);
|
||||||
|
|
||||||
if (rc==DS_OK && duplicated!=NULL) {
|
if (rc==DS_OK && duplicated!=NULL) {
|
||||||
ref=IDirectSoundBuffer_Release(secondary);
|
ref=IDirectSoundBuffer_Release(secondary);
|
||||||
|
@ -801,7 +801,7 @@ EXIT2:
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n",rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound8_Release(dso);
|
ref=IDirectSound8_Release(dso);
|
||||||
|
@ -821,7 +821,7 @@ static HRESULT test_for_driver8(LPGUID lpGuid)
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCreate8() failed: %08x\n",rc);
|
"DirectSoundCreate8() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -844,7 +844,7 @@ static HRESULT test_primary8(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -852,14 +852,14 @@ static HRESULT test_primary8(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound8_GetCaps() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_GetCaps() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -870,7 +870,7 @@ static HRESULT test_primary8(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRLVOLUME|DSBCAPS_CTRLPAN;
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok((rc==DS_OK && primary!=NULL) || (rc == DSERR_CONTROLUNAVAIL),
|
ok((rc==DS_OK && primary!=NULL) || (rc == DSERR_CONTROLUNAVAIL),
|
||||||
"IDirectSound8_CreateSoundBuffer() failed to create a primary buffer: %08x\n",rc);
|
"IDirectSound8_CreateSoundBuffer() failed to create a primary buffer: %08lx\n",rc);
|
||||||
if (rc == DSERR_CONTROLUNAVAIL)
|
if (rc == DSERR_CONTROLUNAVAIL)
|
||||||
trace(" No Primary\n");
|
trace(" No Primary\n");
|
||||||
else if (rc==DS_OK && primary!=NULL) {
|
else if (rc==DS_OK && primary!=NULL) {
|
||||||
|
@ -904,7 +904,7 @@ static HRESULT test_primary8(LPGUID lpGuid)
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n",rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound8_Release(dso);
|
ref=IDirectSound8_Release(dso);
|
||||||
|
@ -926,7 +926,7 @@ static HRESULT test_primary_3d8(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -934,14 +934,14 @@ static HRESULT test_primary_3d8(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound8_GetCaps failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_GetCaps failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
|
@ -951,7 +951,7 @@ static HRESULT test_primary_3d8(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER;
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() failed "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() failed "
|
||||||
"to create a primary buffer: %08x\n",rc);
|
"to create a primary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
ref=IDirectSoundBuffer_Release(primary);
|
ref=IDirectSoundBuffer_Release(primary);
|
||||||
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "
|
||||||
|
@ -962,7 +962,7 @@ static HRESULT test_primary_3d8(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() "
|
||||||
"failed to create a 3D primary buffer: %08x\n",rc);
|
"failed to create a 3D primary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
test_buffer8(dso,&primary,TRUE,FALSE,0,FALSE,0,
|
test_buffer8(dso,&primary,TRUE,FALSE,0,FALSE,0,
|
||||||
winetest_interactive && !(dscaps.dwFlags & DSCAPS_EMULDRIVER),
|
winetest_interactive && !(dscaps.dwFlags & DSCAPS_EMULDRIVER),
|
||||||
|
@ -975,7 +975,7 @@ static HRESULT test_primary_3d8(LPGUID lpGuid)
|
||||||
/* Set the CooperativeLevel back to normal */
|
/* Set the CooperativeLevel back to normal */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_NORMAL */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_NORMAL);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_NORMAL) failed: %08lx\n",rc);
|
||||||
|
|
||||||
EXIT:
|
EXIT:
|
||||||
ref=IDirectSound8_Release(dso);
|
ref=IDirectSound8_Release(dso);
|
||||||
|
@ -997,7 +997,7 @@ static HRESULT test_primary_3d_with_listener8(LPGUID lpGuid)
|
||||||
|
|
||||||
/* Create the DirectSound object */
|
/* Create the DirectSound object */
|
||||||
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate8(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08x\n", rc);
|
ok(rc==DS_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %08lx\n", rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
|
@ -1005,14 +1005,14 @@ static HRESULT test_primary_3d_with_listener8(LPGUID lpGuid)
|
||||||
ZeroMemory(&dscaps, sizeof(dscaps));
|
ZeroMemory(&dscaps, sizeof(dscaps));
|
||||||
dscaps.dwSize=sizeof(dscaps);
|
dscaps.dwSize=sizeof(dscaps);
|
||||||
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
rc=IDirectSound8_GetCaps(dso,&dscaps);
|
||||||
ok(rc==DS_OK,"IDirectSound8_GetCaps() failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_GetCaps() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound8_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08x\n",rc);
|
ok(rc==DS_OK,"IDirectSound8_SetCooperativeLevel(DSSCL_PRIORITY) failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
primary=NULL;
|
primary=NULL;
|
||||||
|
@ -1021,14 +1021,14 @@ static HRESULT test_primary_3d_with_listener8(LPGUID lpGuid)
|
||||||
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
bufdesc.dwFlags=DSBCAPS_PRIMARYBUFFER|DSBCAPS_CTRL3D;
|
||||||
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
rc=IDirectSound8_CreateSoundBuffer(dso,&bufdesc,&primary,NULL);
|
||||||
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() failed "
|
ok(rc==DS_OK && primary!=NULL,"IDirectSound8_CreateSoundBuffer() failed "
|
||||||
"to create a 3D primary buffer %08x\n",rc);
|
"to create a 3D primary buffer %08lx\n",rc);
|
||||||
if (rc==DS_OK && primary!=NULL) {
|
if (rc==DS_OK && primary!=NULL) {
|
||||||
LPDIRECTSOUND3DLISTENER listener=NULL;
|
LPDIRECTSOUND3DLISTENER listener=NULL;
|
||||||
rc=IDirectSoundBuffer_QueryInterface(primary,
|
rc=IDirectSoundBuffer_QueryInterface(primary,
|
||||||
&IID_IDirectSound3DListener,
|
&IID_IDirectSound3DListener,
|
||||||
(void **)&listener);
|
(void **)&listener);
|
||||||
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface() "
|
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface() "
|
||||||
"failed to get a 3D listener: %08x\n",rc);
|
"failed to get a 3D listener: %08lx\n",rc);
|
||||||
if (rc==DS_OK && listener!=NULL) {
|
if (rc==DS_OK && listener!=NULL) {
|
||||||
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
|
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
|
||||||
|
|
||||||
|
@ -1037,7 +1037,7 @@ static HRESULT test_primary_3d_with_listener8(LPGUID lpGuid)
|
||||||
&IID_IDirectSoundBuffer,
|
&IID_IDirectSoundBuffer,
|
||||||
(LPVOID *)&temp_buffer);
|
(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==primary,"COM interface broken: %p != %p\n",temp_buffer,primary);
|
ok(temp_buffer==primary,"COM interface broken: %p != %p\n",temp_buffer,primary);
|
||||||
if (rc==DS_OK && temp_buffer!=NULL) {
|
if (rc==DS_OK && temp_buffer!=NULL) {
|
||||||
ref=IDirectSoundBuffer_Release(temp_buffer);
|
ref=IDirectSoundBuffer_Release(temp_buffer);
|
||||||
|
@ -1048,7 +1048,7 @@ static HRESULT test_primary_3d_with_listener8(LPGUID lpGuid)
|
||||||
rc=IDirectSound3DListener_QueryInterface(listener,
|
rc=IDirectSound3DListener_QueryInterface(listener,
|
||||||
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
|
||||||
ok(rc==DS_OK && temp_buffer!=NULL,
|
ok(rc==DS_OK && temp_buffer!=NULL,
|
||||||
"IDirectSoundBuffer_QueryInterface() failed: %08x\n", rc);
|
"IDirectSoundBuffer_QueryInterface() failed: %08lx\n", rc);
|
||||||
ok(temp_buffer==primary,"COM interface broken: %p != %p\n",temp_buffer,primary);
|
ok(temp_buffer==primary,"COM interface broken: %p != %p\n",temp_buffer,primary);
|
||||||
ref=IDirectSoundBuffer_Release(temp_buffer);
|
ref=IDirectSoundBuffer_Release(temp_buffer);
|
||||||
ok(ref==1,"IDirectSoundBuffer_Release() has %d references, "
|
ok(ref==1,"IDirectSoundBuffer_Release() has %d references, "
|
||||||
|
@ -1134,7 +1134,7 @@ static void ds3d8_tests(void)
|
||||||
{
|
{
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
||||||
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08x\n",rc);
|
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08lx\n",rc);
|
||||||
trace("tested %u DirectSound drivers\n", driver_count);
|
trace("tested %u DirectSound drivers\n", driver_count);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -43,7 +43,7 @@ static void IDirectSoundFullDuplex_test(LPDIRECTSOUNDFULLDUPLEX dsfdo,
|
||||||
|
|
||||||
/* Try to Query for objects */
|
/* Try to Query for objects */
|
||||||
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IUnknown,(LPVOID*)&unknown);
|
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IUnknown,(LPVOID*)&unknown);
|
||||||
ok(rc==DS_OK,"IDirectSoundFullDuplex_QueryInterface(IID_IUnknown) failed: %08x\n", rc);
|
ok(rc==DS_OK,"IDirectSoundFullDuplex_QueryInterface(IID_IUnknown) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref = IUnknown_Release(unknown);
|
ref = IUnknown_Release(unknown);
|
||||||
ok(ref==0, "IDirectSoundFullDuplex_Release() has %d references, "
|
ok(ref==0, "IDirectSoundFullDuplex_Release() has %d references, "
|
||||||
|
@ -51,7 +51,7 @@ static void IDirectSoundFullDuplex_test(LPDIRECTSOUNDFULLDUPLEX dsfdo,
|
||||||
}
|
}
|
||||||
|
|
||||||
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSound,(LPVOID*)&ds);
|
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSound,(LPVOID*)&ds);
|
||||||
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSound) failed: %08x\n", rc);
|
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSound) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSound_Release(ds);
|
ref=IDirectSound_Release(ds);
|
||||||
ok(ref==0, "IDirectSound_Release() has %d references, "
|
ok(ref==0, "IDirectSound_Release() has %d references, "
|
||||||
|
@ -60,12 +60,12 @@ static void IDirectSoundFullDuplex_test(LPDIRECTSOUNDFULLDUPLEX dsfdo,
|
||||||
|
|
||||||
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSound8,(LPVOID*)&ds8);
|
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSound8,(LPVOID*)&ds8);
|
||||||
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSound8) "
|
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSound8) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
IDirectSoundFullDuplex * dsfd1;
|
IDirectSoundFullDuplex * dsfd1;
|
||||||
rc=IDirectSound8_QueryInterface(ds8,&IID_IDirectSoundFullDuplex,(LPVOID*)&dsfd1);
|
rc=IDirectSound8_QueryInterface(ds8,&IID_IDirectSoundFullDuplex,(LPVOID*)&dsfd1);
|
||||||
ok(rc==DS_OK,"IDirectSound8_QueryInterface(IID_IDirectSoundFullDuplex) "
|
ok(rc==DS_OK,"IDirectSound8_QueryInterface(IID_IDirectSoundFullDuplex) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundFullDuplex_Release(dsfd1);
|
ref=IDirectSoundFullDuplex_Release(dsfd1);
|
||||||
ok(ref==1, "IDirectSoundFullDuplex_Release() has %d references, "
|
ok(ref==1, "IDirectSoundFullDuplex_Release() has %d references, "
|
||||||
|
@ -78,7 +78,7 @@ static void IDirectSoundFullDuplex_test(LPDIRECTSOUNDFULLDUPLEX dsfdo,
|
||||||
|
|
||||||
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSoundCapture,(LPVOID*)&dsc);
|
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSoundCapture,(LPVOID*)&dsc);
|
||||||
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSoundCapture) "
|
ok(rc==(initialized?DS_OK:E_NOINTERFACE),"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSoundCapture) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ref=IDirectSoundCapture_Release(dsc);
|
ref=IDirectSoundCapture_Release(dsc);
|
||||||
ok(ref==0, "IDirectSoundCapture_Release() has %d references, "
|
ok(ref==0, "IDirectSoundCapture_Release() has %d references, "
|
||||||
|
@ -87,7 +87,7 @@ static void IDirectSoundFullDuplex_test(LPDIRECTSOUNDFULLDUPLEX dsfdo,
|
||||||
|
|
||||||
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSoundFullDuplex,(LPVOID*)&dsfd);
|
rc=IDirectSoundFullDuplex_QueryInterface(dsfdo,&IID_IDirectSoundFullDuplex,(LPVOID*)&dsfd);
|
||||||
ok(rc==DS_OK,"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSoundFullDuplex) "
|
ok(rc==DS_OK,"IDirectSoundFullDuplex_QueryInterface(IID_IDirectSoundFullDuplex) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (rc==DS_OK) {
|
if (rc==DS_OK) {
|
||||||
ok(dsfdo==dsfd, "different interfaces\n");
|
ok(dsfdo==dsfd, "different interfaces\n");
|
||||||
ref=IDirectSoundFullDuplex_Release(dsfd);
|
ref=IDirectSoundFullDuplex_Release(dsfd);
|
||||||
|
@ -116,7 +116,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
||||||
(void**)&dsfdo);
|
(void**)&dsfdo);
|
||||||
ok(rc==S_OK||rc==REGDB_E_CLASSNOTREG||rc==CLASS_E_CLASSNOTAVAILABLE,
|
ok(rc==S_OK||rc==REGDB_E_CLASSNOTREG||rc==CLASS_E_CLASSNOTAVAILABLE,
|
||||||
"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08x\n", rc);
|
"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08lx\n", rc);
|
||||||
if (rc==REGDB_E_CLASSNOTREG) {
|
if (rc==REGDB_E_CLASSNOTREG) {
|
||||||
trace(" Class Not Registered\n");
|
trace(" Class Not Registered\n");
|
||||||
return;
|
return;
|
||||||
|
@ -132,7 +132,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
rc=CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL,
|
rc=CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL,
|
||||||
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
||||||
(void**)&dsfdo);
|
(void**)&dsfdo);
|
||||||
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08x\n", rc);
|
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08lx\n", rc);
|
||||||
if (dsfdo)
|
if (dsfdo)
|
||||||
IDirectSoundFullDuplex_test(dsfdo, FALSE, &DSDEVID_DefaultCapture,
|
IDirectSoundFullDuplex_test(dsfdo, FALSE, &DSDEVID_DefaultCapture,
|
||||||
&DSDEVID_DefaultPlayback);
|
&DSDEVID_DefaultPlayback);
|
||||||
|
@ -142,7 +142,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
rc=CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL,
|
rc=CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL,
|
||||||
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
CLSCTX_INPROC_SERVER, &IID_IDirectSoundFullDuplex,
|
||||||
(void**)&dsfdo);
|
(void**)&dsfdo);
|
||||||
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08x\n", rc);
|
ok(rc==S_OK,"CoCreateInstance(CLSID_DirectSoundFullDuplex) failed: 0x%08lx\n", rc);
|
||||||
if (dsfdo)
|
if (dsfdo)
|
||||||
IDirectSoundFullDuplex_test(dsfdo, FALSE, &DSDEVID_DefaultVoiceCapture,
|
IDirectSoundFullDuplex_test(dsfdo, FALSE, &DSDEVID_DefaultVoiceCapture,
|
||||||
&DSDEVID_DefaultVoicePlayback);
|
&DSDEVID_DefaultVoicePlayback);
|
||||||
|
@ -154,7 +154,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
(void**)&dsfdo);
|
(void**)&dsfdo);
|
||||||
ok(rc==E_NOINTERFACE,
|
ok(rc==E_NOINTERFACE,
|
||||||
"CoCreateInstance(CLSID_DirectSoundFullDuplex,CLSID_DirectSoundPrivate) "
|
"CoCreateInstance(CLSID_DirectSoundFullDuplex,CLSID_DirectSoundPrivate) "
|
||||||
"should have failed: 0x%08x\n", rc);
|
"should have failed: 0x%08lx\n", rc);
|
||||||
|
|
||||||
ZeroMemory(&wfex, sizeof(wfex));
|
ZeroMemory(&wfex, sizeof(wfex));
|
||||||
wfex.wFormatTag = WAVE_FORMAT_PCM;
|
wfex.wFormatTag = WAVE_FORMAT_PCM;
|
||||||
|
@ -180,7 +180,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
rc = DirectSoundFullDuplexCreate(NULL, NULL, &DSCBufferDesc, &DSBufferDesc,
|
rc = DirectSoundFullDuplexCreate(NULL, NULL, &DSCBufferDesc, &DSBufferDesc,
|
||||||
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
||||||
"DirectSoundFullDuplexCreate(NULL,NULL) failed: %08x\n",rc);
|
"DirectSoundFullDuplexCreate(NULL,NULL) failed: %08lx\n",rc);
|
||||||
if (rc==S_OK && dsfdo)
|
if (rc==S_OK && dsfdo)
|
||||||
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
||||||
|
|
||||||
|
@ -190,7 +190,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8,&pDSBuffer8, NULL);
|
DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8,&pDSBuffer8, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
||||||
"DirectSoundFullDuplexCreate(DSDEVID_DefaultCapture,"
|
"DirectSoundFullDuplexCreate(DSDEVID_DefaultCapture,"
|
||||||
"DSDEVID_DefaultPlayback) failed: %08x\n", rc);
|
"DSDEVID_DefaultPlayback) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && dsfdo)
|
if (rc==DS_OK && dsfdo)
|
||||||
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL||rc==DSERR_INVALIDCALL,
|
||||||
"DirectSoundFullDuplexCreate(DSDEVID_DefaultVoiceCapture,"
|
"DirectSoundFullDuplexCreate(DSDEVID_DefaultVoiceCapture,"
|
||||||
"DSDEVID_DefaultVoicePlayback) failed: %08x\n", rc);
|
"DSDEVID_DefaultVoicePlayback) failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && dsfdo)
|
if (rc==DS_OK && dsfdo)
|
||||||
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
IDirectSoundFullDuplex_test(dsfdo, TRUE, NULL, NULL);
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@ static void IDirectSoundFullDuplex_tests(void)
|
||||||
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
get_hwnd(), DSSCL_EXCLUSIVE, &dsfdo, &pDSCBuffer8, &pDSBuffer8, NULL);
|
||||||
ok(rc==DSERR_NODRIVER||rc==DSERR_INVALIDCALL,
|
ok(rc==DSERR_NODRIVER||rc==DSERR_INVALIDCALL,
|
||||||
"DirectSoundFullDuplexCreate(DSDEVID_DefaultVoicePlayback,"
|
"DirectSoundFullDuplexCreate(DSDEVID_DefaultVoicePlayback,"
|
||||||
"DSDEVID_DefaultVoiceCapture) should have failed: %08x\n", rc);
|
"DSDEVID_DefaultVoiceCapture) should have failed: %08lx\n", rc);
|
||||||
if (rc==DS_OK && dsfdo)
|
if (rc==DS_OK && dsfdo)
|
||||||
IDirectSoundFullDuplex_Release(dsfdo);
|
IDirectSoundFullDuplex_Release(dsfdo);
|
||||||
}
|
}
|
||||||
|
@ -234,33 +234,33 @@ static void test_COM(void)
|
||||||
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, (IUnknown*)0xdeadbeef, CLSCTX_INPROC_SERVER,
|
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, (IUnknown*)0xdeadbeef, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IUnknown, (void**)&dsfd);
|
&IID_IUnknown, (void**)&dsfd);
|
||||||
ok(hr == CLASS_E_NOAGGREGATION,
|
ok(hr == CLASS_E_NOAGGREGATION,
|
||||||
"DirectSoundFullDuplex create failed: %08x, expected CLASS_E_NOAGGREGATION\n", hr);
|
"DirectSoundFullDuplex create failed: %08lx, expected CLASS_E_NOAGGREGATION\n", hr);
|
||||||
ok(!dsfd, "dsfd = %p\n", dsfd);
|
ok(!dsfd, "dsfd = %p\n", dsfd);
|
||||||
|
|
||||||
/* Invalid RIID */
|
/* Invalid RIID */
|
||||||
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL, CLSCTX_INPROC_SERVER,
|
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IDirectSound3DBuffer, (void**)&dsfd);
|
&IID_IDirectSound3DBuffer, (void**)&dsfd);
|
||||||
ok(hr == E_NOINTERFACE,
|
ok(hr == E_NOINTERFACE,
|
||||||
"DirectSoundFullDuplex create failed: %08x, expected E_NOINTERFACE\n", hr);
|
"DirectSoundFullDuplex create failed: %08lx, expected E_NOINTERFACE\n", hr);
|
||||||
|
|
||||||
/* Different refcount for IDirectSoundFullDuplex and for IUnknown */
|
/* Different refcount for IDirectSoundFullDuplex and for IUnknown */
|
||||||
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL, CLSCTX_INPROC_SERVER,
|
hr = CoCreateInstance(&CLSID_DirectSoundFullDuplex, NULL, CLSCTX_INPROC_SERVER,
|
||||||
&IID_IDirectSoundFullDuplex, (void**)&dsfd);
|
&IID_IDirectSoundFullDuplex, (void**)&dsfd);
|
||||||
ok(hr == S_OK, "DirectSoundFullDuplex create failed: %08x, expected S_OK\n", hr);
|
ok(hr == S_OK, "DirectSoundFullDuplex create failed: %08lx, expected S_OK\n", hr);
|
||||||
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IUnknown, (void**)&unk);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IUnknown, (void**)&unk);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08lx\n", hr);
|
||||||
refcount = IUnknown_AddRef(unk);
|
refcount = IUnknown_AddRef(unk);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
|
|
||||||
/* Not initialized */
|
/* Not initialized */
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound8, (void**)&ds8);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound8, (void**)&ds8);
|
||||||
ok(hr == E_NOINTERFACE,
|
ok(hr == E_NOINTERFACE,
|
||||||
"QueryInterface for IID_IDirectSound8 failed: %08x, expected E_NOINTERFACE\n", hr);
|
"QueryInterface for IID_IDirectSound8 failed: %08lx, expected E_NOINTERFACE\n", hr);
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSoundCapture, (void**)&dsc);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSoundCapture, (void**)&dsc);
|
||||||
ok(hr == E_NOINTERFACE,
|
ok(hr == E_NOINTERFACE,
|
||||||
"QueryInterface for IID_IDirectSoundCapture failed: %08x, expected E_NOINTERFACE\n", hr);
|
"QueryInterface for IID_IDirectSoundCapture failed: %08lx, expected E_NOINTERFACE\n", hr);
|
||||||
|
|
||||||
init_format(&wfx, WAVE_FORMAT_PCM, 44100, 16, 1);
|
init_format(&wfx, WAVE_FORMAT_PCM, 44100, 16, 1);
|
||||||
ZeroMemory(&bufdesc, sizeof(bufdesc));
|
ZeroMemory(&bufdesc, sizeof(bufdesc));
|
||||||
|
@ -274,49 +274,49 @@ static void test_COM(void)
|
||||||
hr = IDirectSoundFullDuplex_Initialize(dsfd, NULL, NULL, &cbufdesc, &bufdesc, get_hwnd(),
|
hr = IDirectSoundFullDuplex_Initialize(dsfd, NULL, NULL, &cbufdesc, &bufdesc, get_hwnd(),
|
||||||
DSSCL_EXCLUSIVE, NULL, NULL);
|
DSSCL_EXCLUSIVE, NULL, NULL);
|
||||||
ok(hr == E_INVALIDARG,
|
ok(hr == E_INVALIDARG,
|
||||||
"IDirectSoundFullDuplex_Initialize failed: %08x, expected E_INVALIDARG\n", hr);
|
"IDirectSoundFullDuplex_Initialize failed: %08lx, expected E_INVALIDARG\n", hr);
|
||||||
hr = IDirectSoundFullDuplex_Initialize(dsfd, NULL, NULL, &cbufdesc, &bufdesc, get_hwnd(),
|
hr = IDirectSoundFullDuplex_Initialize(dsfd, NULL, NULL, &cbufdesc, &bufdesc, get_hwnd(),
|
||||||
DSSCL_EXCLUSIVE, &dscb8, &dsb8);
|
DSSCL_EXCLUSIVE, &dscb8, &dsb8);
|
||||||
if (hr == DSERR_NODRIVER || hr == DSERR_INVALIDCALL) {
|
if (hr == DSERR_NODRIVER || hr == DSERR_INVALIDCALL) {
|
||||||
skip("No driver\n");
|
skip("No driver\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ok(hr == S_OK, "IDirectSoundFullDuplex_Initialize failed: %08x\n", hr);
|
ok(hr == S_OK, "IDirectSoundFullDuplex_Initialize failed: %08lx\n", hr);
|
||||||
|
|
||||||
/* IDirectSound and IDirectSound8 */
|
/* IDirectSound and IDirectSound8 */
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound8, (void**)&ds8);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound8, (void**)&ds8);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IDirectSound8 failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IDirectSound8 failed: %08lx\n", hr);
|
||||||
refcount = IDirectSound8_AddRef(ds8);
|
refcount = IDirectSound8_AddRef(ds8);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound, (void**)&ds);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSound, (void**)&ds);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IDirectSound failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IDirectSound failed: %08lx\n", hr);
|
||||||
refcount = IDirectSound8_AddRef(ds8);
|
refcount = IDirectSound8_AddRef(ds8);
|
||||||
ok(refcount == 4, "refcount == %u, expected 4\n", refcount);
|
ok(refcount == 4, "refcount == %lu, expected 4\n", refcount);
|
||||||
refcount = IDirectSound_AddRef(ds);
|
refcount = IDirectSound_AddRef(ds);
|
||||||
ok(refcount == 5, "refcount == %u, expected 5\n", refcount);
|
ok(refcount == 5, "refcount == %lu, expected 5\n", refcount);
|
||||||
hr = IDirectSound8_QueryInterface(ds8, &IID_IUnknown, (void**)&unk8);
|
hr = IDirectSound8_QueryInterface(ds8, &IID_IUnknown, (void**)&unk8);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08lx\n", hr);
|
||||||
ok(unk == unk8, "Got different IUnknown when QI'ing IDirectSoundFullDuplex and IDirectSound\n");
|
ok(unk == unk8, "Got different IUnknown when QI'ing IDirectSoundFullDuplex and IDirectSound\n");
|
||||||
refcount = IUnknown_AddRef(unk8);
|
refcount = IUnknown_AddRef(unk8);
|
||||||
ok(refcount == 4, "refcount == %u, expected 4\n", refcount);
|
ok(refcount == 4, "refcount == %lu, expected 4\n", refcount);
|
||||||
refcount = IDirectSound_AddRef(ds);
|
refcount = IDirectSound_AddRef(ds);
|
||||||
ok(refcount == 6, "refcount == %u, expected 6\n", refcount);
|
ok(refcount == 6, "refcount == %lu, expected 6\n", refcount);
|
||||||
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
||||||
ok(refcount == 3, "refcount == %u, expected 3\n", refcount);
|
ok(refcount == 3, "refcount == %lu, expected 3\n", refcount);
|
||||||
|
|
||||||
/* IDirectSoundCapture */
|
/* IDirectSoundCapture */
|
||||||
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSoundCapture, (void**)&dsc);
|
hr = IDirectSoundFullDuplex_QueryInterface(dsfd, &IID_IDirectSoundCapture, (void**)&dsc);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IDirectSoundCapture failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IDirectSoundCapture failed: %08lx\n", hr);
|
||||||
refcount = IDirectSoundCapture_AddRef(dsc);
|
refcount = IDirectSoundCapture_AddRef(dsc);
|
||||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||||
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
refcount = IDirectSoundFullDuplex_AddRef(dsfd);
|
||||||
ok(refcount == 4, "refcount == %u, expected 4\n", refcount);
|
ok(refcount == 4, "refcount == %lu, expected 4\n", refcount);
|
||||||
hr = IDirectSound8_QueryInterface(ds8, &IID_IUnknown, (void**)&unk8);
|
hr = IDirectSound8_QueryInterface(ds8, &IID_IUnknown, (void**)&unk8);
|
||||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08lx\n", hr);
|
||||||
ok(unk == unk8,
|
ok(unk == unk8,
|
||||||
"Got different IUnknown when QI'ing IDirectSoundFullDuplex and IDirectSoundCapture\n");
|
"Got different IUnknown when QI'ing IDirectSoundFullDuplex and IDirectSoundCapture\n");
|
||||||
refcount = IUnknown_AddRef(unk8);
|
refcount = IUnknown_AddRef(unk8);
|
||||||
ok(refcount == 6, "refcount == %u, expected 6\n", refcount);
|
ok(refcount == 6, "refcount == %lu, expected 6\n", refcount);
|
||||||
|
|
||||||
IDirectSoundBuffer8_Release(dsb8);
|
IDirectSoundBuffer8_Release(dsb8);
|
||||||
IDirectSoundCaptureBuffer8_Release(dscb8);
|
IDirectSoundCaptureBuffer8_Release(dscb8);
|
||||||
|
|
|
@ -67,7 +67,7 @@ static BOOL CALLBACK callback(PDSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_DATA dat
|
||||||
trace(" Description: %s\n", data->Description);
|
trace(" Description: %s\n", data->Description);
|
||||||
trace(" Module: %s\n", data->Module);
|
trace(" Module: %s\n", data->Module);
|
||||||
trace(" Interface: %s\n", data->Interface);
|
trace(" Interface: %s\n", data->Interface);
|
||||||
trace(" WaveDeviceId: %d\n", data->WaveDeviceId);
|
trace(" WaveDeviceId: %ld\n", data->WaveDeviceId);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -94,7 +94,7 @@ static BOOL CALLBACK callback1(PDSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1_DATA
|
||||||
trace(" ModuleA: %s\n", data->ModuleA);
|
trace(" ModuleA: %s\n", data->ModuleA);
|
||||||
WideCharToMultiByte(CP_ACP, 0, data->ModuleW, -1, moduleA, sizeof(moduleA), NULL, NULL);
|
WideCharToMultiByte(CP_ACP, 0, data->ModuleW, -1, moduleA, sizeof(moduleA), NULL, NULL);
|
||||||
trace(" ModuleW: %s\n", moduleA);
|
trace(" ModuleW: %s\n", moduleA);
|
||||||
trace(" WaveDeviceId: %d\n", data->WaveDeviceId);
|
trace(" WaveDeviceId: %ld\n", data->WaveDeviceId);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -115,7 +115,7 @@ static BOOL CALLBACK callbackA(PDSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A_DATA
|
||||||
trace(" Description: %s\n", data->Description);
|
trace(" Description: %s\n", data->Description);
|
||||||
trace(" Module: %s\n", data->Module);
|
trace(" Module: %s\n", data->Module);
|
||||||
trace(" Interface: %s\n", data->Interface);
|
trace(" Interface: %s\n", data->Interface);
|
||||||
trace(" WaveDeviceId: %d\n", data->WaveDeviceId);
|
trace(" WaveDeviceId: %ld\n", data->WaveDeviceId);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -143,7 +143,7 @@ static BOOL CALLBACK callbackW(PDSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W_DATA
|
||||||
trace("\tDescription: %s\n", descriptionA);
|
trace("\tDescription: %s\n", descriptionA);
|
||||||
trace("\tModule: %s\n", moduleA);
|
trace("\tModule: %s\n", moduleA);
|
||||||
trace("\tInterface: %s\n", interfaceA);
|
trace("\tInterface: %s\n", interfaceA);
|
||||||
trace("\tWaveDeviceId: %d\n", data->WaveDeviceId);
|
trace("\tWaveDeviceId: %ld\n", data->WaveDeviceId);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -160,20 +160,20 @@ static void propset_private_tests(void)
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IClassFactory, NULL);
|
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IClassFactory, NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM,"DllGetClassObject(CLSID_DirectSound, "
|
ok(rc==DSERR_INVALIDPARAM,"DllGetClassObject(CLSID_DirectSound, "
|
||||||
"IID_IClassFactory) should have returned DSERR_INVALIDPARAM, "
|
"IID_IClassFactory) should have returned DSERR_INVALIDPARAM, "
|
||||||
"returned: %08x\n",rc);
|
"returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IDirectSound, (void **)(&pcf));
|
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IDirectSound, (void **)(&pcf));
|
||||||
ok(rc==E_NOINTERFACE,"DllGetClassObject(CLSID_DirectSound, "
|
ok(rc==E_NOINTERFACE,"DllGetClassObject(CLSID_DirectSound, "
|
||||||
"IID_IDirectSound) should have returned E_NOINTERFACE, "
|
"IID_IDirectSound) should have returned E_NOINTERFACE, "
|
||||||
"returned: %08x\n",rc);
|
"returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IUnknown, (void **)(&pcf));
|
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IUnknown, (void **)(&pcf));
|
||||||
ok(rc==DS_OK,"DllGetClassObject(CLSID_DirectSound, "
|
ok(rc==DS_OK,"DllGetClassObject(CLSID_DirectSound, "
|
||||||
"IID_IUnknown) failed: %08x\n",rc);
|
"IID_IUnknown) failed: %08lx\n",rc);
|
||||||
|
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IClassFactory, (void **)(&pcf));
|
rc = (pDllGetClassObject)(&CLSID_DirectSound, &IID_IClassFactory, (void **)(&pcf));
|
||||||
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSound, IID_IClassFactory) "
|
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSound, IID_IClassFactory) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (pcf==0)
|
if (pcf==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -182,17 +182,17 @@ static void propset_private_tests(void)
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
NULL);
|
NULL);
|
||||||
ok(rc==DSERR_INVALIDPARAM, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==DSERR_INVALIDPARAM, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned DSERR_INVALIDPARAM, returned: %08x\n",rc);
|
"returned DSERR_INVALIDPARAM, returned: %08lx\n",rc);
|
||||||
|
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned E_NOINTERFACE, returned: %08x\n",rc);
|
"returned E_NOINTERFACE, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* and the direct sound 8 version */
|
/* and the direct sound 8 version */
|
||||||
rc = pDllGetClassObject(&CLSID_DirectSound8, &IID_IClassFactory, (void **)&pcf);
|
rc = pDllGetClassObject(&CLSID_DirectSound8, &IID_IClassFactory, (void **)&pcf);
|
||||||
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSound8, IID_IClassFactory) "
|
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSound8, IID_IClassFactory) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (pcf==0)
|
if (pcf==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -200,12 +200,12 @@ static void propset_private_tests(void)
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned E_NOINTERFACE, returned: %08x\n",rc);
|
"returned E_NOINTERFACE, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* try direct sound capture next */
|
/* try direct sound capture next */
|
||||||
rc = pDllGetClassObject(&CLSID_DirectSoundCapture, &IID_IClassFactory, (void **)&pcf);
|
rc = pDllGetClassObject(&CLSID_DirectSoundCapture, &IID_IClassFactory, (void **)&pcf);
|
||||||
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundCapture, IID_IClassFactory) "
|
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundCapture, IID_IClassFactory) "
|
||||||
"failed: %08x\n",rc);
|
"failed: %08lx\n",rc);
|
||||||
if (pcf==0)
|
if (pcf==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -213,12 +213,12 @@ static void propset_private_tests(void)
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned E_NOINTERFACE,returned: %08x\n",rc);
|
"returned E_NOINTERFACE,returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* and the direct sound capture 8 version */
|
/* and the direct sound capture 8 version */
|
||||||
rc = pDllGetClassObject(&CLSID_DirectSoundCapture8, &IID_IClassFactory, (void **)&pcf);
|
rc = pDllGetClassObject(&CLSID_DirectSoundCapture8, &IID_IClassFactory, (void **)&pcf);
|
||||||
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundCapture8, "
|
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundCapture8, "
|
||||||
"IID_IClassFactory) failed: %08x\n",rc);
|
"IID_IClassFactory) failed: %08lx\n",rc);
|
||||||
if (pcf==0)
|
if (pcf==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -226,13 +226,13 @@ static void propset_private_tests(void)
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned E_NOINTERFACE, returned: %08x\n",rc);
|
"returned E_NOINTERFACE, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* try direct sound full duplex next */
|
/* try direct sound full duplex next */
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSoundFullDuplex, &IID_IClassFactory,
|
rc = (pDllGetClassObject)(&CLSID_DirectSoundFullDuplex, &IID_IClassFactory,
|
||||||
(void **)(&pcf));
|
(void **)(&pcf));
|
||||||
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundFullDuplex, "
|
ok(pcf!=0, "DllGetClassObject(CLSID_DirectSoundFullDuplex, "
|
||||||
"IID_IClassFactory) failed: %08x\n",rc);
|
"IID_IClassFactory) failed: %08lx\n",rc);
|
||||||
if (pcf==0)
|
if (pcf==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -240,7 +240,7 @@ static void propset_private_tests(void)
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
ok(rc==E_NOINTERFACE, "CreateInstance(IID_IKsPropertySet) should have "
|
||||||
"returned NOINTERFACE, returned: %08x\n",rc);
|
"returned NOINTERFACE, returned: %08lx\n",rc);
|
||||||
|
|
||||||
/* try direct sound private last */
|
/* try direct sound private last */
|
||||||
rc = (pDllGetClassObject)(&CLSID_DirectSoundPrivate, &IID_IClassFactory,
|
rc = (pDllGetClassObject)(&CLSID_DirectSoundPrivate, &IID_IClassFactory,
|
||||||
|
@ -253,7 +253,7 @@ static void propset_private_tests(void)
|
||||||
/* direct sound private does have an IKsPropertySet */
|
/* direct sound private does have an IKsPropertySet */
|
||||||
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
rc = IClassFactory_CreateInstance(pcf, NULL, &IID_IKsPropertySet,
|
||||||
(void **)(&pps));
|
(void **)(&pps));
|
||||||
ok(rc==DS_OK, "CreateInstance(IID_IKsPropertySet) failed: %08x\n",
|
ok(rc==DS_OK, "CreateInstance(IID_IKsPropertySet) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
@ -264,7 +264,7 @@ static void propset_private_tests(void)
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK||rc==E_INVALIDARG,
|
ok(rc==DS_OK||rc==E_INVALIDARG,
|
||||||
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==E_INVALIDARG)
|
if (rc==E_INVALIDARG)
|
||||||
|
@ -274,10 +274,10 @@ static void propset_private_tests(void)
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
||||||
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION: "
|
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1 */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1 */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
|
@ -285,7 +285,7 @@ static void propset_private_tests(void)
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK||rc==E_INVALIDARG,
|
ok(rc==DS_OK||rc==E_INVALIDARG,
|
||||||
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==E_INVALIDARG)
|
if (rc==E_INVALIDARG)
|
||||||
|
@ -295,10 +295,10 @@ static void propset_private_tests(void)
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
||||||
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1: "
|
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_1: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
|
@ -306,7 +306,7 @@ static void propset_private_tests(void)
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK||rc==E_INVALIDARG,
|
ok(rc==DS_OK||rc==E_INVALIDARG,
|
||||||
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==E_INVALIDARG)
|
if (rc==E_INVALIDARG)
|
||||||
|
@ -316,10 +316,10 @@ static void propset_private_tests(void)
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
||||||
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A: "
|
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_A: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
|
@ -327,7 +327,7 @@ static void propset_private_tests(void)
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK||rc==E_INVALIDARG,
|
ok(rc==DS_OK||rc==E_INVALIDARG,
|
||||||
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
"QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==E_INVALIDARG)
|
if (rc==E_INVALIDARG)
|
||||||
|
@ -337,58 +337,58 @@ static void propset_private_tests(void)
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
ok(!(support & KSPROPERTY_SUPPORT_SET),
|
||||||
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W: "
|
"Shouldn't be able to set DSPROPERTY_DIRECTSOUNDDEVICE_DESCRIPTION_W: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
|
|
||||||
/* test generic DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING */
|
/* test generic DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING, &support);
|
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING, &support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING: support = "
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING: support = "
|
||||||
"0x%x\n",support);
|
"0x%lx\n",support);
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A, &support);
|
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A, &support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A: support = "
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_A: support = "
|
||||||
"0x%x\n",support);
|
"0x%lx\n",support);
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W */
|
||||||
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_QuerySupport(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W, &support);
|
DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W, &support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET), "Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W: support = "
|
"DSPROPERTY_DIRECTSOUNDDEVICE_WAVEDEVICEMAPPING_W: support = "
|
||||||
"0x%x\n",support);
|
"0x%lx\n",support);
|
||||||
|
|
||||||
/* test generic DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE */
|
/* test generic DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE */
|
||||||
trace("*** Testing DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE ***\n");
|
trace("*** Testing DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE ***\n");
|
||||||
|
@ -396,16 +396,16 @@ static void propset_private_tests(void)
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE,
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE: support = 0x%x\n",support);
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE: support = 0x%lx\n",support);
|
||||||
|
|
||||||
if (support & KSPROPERTY_SUPPORT_GET) {
|
if (support & KSPROPERTY_SUPPORT_GET) {
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_DATA data;
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_DATA data;
|
||||||
|
@ -417,7 +417,7 @@ static void propset_private_tests(void)
|
||||||
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE,
|
||||||
NULL, 0, &data, sizeof(data), &bytes);
|
NULL, 0, &data, sizeof(data), &bytes);
|
||||||
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
|
ok(rc==DS_OK, "Couldn't enumerate: 0x%lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1 */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1 */
|
||||||
|
@ -426,16 +426,16 @@ static void propset_private_tests(void)
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1,
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1: support = 0x%x\n",support);
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1: support = 0x%lx\n",support);
|
||||||
|
|
||||||
if (support & KSPROPERTY_SUPPORT_GET) {
|
if (support & KSPROPERTY_SUPPORT_GET) {
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1_DATA data;
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1_DATA data;
|
||||||
|
@ -447,7 +447,7 @@ static void propset_private_tests(void)
|
||||||
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_1,
|
||||||
NULL, 0, &data, sizeof(data), &bytes);
|
NULL, 0, &data, sizeof(data), &bytes);
|
||||||
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
|
ok(rc==DS_OK, "Couldn't enumerate: 0x%lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A */
|
||||||
|
@ -456,16 +456,16 @@ static void propset_private_tests(void)
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A,
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A: support = 0x%x\n",support);
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A: support = 0x%lx\n",support);
|
||||||
|
|
||||||
if (support & KSPROPERTY_SUPPORT_GET) {
|
if (support & KSPROPERTY_SUPPORT_GET) {
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A_DATA data;
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A_DATA data;
|
||||||
|
@ -477,7 +477,7 @@ static void propset_private_tests(void)
|
||||||
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_A,
|
||||||
NULL, 0, &data, sizeof(data), &bytes);
|
NULL, 0, &data, sizeof(data), &bytes);
|
||||||
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
|
ok(rc==DS_OK, "Couldn't enumerate: 0x%lx\n",rc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W */
|
/* test DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W */
|
||||||
|
@ -486,16 +486,16 @@ static void propset_private_tests(void)
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W,
|
||||||
&support);
|
&support);
|
||||||
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
ok(rc==DS_OK, "QuerySupport(DSPROPSETID_DirectSoundDevice, "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W) failed: %08x\n",
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W) failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ok(support & KSPROPERTY_SUPPORT_GET,
|
ok(support & KSPROPERTY_SUPPORT_GET,
|
||||||
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W: "
|
"Couldn't get DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W: "
|
||||||
"support = 0x%x\n",support);
|
"support = 0x%lx\n",support);
|
||||||
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
ok(!(support & KSPROPERTY_SUPPORT_SET),"Shouldn't be able to set "
|
||||||
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W: support = 0x%x\n",support);
|
"DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W: support = 0x%lx\n",support);
|
||||||
|
|
||||||
if (support & KSPROPERTY_SUPPORT_GET) {
|
if (support & KSPROPERTY_SUPPORT_GET) {
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W_DATA data;
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W_DATA data;
|
||||||
|
@ -507,7 +507,7 @@ static void propset_private_tests(void)
|
||||||
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
rc = IKsPropertySet_Get(pps, &DSPROPSETID_DirectSoundDevice,
|
||||||
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W,
|
DSPROPERTY_DIRECTSOUNDDEVICE_ENUMERATE_W,
|
||||||
NULL, 0, &data, sizeof(data), &bytes);
|
NULL, 0, &data, sizeof(data), &bytes);
|
||||||
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
|
ok(rc==DS_OK, "Couldn't enumerate: 0x%lx\n",rc);
|
||||||
}
|
}
|
||||||
IKsPropertySet_Release(pps);
|
IKsPropertySet_Release(pps);
|
||||||
}
|
}
|
||||||
|
@ -529,7 +529,7 @@ static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
|
|
||||||
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
rc = DirectSoundCreate(lpGuid, &dso, NULL);
|
||||||
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED||rc==E_FAIL,
|
||||||
"DirectSoundCreate() failed: %08x\n",rc);
|
"DirectSoundCreate() failed: %08lx\n",rc);
|
||||||
if (rc!=DS_OK) {
|
if (rc!=DS_OK) {
|
||||||
if (rc==DSERR_NODRIVER)
|
if (rc==DSERR_NODRIVER)
|
||||||
trace(" No Driver\n");
|
trace(" No Driver\n");
|
||||||
|
@ -543,7 +543,7 @@ static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
/* We must call SetCooperativeLevel before calling CreateSoundBuffer */
|
||||||
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
/* DSOUND: Setting DirectSound cooperative level to DSSCL_PRIORITY */
|
||||||
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
rc=IDirectSound_SetCooperativeLevel(dso,get_hwnd(),DSSCL_PRIORITY);
|
||||||
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel() failed: %08x\n",
|
ok(rc==DS_OK,"IDirectSound_SetCooperativeLevel() failed: %08lx\n",
|
||||||
rc);
|
rc);
|
||||||
if (rc!=DS_OK)
|
if (rc!=DS_OK)
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
@ -557,7 +557,7 @@ static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
ok((rc==DS_OK&&primary!=NULL)
|
ok((rc==DS_OK&&primary!=NULL)
|
||||||
|| broken(rc==DSERR_INVALIDPARAM),
|
|| broken(rc==DSERR_INVALIDPARAM),
|
||||||
"IDirectSound_CreateSoundBuffer() failed to "
|
"IDirectSound_CreateSoundBuffer() failed to "
|
||||||
"create a hardware 3D primary buffer: %08x\n",rc);
|
"create a hardware 3D primary buffer: %08lx\n",rc);
|
||||||
if(rc==DSERR_INVALIDPARAM) {
|
if(rc==DSERR_INVALIDPARAM) {
|
||||||
skip("broken driver\n");
|
skip("broken driver\n");
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
@ -575,11 +575,11 @@ static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
||||||
bufdesc.dwFlags=DSBCAPS_CTRLDEFAULT|DSBCAPS_GETCURRENTPOSITION2;
|
bufdesc.dwFlags=DSBCAPS_CTRLDEFAULT|DSBCAPS_GETCURRENTPOSITION2;
|
||||||
bufdesc.dwBufferBytes=wfx.nAvgBytesPerSec;
|
bufdesc.dwBufferBytes=wfx.nAvgBytesPerSec;
|
||||||
bufdesc.lpwfxFormat=&wfx;
|
bufdesc.lpwfxFormat=&wfx;
|
||||||
trace(" Testing a secondary buffer at %dx%dx%d\n",
|
trace(" Testing a secondary buffer at %ldx%dx%d\n",
|
||||||
wfx.nSamplesPerSec,wfx.wBitsPerSample,wfx.nChannels);
|
wfx.nSamplesPerSec,wfx.wBitsPerSample,wfx.nChannels);
|
||||||
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
rc=IDirectSound_CreateSoundBuffer(dso,&bufdesc,&secondary,NULL);
|
||||||
ok((rc==DS_OK && secondary!=NULL) || broken(rc == DSERR_CONTROLUNAVAIL), /* vmware drivers on w2k */
|
ok((rc==DS_OK && secondary!=NULL) || broken(rc == DSERR_CONTROLUNAVAIL), /* vmware drivers on w2k */
|
||||||
"IDirectSound_CreateSoundBuffer() failed to create a secondary buffer: %08x\n",rc);
|
"IDirectSound_CreateSoundBuffer() failed to create a secondary buffer: %08lx\n",rc);
|
||||||
if (rc==DS_OK&&secondary!=NULL) {
|
if (rc==DS_OK&&secondary!=NULL) {
|
||||||
IKsPropertySet * pPropertySet=NULL;
|
IKsPropertySet * pPropertySet=NULL;
|
||||||
rc=IDirectSoundBuffer_QueryInterface(secondary,
|
rc=IDirectSoundBuffer_QueryInterface(secondary,
|
||||||
|
@ -671,7 +671,7 @@ static void propset_buffer_tests(void)
|
||||||
{
|
{
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
rc = DirectSoundEnumerateA(dsenum_callback, NULL);
|
||||||
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08x\n",rc);
|
ok(rc==DS_OK,"DirectSoundEnumerateA() failed: %08lx\n",rc);
|
||||||
trace("tested %u DirectSound drivers\n", driver_count);
|
trace("tested %u DirectSound drivers\n", driver_count);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue