"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "dlls/evr/mixer.c" between
wine-5.12.tar.xz and wine-5.13.tar.xz

About: Wine is an Open Source implementation of the MS Windows API on top of X, OpenGL, and Unix. Think of Wine as a compatibility layer for running Windows programs. Development release.

mixer.c  (wine-5.12.tar.xz):mixer.c  (wine-5.13.tar.xz)
skipping to change at line 76 skipping to change at line 76
struct input_stream inputs[MAX_MIXER_INPUT_STREAMS]; struct input_stream inputs[MAX_MIXER_INPUT_STREAMS];
unsigned int input_ids[MAX_MIXER_INPUT_STREAMS]; unsigned int input_ids[MAX_MIXER_INPUT_STREAMS];
unsigned int input_count; unsigned int input_count;
struct output_stream output; struct output_stream output;
COLORREF bkgnd_color; COLORREF bkgnd_color;
IDirect3DDeviceManager9 *device_manager; IDirect3DDeviceManager9 *device_manager;
IMediaEventSink *event_sink;
CRITICAL_SECTION cs; CRITICAL_SECTION cs;
}; };
static struct video_mixer *impl_from_IUnknown(IUnknown *iface) static struct video_mixer *impl_from_IUnknown(IUnknown *iface)
{ {
return CONTAINING_RECORD(iface, struct video_mixer, IUnknown_inner); return CONTAINING_RECORD(iface, struct video_mixer, IUnknown_inner);
} }
static struct video_mixer *impl_from_IMFTransform(IMFTransform *iface) static struct video_mixer *impl_from_IMFTransform(IMFTransform *iface)
{ {
skipping to change at line 902 skipping to change at line 904
static ULONG WINAPI video_mixer_service_client_Release(IMFTopologyServiceLookupC lient *iface) static ULONG WINAPI video_mixer_service_client_Release(IMFTopologyServiceLookupC lient *iface)
{ {
struct video_mixer *mixer = impl_from_IMFTopologyServiceLookupClient(iface); struct video_mixer *mixer = impl_from_IMFTopologyServiceLookupClient(iface);
return IMFTransform_Release(&mixer->IMFTransform_iface); return IMFTransform_Release(&mixer->IMFTransform_iface);
} }
static HRESULT WINAPI video_mixer_service_client_InitServicePointers(IMFTopology ServiceLookupClient *iface, static HRESULT WINAPI video_mixer_service_client_InitServicePointers(IMFTopology ServiceLookupClient *iface,
IMFTopologyServiceLookup *service_lookup) IMFTopologyServiceLookup *service_lookup)
{ {
FIXME("%p, %p.\n", iface, service_lookup); struct video_mixer *mixer = impl_from_IMFTopologyServiceLookupClient(iface);
unsigned int count;
HRESULT hr;
return E_NOTIMPL; TRACE("%p, %p.\n", iface, service_lookup);
if (!service_lookup)
return E_POINTER;
EnterCriticalSection(&mixer->cs);
count = 1;
if (FAILED(hr = IMFTopologyServiceLookup_LookupService(service_lookup, MF_SE
RVICE_LOOKUP_GLOBAL, 0,
&MR_VIDEO_RENDER_SERVICE, &IID_IMediaEventSink, (void **)&mixer->eve
nt_sink, &count)))
{
WARN("Failed to get renderer event sink, hr %#x.\n", hr);
}
LeaveCriticalSection(&mixer->cs);
return hr;
} }
static HRESULT WINAPI video_mixer_service_client_ReleaseServicePointers(IMFTopol ogyServiceLookupClient *iface) static HRESULT WINAPI video_mixer_service_client_ReleaseServicePointers(IMFTopol ogyServiceLookupClient *iface)
{ {
FIXME("%p.\n", iface); struct video_mixer *mixer = impl_from_IMFTopologyServiceLookupClient(iface);
return E_NOTIMPL; TRACE("%p.\n", iface);
EnterCriticalSection(&mixer->cs);
if (mixer->event_sink)
IMediaEventSink_Release(mixer->event_sink);
mixer->event_sink = NULL;
LeaveCriticalSection(&mixer->cs);
return S_OK;
} }
static const IMFTopologyServiceLookupClientVtbl video_mixer_service_client_vtbl = static const IMFTopologyServiceLookupClientVtbl video_mixer_service_client_vtbl =
{ {
video_mixer_service_client_QueryInterface, video_mixer_service_client_QueryInterface,
video_mixer_service_client_AddRef, video_mixer_service_client_AddRef,
video_mixer_service_client_Release, video_mixer_service_client_Release,
video_mixer_service_client_InitServicePointers, video_mixer_service_client_InitServicePointers,
video_mixer_service_client_ReleaseServicePointers, video_mixer_service_client_ReleaseServicePointers,
}; };
skipping to change at line 1024 skipping to change at line 1054
} }
static HRESULT WINAPI video_mixer_getservice_GetService(IMFGetService *iface, RE FGUID service, REFIID riid, void **obj) static HRESULT WINAPI video_mixer_getservice_GetService(IMFGetService *iface, RE FGUID service, REFIID riid, void **obj)
{ {
TRACE("%p, %s, %s, %p.\n", iface, debugstr_guid(service), debugstr_guid(riid ), obj); TRACE("%p, %s, %s, %p.\n", iface, debugstr_guid(service), debugstr_guid(riid ), obj);
if (IsEqualGUID(service, &MR_VIDEO_MIXER_SERVICE)) if (IsEqualGUID(service, &MR_VIDEO_MIXER_SERVICE))
{ {
if (IsEqualIID(riid, &IID_IMFVideoMixerBitmap) || if (IsEqualIID(riid, &IID_IMFVideoMixerBitmap) ||
IsEqualIID(riid, &IID_IMFVideoProcessor) || IsEqualIID(riid, &IID_IMFVideoProcessor) ||
IsEqualIID(riid, &IID_IMFVideoPositionMapper)) IsEqualIID(riid, &IID_IMFVideoPositionMapper) ||
IsEqualIID(riid, &IID_IMFVideoMixerControl) ||
IsEqualIID(riid, &IID_IMFVideoMixerControl2))
{ {
return IMFGetService_QueryInterface(iface, riid, obj); return IMFGetService_QueryInterface(iface, riid, obj);
} }
} }
FIXME("Unsupported service %s, riid %s.\n", debugstr_guid(service), debugstr _guid(riid)); FIXME("Unsupported service %s, riid %s.\n", debugstr_guid(service), debugstr _guid(riid));
return E_NOTIMPL; return E_NOTIMPL;
} }
 End of changes. 6 change blocks. 
5 lines changed or deleted 39 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)