mf: Add MFCreateVideoRendererActivate().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
c1a62e0167
commit
fef1d403c5
|
@ -1144,3 +1144,27 @@ HRESULT WINAPI MFEnumDeviceSources(IMFAttributes *attributes, IMFActivate ***sou
|
||||||
|
|
||||||
return S_OK;
|
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);
|
||||||
|
}
|
||||||
|
|
|
@ -67,7 +67,7 @@
|
||||||
@ stub MFCreateTranscodeTopology
|
@ stub MFCreateTranscodeTopology
|
||||||
@ stub MFCreateUrlmonSchemePlugin
|
@ stub MFCreateUrlmonSchemePlugin
|
||||||
@ stub MFCreateVideoRenderer
|
@ stub MFCreateVideoRenderer
|
||||||
@ stub MFCreateVideoRendererActivate
|
@ stdcall MFCreateVideoRendererActivate(long ptr)
|
||||||
@ stub MFCreateWMAEncoderActivate
|
@ stub MFCreateWMAEncoderActivate
|
||||||
@ stub MFCreateWMVEncoderActivate
|
@ stub MFCreateWMVEncoderActivate
|
||||||
@ stdcall MFEnumDeviceSources(ptr ptr ptr)
|
@ stdcall MFEnumDeviceSources(ptr ptr ptr)
|
||||||
|
|
|
@ -2584,6 +2584,17 @@ if (SUCCEEDED(hr))
|
||||||
CoUninitialize();
|
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)
|
START_TEST(mf)
|
||||||
{
|
{
|
||||||
test_topology();
|
test_topology();
|
||||||
|
@ -2597,4 +2608,5 @@ START_TEST(mf)
|
||||||
test_video_processor();
|
test_video_processor();
|
||||||
test_quality_manager();
|
test_quality_manager();
|
||||||
test_sar();
|
test_sar();
|
||||||
|
test_evr();
|
||||||
}
|
}
|
||||||
|
|
|
@ -586,6 +586,7 @@ cpp_quote("HRESULT WINAPI MFCreateSystemTimeSource(IMFPresentationTimeSource **t
|
||||||
cpp_quote("HRESULT WINAPI MFCreateTopology(IMFTopology **topology);")
|
cpp_quote("HRESULT WINAPI MFCreateTopology(IMFTopology **topology);")
|
||||||
cpp_quote("HRESULT WINAPI MFCreateTopologyNode(MF_TOPOLOGY_TYPE node_type, IMFTopologyNode **node);")
|
cpp_quote("HRESULT WINAPI MFCreateTopologyNode(MF_TOPOLOGY_TYPE node_type, IMFTopologyNode **node);")
|
||||||
cpp_quote("HRESULT WINAPI MFCreateTopoLoader(IMFTopoLoader **loader);")
|
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 MFEnumDeviceSources(IMFAttributes *attributes, IMFActivate ***sources, UINT32 *count);")
|
||||||
cpp_quote("HRESULT WINAPI MFGetSupportedMimeTypes(PROPVARIANT *array);")
|
cpp_quote("HRESULT WINAPI MFGetSupportedMimeTypes(PROPVARIANT *array);")
|
||||||
cpp_quote("HRESULT WINAPI MFGetService(IUnknown *object, REFGUID service, REFIID iid, void **obj);")
|
cpp_quote("HRESULT WINAPI MFGetService(IUnknown *object, REFGUID service, REFIID iid, void **obj);")
|
||||||
|
|
Loading…
Reference in New Issue