Zebediah Figura : quartz/vmr9: Set the stream count to 4 in IVMRWindowlessControl9::SetVideoClippingWindow().
Module: wine Branch: master Commit: e15c13c5926f957578350a55fbeb0cfc640d70eb URL: https://source.winehq.org/git/wine.git/?a=commit;h=e15c13c5926f957578350a55f... Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Tue May 12 21:25:01 2020 -0500 quartz/vmr9: Set the stream count to 4 in IVMRWindowlessControl9::SetVideoClippingWindow(). Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/quartz/tests/vmr9.c | 13 ++++++------- dlls/quartz/vmr9.c | 5 ++++- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/dlls/quartz/tests/vmr9.c b/dlls/quartz/tests/vmr9.c index d7664adac0..e3efe56e44 100644 --- a/dlls/quartz/tests/vmr9.c +++ b/dlls/quartz/tests/vmr9.c @@ -3178,20 +3178,19 @@ static void test_mixing_mode(void) ok(hr == S_OK, "Got hr %#x.\n", hr); hr = IVMRFilterConfig9_GetNumberOfStreams(config, &stream_count); - todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); - todo_wine ok(stream_count == 4, "Got %u streams.\n", stream_count); + ok(hr == S_OK, "Got hr %#x.\n", hr); + ok(stream_count == 4, "Got %u streams.\n", stream_count); hr = IBaseFilter_QueryInterface(filter, &IID_IVMRMixerControl9, (void **)&mixer_control); - todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); - if (hr == S_OK) - IVMRMixerControl9_Release(mixer_control); + ok(hr == S_OK, "Got hr %#x.\n", hr); + IVMRMixerControl9_Release(mixer_control); hr = IVMRFilterConfig9_SetNumberOfStreams(config, 2); - todo_wine ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr); + ok(hr == VFW_E_WRONG_STATE, "Got hr %#x.\n", hr); hr = IVMRFilterConfig9_GetNumberOfStreams(config, &stream_count); ok(hr == S_OK, "Got hr %#x.\n", hr); - todo_wine ok(stream_count == 4, "Got %u streams.\n", stream_count); + ok(stream_count == 4, "Got %u streams.\n", stream_count); IVMRWindowlessControl9_Release(windowless_control); IVMRFilterConfig9_Release(config); diff --git a/dlls/quartz/vmr9.c b/dlls/quartz/vmr9.c index edcfe44732..73119431a6 100644 --- a/dlls/quartz/vmr9.c +++ b/dlls/quartz/vmr9.c @@ -1734,6 +1734,7 @@ static HRESULT WINAPI VMR9WindowlessControl_SetAspectRatioMode(IVMRWindowlessCon static HRESULT WINAPI VMR9WindowlessControl_SetVideoClippingWindow(IVMRWindowlessControl9 *iface, HWND window) { struct quartz_vmr *filter = impl_from_IVMRWindowlessControl9(iface); + HRESULT hr; TRACE("filter %p, window %p.\n", filter, window); @@ -1754,8 +1755,10 @@ static HRESULT WINAPI VMR9WindowlessControl_SetVideoClippingWindow(IVMRWindowles filter->clipping_window = window; + hr = IVMRFilterConfig9_SetNumberOfStreams(&filter->IVMRFilterConfig9_iface, 4); + LeaveCriticalSection(&filter->renderer.filter.csFilter); - return S_OK; + return hr; } static HRESULT WINAPI VMR9WindowlessControl_RepaintVideo(IVMRWindowlessControl9 *iface, HWND hwnd, HDC hdc)
participants (1)
-
Alexandre Julliard