mf: Add MFCreateVideoRendererActivate().

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Nikolay Sivov 2019-11-04 16:04:33 +03:00 committed by Alexandre Julliard
parent c1a62e0167
commit fef1d403c5
4 changed files with 38 additions and 1 deletions

View File

@ -1144,3 +1144,27 @@ HRESULT WINAPI MFEnumDeviceSources(IMFAttributes *attributes, IMFActivate ***sou
return S_OK;
}
static HRESULT evr_create_object(IMFAttributes *attributes, void *user_context, IUnknown **obj)
{
FIXME("%p, %p, %p.\n", attributes, user_context, obj);
return E_NOTIMPL;
}
static void evr_free_private(void *user_context)
{
}
static const struct activate_funcs evr_activate_funcs =
{
evr_create_object,
evr_free_private,
};
HRESULT WINAPI MFCreateVideoRendererActivate(HWND hwnd, IMFActivate **activate)
{
TRACE("%p, %p.\n", hwnd, activate);
return create_activation_object(hwnd, &evr_activate_funcs, activate);
}

View File

@ -67,7 +67,7 @@
@ stub MFCreateTranscodeTopology
@ stub MFCreateUrlmonSchemePlugin
@ stub MFCreateVideoRenderer
@ stub MFCreateVideoRendererActivate
@ stdcall MFCreateVideoRendererActivate(long ptr)
@ stub MFCreateWMAEncoderActivate
@ stub MFCreateWMVEncoderActivate
@ stdcall MFEnumDeviceSources(ptr ptr ptr)

View File

@ -2584,6 +2584,17 @@ if (SUCCEEDED(hr))
CoUninitialize();
}
static void test_evr(void)
{
IMFActivate *activate;
HRESULT hr;
hr = MFCreateVideoRendererActivate(NULL, &activate);
ok(hr == S_OK, "Failed to create activate object, hr %#x.\n", hr);
IMFActivate_Release(activate);
}
START_TEST(mf)
{
test_topology();
@ -2597,4 +2608,5 @@ START_TEST(mf)
test_video_processor();
test_quality_manager();
test_sar();
test_evr();
}

View File

@ -586,6 +586,7 @@ cpp_quote("HRESULT WINAPI MFCreateSystemTimeSource(IMFPresentationTimeSource **t
cpp_quote("HRESULT WINAPI MFCreateTopology(IMFTopology **topology);")
cpp_quote("HRESULT WINAPI MFCreateTopologyNode(MF_TOPOLOGY_TYPE node_type, IMFTopologyNode **node);")
cpp_quote("HRESULT WINAPI MFCreateTopoLoader(IMFTopoLoader **loader);")
cpp_quote("HRESULT WINAPI MFCreateVideoRendererActivate(HWND hwnd, IMFActivate **activate);")
cpp_quote("HRESULT WINAPI MFEnumDeviceSources(IMFAttributes *attributes, IMFActivate ***sources, UINT32 *count);")
cpp_quote("HRESULT WINAPI MFGetSupportedMimeTypes(PROPVARIANT *array);")
cpp_quote("HRESULT WINAPI MFGetService(IUnknown *object, REFGUID service, REFIID iid, void **obj);")