quartz/vmr9: Implement IVMRFilterConfig::SetRenderingMode().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=42372
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2019-04-01 21:38:25 -05:00 committed by Alexandre Julliard
parent e4b58b450b
commit edf1e7696f
2 changed files with 14 additions and 13 deletions

View File

@ -40,14 +40,14 @@ static void test_filter_config(void)
ok(mode == VMRMode_Windowed, "Got mode %#x.\n", mode);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowed);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_GetRenderingMode(config, &mode);
ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(mode == VMRMode_Windowed, "Got mode %#x.\n", mode);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowed);
todo_wine ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ref = IVMRFilterConfig_Release(config);
ok(!ref, "Got outstanding refcount %d.\n", ref);
@ -57,14 +57,14 @@ static void test_filter_config(void)
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowless);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_GetRenderingMode(config, &mode);
ok(hr == S_OK, "Got hr %#x.\n", hr);
todo_wine ok(mode == VMRMode_Windowless, "Got mode %#x.\n", mode);
ok(mode == VMRMode_Windowless, "Got mode %#x.\n", mode);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowed);
todo_wine ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ref = IVMRFilterConfig_Release(config);
ok(!ref, "Got outstanding refcount %d.\n", ref);
@ -74,14 +74,14 @@ static void test_filter_config(void)
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Renderless);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_GetRenderingMode(config, &mode);
ok(hr == S_OK, "Got hr %#x.\n", hr);
todo_wine ok(mode == VMRMode_Renderless, "Got mode %#x.\n", mode);
ok(mode == VMRMode_Renderless, "Got mode %#x.\n", mode);
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowless);
todo_wine ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr);
ref = IVMRFilterConfig_Release(config);
ok(!ref, "Got outstanding refcount %d.\n", ref);
@ -111,11 +111,11 @@ static void test_filter_config(void)
/* Despite MSDN, you can still change the rendering mode after setting the
* stream count. */
hr = IVMRFilterConfig_SetRenderingMode(config, VMRMode_Windowless);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IVMRFilterConfig_GetRenderingMode(config, &mode);
ok(hr == S_OK, "Got hr %#x.\n", hr);
todo_wine ok(mode == VMRMode_Windowless, "Got mode %#x.\n", mode);
ok(mode == VMRMode_Windowless, "Got mode %#x.\n", mode);
hr = IVMRFilterConfig_GetNumberOfStreams(config, &count);
todo_wine {

View File

@ -1246,10 +1246,11 @@ static HRESULT WINAPI VMR7FilterConfig_GetRenderingPrefs(IVMRFilterConfig *iface
static HRESULT WINAPI VMR7FilterConfig_SetRenderingMode(IVMRFilterConfig *iface, DWORD mode)
{
struct quartz_vmr *This = impl_from_IVMRFilterConfig(iface);
struct quartz_vmr *filter = impl_from_IVMRFilterConfig(iface);
FIXME("(%p/%p)->(%u) stub\n", iface, This, mode);
return E_NOTIMPL;
TRACE("iface %p, mode %#x.\n", iface, mode);
return IVMRFilterConfig9_SetRenderingMode(&filter->IVMRFilterConfig9_iface, mode);
}
static HRESULT WINAPI VMR7FilterConfig_GetRenderingMode(IVMRFilterConfig *iface, DWORD *mode)