mf/session: Forward MEQualityNotify event to the quality manager.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Nikolay Sivov 2020-11-11 16:36:51 +03:00 committed by Alexandre Julliard
parent fa0beb858e
commit 3b230b58c8
1 changed files with 16 additions and 0 deletions

View File

@ -2910,6 +2910,7 @@ static HRESULT WINAPI session_events_callback_Invoke(IMFAsyncCallback *iface, IM
IMFMediaEventGenerator *event_source;
IMFMediaEvent *event = NULL;
MediaEventType event_type;
IUnknown *object = NULL;
IMFMediaSource *source;
IMFMediaStream *stream;
PROPVARIANT value;
@ -3057,6 +3058,21 @@ static HRESULT WINAPI session_events_callback_Invoke(IMFAsyncCallback *iface, IM
(IMFStreamSink *)event_source);
LeaveCriticalSection(&session->cs);
break;
case MEQualityNotify:
if (session->quality_manager)
{
if (FAILED(IMFMediaEventGenerator_QueryInterface(event_source, &IID_IMFStreamSink, (void **)&object)))
IMFMediaEventGenerator_QueryInterface(event_source, &IID_IMFTransform, (void **)&object);
if (object)
{
IMFQualityManager_NotifyQualityEvent(session->quality_manager, object, event);
IUnknown_Release(object);
}
}
break;
default:
;