32#define EXPECT_REF(obj,ref) _expect_ref((IUnknown*)obj, ref, __LINE__)
37 rc = IUnknown_Release(
obj);
38 ok_(__FILE__,
line)(rc ==
ref,
"expected refcount %d, got %d\n",
ref, rc);
49 CoCreateInstance(&CLSID_AMMultiMediaStream,
NULL, CLSCTX_INPROC_SERVER, &IID_IAMMultiMediaStream,
57 IDirectDraw* pdd =
NULL;
61 ok(
hr==
DD_OK,
"DirectDrawCreate returned: %x\n",
hr);
65 hr = IDirectDraw_QueryInterface(pdd, &IID_IDirectDraw7, (
LPVOID*)&
pdd7);
70 ok(
hr==
DD_OK,
"SetCooperativeLevel returned: %x\n",
hr);
73 ddsd.
dwSize =
sizeof(ddsd);
83 IDirectDrawSurface7_Release(
pdds7);
85 IDirectDraw7_Release(
pdd7);
87 IDirectDraw_Release(pdd);
94 IDirectDrawSurface7_Release(
pdds7);
95 IDirectDraw7_Release(
pdd7);
107 hr = IAMMultiMediaStream_GetFilterGraph(pams, &pgraph);
108 ok(
hr==
S_OK,
"IAMMultiMediaStream_GetFilterGraph returned: %x\n",
hr);
109 ok(pgraph==
NULL,
"Filtergraph should not be created yet\n");
112 IGraphBuilder_Release(pgraph);
114 hr = IAMMultiMediaStream_OpenFile(pams,
filenameW, 0);
115 ok(
hr==
S_OK,
"IAMMultiMediaStream_OpenFile returned: %x\n",
hr);
117 hr = IAMMultiMediaStream_GetFilterGraph(pams, &pgraph);
118 ok(
hr==
S_OK,
"IAMMultiMediaStream_GetFilterGraph returned: %x\n",
hr);
119 ok(pgraph!=
NULL,
"Filtergraph should be created\n");
122 IGraphBuilder_Release(pgraph);
124 IAMMultiMediaStream_Release(pams);
134 IDirectDrawSurface *surface;
141 IAMMultiMediaStream_Release(pams);
146 ok(
hr==
S_OK,
"IAMMultiMediaStream_Initialize returned: %x\n",
hr);
148 hr = IAMMultiMediaStream_AddMediaStream(pams, (
IUnknown*)
pdd7, &MSPID_PrimaryVideo, 0,
NULL);
149 ok(
hr==
S_OK,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
152 ok(
hr==
S_OK,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
154 hr = IAMMultiMediaStream_OpenFile(pams,
filenameW, 0);
155 ok(
hr==
S_OK,
"IAMMultiMediaStream_OpenFile returned: %x\n",
hr);
157 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &pvidstream);
158 ok(
hr==
S_OK,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
161 hr = IMediaStream_QueryInterface(pvidstream, &IID_IDirectDrawMediaStream, (
LPVOID*)&pddstream);
162 ok(
hr==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
165 hr = IDirectDrawMediaStream_CreateSample(pddstream,
NULL,
NULL, 0, &pddsample);
166 ok(
hr ==
S_OK,
"IDirectDrawMediaStream_CreateSample returned: %x\n",
hr);
169 hr = IDirectDrawStreamSample_GetSurface(pddsample, &surface, &
rect);
171 ok(surface ==
NULL,
"got %p\n", surface);
172 IDirectDrawStreamSample_Release(pddsample);
174 hr = IDirectDrawSurface7_QueryInterface(
pdds7, &IID_IDirectDrawSurface, (
void**)&surface);
178 hr = IDirectDrawMediaStream_CreateSample(pddstream, surface,
NULL, 0, &pddsample);
179 ok(
hr ==
S_OK,
"IDirectDrawMediaStream_CreateSample returned: %x\n",
hr);
181 IDirectDrawStreamSample_Release(pddsample);
182 IDirectDrawSurface_Release(surface);
186 IDirectDrawMediaStream_Release(pddstream);
188 IMediaStream_Release(pvidstream);
191 IAMMultiMediaStream_Release(pams);
207 IAMMultiMediaStream_Release(pams);
212 ok(
hr ==
S_OK,
"IAMMultiMediaStream_Initialize returned: %x\n",
hr);
215 hr = IAMMultiMediaStream_GetFilter(pams,
NULL);
216 ok(
hr ==
E_POINTER,
"IAMMultiMediaStream_GetFilter returned: %x\n",
hr);
217 hr = IAMMultiMediaStream_GetFilter(pams, &media_stream_filter);
218 ok(
hr ==
S_OK,
"IAMMultiMediaStream_GetFilter returned: %x\n",
hr);
221 hr = IAMMultiMediaStream_GetMediaStream(pams, &
IID_IUnknown, &dummy_stream);
222 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
224 ok(
hr == MS_E_PURPOSEID,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
227 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &video_stream);
228 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
232 ok(
hr == MS_E_PURPOSEID,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
233 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &video_stream);
234 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
236 ok(
hr == MS_E_PURPOSEID,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
237 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &video_stream);
238 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
241 hr = IAMMultiMediaStream_AddMediaStream(pams,
NULL, &MSPID_PrimaryVideo, 0,
NULL);
242 ok(
hr ==
S_OK,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
243 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &video_stream);
244 ok(
hr ==
S_OK,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
247 if (media_stream_filter)
249 hr = IMediaStreamFilter_GetMediaStream(media_stream_filter, &MSPID_PrimaryVideo, &dummy_stream);
250 ok(
hr ==
S_OK,
"IMediaStreamFilter_GetMediaStream returned: %x\n",
hr);
251 ok(dummy_stream == video_stream,
"Got wrong returned pointer %p, expected %p\n", dummy_stream, video_stream);
253 IMediaStream_Release(dummy_stream);
266 hr = IMediaStream_QueryInterface(video_stream, &IID_IAMMediaStream, (
LPVOID*)&am_media_stream);
267 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
268 ok((
void*)am_media_stream == (
void*)video_stream,
"Not same interface, got %p expected %p\n", am_media_stream, video_stream);
270 hr = IAMMediaStream_GetMultiMediaStream(am_media_stream,
NULL);
273 multi_media_stream = (
void *)0xdeadbeef;
274 hr = IAMMediaStream_GetMultiMediaStream(am_media_stream, &multi_media_stream);
275 ok(
hr ==
S_OK,
"IAMMediaStream_GetMultiMediaStream returned: %x\n",
hr);
276 ok((
void *)multi_media_stream == (
void *)pams,
"Expected %p, got %p\n", pams, multi_media_stream);
277 IMultiMediaStream_Release(multi_media_stream);
279 IAMMediaStream_Release(am_media_stream);
281 hr = IMediaStream_QueryInterface(video_stream, &
IID_IPin, (
void **)&
pin);
282 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
286 hr = IMediaStream_QueryInterface(video_stream, &IID_IAudioMediaStream, (
LPVOID*)&audio_media_stream);
289 hr = IMediaStream_QueryInterface(video_stream, &IID_IDirectDrawMediaStream, (
LPVOID*)&ddraw_stream);
290 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
298 hr = IDirectDrawMediaStream_GetFormat(ddraw_stream, ¤t_format, &
palette, &desired_format, &
flags);
299 ok(
hr == MS_E_NOSTREAM,
"IDirectDrawoMediaStream_GetFormat returned: %x\n",
hr);
301 hr = IDirectDrawMediaStream_CreateSample(ddraw_stream,
NULL,
NULL, 0, &ddraw_sample);
302 ok(
hr ==
S_OK,
"IDirectDrawMediaStream_CreateSample returned: %x\n",
hr);
304 hr = IDirectDrawMediaStream_GetMultiMediaStream(ddraw_stream,
NULL);
307 multi_media_stream = (
void *)0xdeadbeef;
308 hr = IDirectDrawMediaStream_GetMultiMediaStream(ddraw_stream, &multi_media_stream);
309 ok(
hr ==
S_OK,
"IDirectDrawMediaStream_GetMultiMediaStream returned: %x\n",
hr);
310 ok((
void *)multi_media_stream == (
void *)pams,
"Expected %p, got %p\n", pams, multi_media_stream);
311 IMultiMediaStream_Release(multi_media_stream);
315 IDirectDrawStreamSample_Release(ddraw_sample);
317 IDirectDrawMediaStream_Release(ddraw_stream);
321 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryAudio, &audio_stream);
322 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
331 const WCHAR name[] = {
'0',
'0',
'0',
'1',0};
334 hr = IAMMultiMediaStream_GetFilterGraph(pams, &filtergraph);
335 ok(
hr ==
S_OK,
"IAMMultiMediaStream_GetFilterGraph returned: %x\n",
hr);
338 hr = IGraphBuilder_FindFilterByName(filtergraph,
name, &
filter);
339 ok(
hr ==
S_OK,
"IGraphBuilder_FindFilterByName returned: %x\n",
hr);
344 ok(
hr ==
S_OK,
"IGraphBuilder_FindFilterByName returned: %x\n",
hr);
349 IBaseFilter_Release(
filter);
351 IGraphBuilder_Release(filtergraph);
353 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryAudio, &audio_stream);
354 ok(
hr == MS_E_NOSTREAM,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
357 hr = IAMMultiMediaStream_AddMediaStream(pams,
NULL, &MSPID_PrimaryAudio, 0,
NULL);
358 ok(
hr ==
S_OK,
"IAMMultiMediaStream_AddMediaStream returned: %x\n",
hr);
359 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryAudio, &audio_stream);
360 ok(
hr ==
S_OK,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
363 if (media_stream_filter)
365 hr = IMediaStreamFilter_GetMediaStream(media_stream_filter, &MSPID_PrimaryAudio, &dummy_stream);
366 ok(
hr ==
S_OK,
"IAMMultiMediaStream_GetMediaStream returned: %x\n",
hr);
367 ok(dummy_stream == audio_stream,
"Got wrong returned pointer %p, expected %p\n", dummy_stream, audio_stream);
369 IMediaStream_Release(dummy_stream);
382 hr = IMediaStream_QueryInterface(audio_stream, &IID_IAMMediaStream, (
LPVOID*)&am_media_stream);
383 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
384 ok((
void*)am_media_stream == (
void*)audio_stream,
"Not same interface, got %p expected %p\n", am_media_stream, audio_stream);
386 hr = IAMMediaStream_GetMultiMediaStream(am_media_stream,
NULL);
389 multi_media_stream = (
void *)0xdeadbeef;
390 hr = IAMMediaStream_GetMultiMediaStream(am_media_stream, &multi_media_stream);
391 ok(
hr ==
S_OK,
"IAMMediaStream_GetMultiMediaStream returned: %x\n",
hr);
392 ok((
void *)multi_media_stream == (
void *)pams,
"Expected %p, got %p\n", pams, multi_media_stream);
393 IMultiMediaStream_Release(multi_media_stream);
395 IAMMediaStream_Release(am_media_stream);
397 hr = IMediaStream_QueryInterface(audio_stream, &
IID_IPin, (
void **)&
pin);
398 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
402 hr = IMediaStream_QueryInterface(audio_stream, &IID_IDirectDrawMediaStream, (
LPVOID*)&ddraw_stream);
405 hr = IMediaStream_QueryInterface(audio_stream, &IID_IAudioMediaStream, (
LPVOID*)&audio_media_stream);
406 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
413 hr =
CoCreateInstance(&CLSID_AMAudioData,
NULL, CLSCTX_INPROC_SERVER, &IID_IAudioData, (
void **)&audio_data);
414 ok(
hr ==
S_OK,
"CoCreateInstance returned: %x\n",
hr);
416 hr = IAudioMediaStream_GetFormat(audio_media_stream,
NULL);
418 hr = IAudioMediaStream_GetFormat(audio_media_stream, &
format);
419 ok(
hr == MS_E_NOSTREAM,
"IAudioMediaStream_GetFormat returned: %x\n",
hr);
421 hr = IAudioMediaStream_CreateSample(audio_media_stream,
NULL, 0, &audio_sample);
422 ok(
hr ==
E_POINTER,
"IAudioMediaStream_CreateSample returned: %x\n",
hr);
423 hr = IAudioMediaStream_CreateSample(audio_media_stream, audio_data, 0, &audio_sample);
424 ok(
hr ==
S_OK,
"IAudioMediaStream_CreateSample returned: %x\n",
hr);
426 hr = IAudioMediaStream_GetMultiMediaStream(audio_media_stream,
NULL);
429 multi_media_stream = (
void *)0xdeadbeef;
430 hr = IAudioMediaStream_GetMultiMediaStream(audio_media_stream, &multi_media_stream);
431 ok(
hr ==
S_OK,
"IAudioMediaStream_GetMultiMediaStream returned: %x\n",
hr);
432 ok((
void *)multi_media_stream == (
void *)pams,
"Expected %p, got %p\n", pams, multi_media_stream);
433 IMultiMediaStream_Release(multi_media_stream);
436 IAudioData_Release(audio_data);
438 IAudioStreamSample_Release(audio_sample);
439 if (audio_media_stream)
440 IAudioMediaStream_Release(audio_media_stream);
444 if (media_stream_filter)
448 hr = IMediaStreamFilter_EnumPins(media_stream_filter, &enum_pins);
449 ok(
hr ==
S_OK,
"IBaseFilter_EnumPins returned: %x\n",
hr);
454 ULONG expected_nb_pins = audio_stream ? 2 : 1;
457 hr = IEnumPins_Next(enum_pins, 3, pins, &nb_pins);
459 ok(nb_pins == expected_nb_pins,
"Number of pins is %u instead of %u\n", nb_pins, expected_nb_pins);
460 for (
i = 0;
i <
min(nb_pins, expected_nb_pins);
i++)
464 ULONG nb_media_types;
473 hr = IPin_ConnectedTo(pins[
i], &
pin);
475 hr = IPin_QueryPinInfo(pins[
i], &
info);
476 ok(
hr ==
S_OK,
"IPin_QueryPinInfo returned: %x\n",
hr);
477 IBaseFilter_Release(
info.pFilter);
480 hr = IPin_EnumMediaTypes(pins[
i], &enum_media_types);
481 ok(
hr ==
S_OK,
"IPin_EnumMediaTypes returned: %x\n",
hr);
482 hr = IEnumMediaTypes_Next(enum_media_types,
sizeof(media_types) /
sizeof(media_types[0]), media_types, &nb_media_types);
484 ok(nb_media_types > 0,
"nb_media_types should be >0\n");
485 IEnumMediaTypes_Release(enum_media_types);
486 hr = IMediaStream_QueryInterface(
i ? audio_stream : video_stream, &
IID_IPin, (
void **)&
pin);
487 ok(
hr ==
S_OK,
"IMediaStream_QueryInterface returned: %x\n",
hr);
488 ok(
pin == pins[
i],
"Pin is %p instead of %p\n", pins[
i],
pin);
490 IPin_Release(pins[
i]);
492 IEnumPins_Release(enum_pins);
497 hr = IAMMultiMediaStream_OpenFile(pams,
NULL, 0);
501 IMediaStream_Release(video_stream);
503 IMediaStream_Release(audio_stream);
504 if (media_stream_filter)
505 IMediaStreamFilter_Release(media_stream_filter);
508 IAMMultiMediaStream_Release(pams);
520 IDirectDrawSurface *surface, *surface2;
521 IDirectDraw *
ddraw, *ddraw2;
529 IAMMultiMediaStream_Release(pams);
536 hr = IAMMultiMediaStream_AddMediaStream(pams, (
IUnknown*)
pdd7, &MSPID_PrimaryVideo, 0,
NULL);
539 hr = IAMMultiMediaStream_GetMediaStream(pams, &MSPID_PrimaryVideo, &pvidstream);
543 hr = IMediaStream_QueryInterface(pvidstream, &IID_IDirectDrawMediaStream, (
LPVOID*)&pddstream);
547 hr = IDirectDrawMediaStream_GetDirectDraw(pddstream, &
ddraw);
550 hr = IDirectDrawMediaStream_GetDirectDraw(pddstream, &ddraw2);
554 hr = IDirectDraw_QueryInterface(
ddraw, &IID_IDirectDraw7, (
void**)&ddraw7);
556 IDirectDraw7_Release(ddraw7);
558 IDirectDraw_Release(ddraw2);
559 IDirectDraw_Release(
ddraw);
561 hr = IDirectDrawMediaStream_CreateSample(pddstream,
NULL,
NULL, 0, &pddsample);
565 hr = IDirectDrawStreamSample_GetSurface(pddsample, &surface, &
rect);
567 ok(surface !=
NULL,
"got %p\n", surface);
569 hr = IDirectDrawSurface_QueryInterface(surface, &IID_IDirectDrawSurface7, (
void**)&surface7);
571 IDirectDrawSurface7_Release(surface7);
573 hr = IDirectDrawSurface_GetSurfaceDesc(surface, &
desc);
575 ok(
desc.dwWidth == 100,
"width %d\n",
desc.dwWidth);
576 ok(
desc.dwHeight == 100,
"height %d\n",
desc.dwHeight);
577 ok(
desc.ddpfPixelFormat.dwFlags ==
DDPF_RGB,
"format flags %08x\n",
desc.ddpfPixelFormat.dwFlags);
578 ok(
desc.ddpfPixelFormat.dwRGBBitCount,
"dwRGBBitCount %d\n",
desc.ddpfPixelFormat.dwRGBBitCount);
579 IDirectDrawSurface_Release(surface);
580 IDirectDrawStreamSample_Release(pddsample);
582 hr = IDirectDrawSurface7_QueryInterface(
pdds7, &IID_IDirectDrawSurface, (
void**)&surface);
586 hr = IDirectDrawMediaStream_CreateSample(pddstream, surface,
NULL, 0, &pddsample);
592 hr = IDirectDrawStreamSample_GetSurface(pddsample, &surface2, &
rect);
594 ok(surface == surface2,
"got %p\n", surface2);
597 IDirectDrawSurface_Release(surface2);
599 hr = IDirectDrawStreamSample_GetSurface(pddsample,
NULL,
NULL);
602 IDirectDrawStreamSample_Release(pddsample);
603 IDirectDrawSurface_Release(surface);
607 IDirectDrawMediaStream_Release(pddstream);
609 IMediaStream_Release(pvidstream);
612 IAMMultiMediaStream_Release(pams);
632 result = IUnknown_QueryInterface(
unknown, &IID_IMemoryData, (
void **)&memory_data);
635 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
639 result = IAudioData_QueryInterface(audio_data, &IID_IMemoryData, (
void **)&memory_data);
642 IAudioData_Release(audio_data);
655 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
659 skip(
"No IAudioData\n");
666 IAudioData_Release(audio_data);
682 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
686 skip(
"No IAudioData\n");
690 result = IAudioData_SetBuffer(audio_data, 100,
NULL, 0);
700 result = IAudioData_SetBuffer(audio_data, 0,
buffer, 0);
713 IAudioData_Release(audio_data);
724 DWORD actual_data = 0;
728 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
732 skip(
"No IAudioData\n");
736 result = IAudioData_SetActual(audio_data, 0);
742 result = IAudioData_SetActual(audio_data,
sizeof(
buffer) + 1);
745 result = IAudioData_SetActual(audio_data,
sizeof(
buffer));
748 actual_data = 0xdeadbeef;
749 result = IAudioData_GetInfo(audio_data,
NULL,
NULL, &actual_data);
751 ok(
sizeof(
buffer) == actual_data,
"got %u\n", actual_data);
753 result = IAudioData_SetActual(audio_data, 0);
756 actual_data = 0xdeadbeef;
757 result = IAudioData_GetInfo(audio_data,
NULL,
NULL, &actual_data);
759 ok(0 == actual_data,
"got %u\n", actual_data);
761 IAudioData_Release(audio_data);
775 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
779 skip(
"No IAudioData\n");
783 result = IAudioData_GetFormat(audio_data,
NULL);
792 wave_format.
cbSize = 0xdead;
793 result = IAudioData_GetFormat(audio_data, &wave_format);
803 IAudioData_Release(audio_data);
817 result = IUnknown_QueryInterface(
unknown, &IID_IAudioData, (
void **)&audio_data);
821 skip(
"No IAudioData\n");
825 result = IAudioData_SetFormat(audio_data,
NULL);
838 result = IAudioData_SetFormat(audio_data, &wave_format.
Format);
848 result = IAudioData_SetFormat(audio_data, &wave_format.
Format);
858 result = IAudioData_GetFormat(audio_data, &wave_format.
Format);
868 IAudioData_Release(audio_data);
@ AMMSF_ADDDEFAULTRENDERER
HRESULT WINAPI DirectDrawCreate(LPGUID lpGUID, LPDIRECTDRAW *lplpDD, LPUNKNOWN pUnkOuter)
static WCHAR unknown[MAX_STRING_RESOURCE_LEN]
#define INVALID_HANDLE_VALUE
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
HRESULT WINAPI DECLSPEC_HOTPATCH CoInitializeEx(LPVOID lpReserved, DWORD dwCoInit)
void WINAPI DECLSPEC_HOTPATCH CoUninitialize(void)
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
GLuint GLsizei GLsizei * length
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static void test_IDirectDrawStreamSample(void)
static void release_directdraw(void)
static void test_audiodata_query_interface(void)
static IUnknown * create_audio_data(void)
static IDirectDrawSurface7 * pdds7
static void _expect_ref(IUnknown *obj, ULONG ref, int line)
static const WCHAR filenameW[]
static void test_audiodata_set_actual(void)
static void test_audiodata_get_info(void)
static int create_directdraw(void)
#define EXPECT_REF(obj, ref)
static void test_audiodata_get_format(void)
static void test_renderfile(void)
static void test_audiodata_set_format(void)
static IAMMultiMediaStream * create_ammultimediastream(void)
static void test_media_streams(void)
static void test_openfile(void)
static void test_audiodata_set_buffer(void)
static IDirectDraw7 * pdd7
static const WCHAR desc[]
#define IsEqualGUID(rguid1, rguid2)
DWORD IDirectDrawSurface7
#define DDSCAPS_PRIMARYSURFACE
union WAVEFORMATEXTENSIBLE::@3019 Samples
#define VFW_E_NO_AUDIO_HARDWARE
#define VFW_E_NOT_CONNECTED
HWND WINAPI GetDesktopWindow(void)
BOOL WINAPI SetRectEmpty(_Out_ LPRECT)