Module: wine Branch: master Commit: 672ce5c7d1c1ea92ef56e762d26cb51d69404e5d URL: https://source.winehq.org/git/wine.git/?a=commit;h=672ce5c7d1c1ea92ef56e762d...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Tue Jun 11 15:40:05 2019 +0300
mf: Forward grabber clock state change calls to user callback.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/mf/samplegrabber.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/dlls/mf/samplegrabber.c b/dlls/mf/samplegrabber.c index 7bc566f..af9666c 100644 --- a/dlls/mf/samplegrabber.c +++ b/dlls/mf/samplegrabber.c @@ -1127,7 +1127,7 @@ static HRESULT WINAPI sample_grabber_clock_sink_OnClockStart(IMFClockStateSink *
sample_grabber_set_state(grabber, SINK_STATE_RUNNING);
- return S_OK; + return IMFSampleGrabberSinkCallback_OnClockStart(sample_grabber_get_callback(grabber), systime, offset); }
static HRESULT WINAPI sample_grabber_clock_sink_OnClockStop(IMFClockStateSink *iface, MFTIME systime) @@ -1138,14 +1138,16 @@ static HRESULT WINAPI sample_grabber_clock_sink_OnClockStop(IMFClockStateSink *i
sample_grabber_set_state(grabber, SINK_STATE_STOPPED);
- return S_OK; + return IMFSampleGrabberSinkCallback_OnClockStop(sample_grabber_get_callback(grabber), systime); }
static HRESULT WINAPI sample_grabber_clock_sink_OnClockPause(IMFClockStateSink *iface, MFTIME systime) { + struct sample_grabber *grabber = impl_from_IMFClockStateSink(iface); + TRACE("%p, %s.\n", iface, wine_dbgstr_longlong(systime));
- return S_OK; + return IMFSampleGrabberSinkCallback_OnClockPause(sample_grabber_get_callback(grabber), systime); }
static HRESULT WINAPI sample_grabber_clock_sink_OnClockRestart(IMFClockStateSink *iface, MFTIME systime) @@ -1156,14 +1158,16 @@ static HRESULT WINAPI sample_grabber_clock_sink_OnClockRestart(IMFClockStateSink
sample_grabber_set_state(grabber, SINK_STATE_RUNNING);
- return S_OK; + return IMFSampleGrabberSinkCallback_OnClockRestart(sample_grabber_get_callback(grabber), systime); }
static HRESULT WINAPI sample_grabber_clock_sink_OnClockSetRate(IMFClockStateSink *iface, MFTIME systime, float rate) { - FIXME("%p, %s, %f.\n", iface, wine_dbgstr_longlong(systime), rate); + struct sample_grabber *grabber = impl_from_IMFClockStateSink(iface);
- return E_NOTIMPL; + TRACE("%p, %s, %f.\n", iface, wine_dbgstr_longlong(systime), rate); + + return IMFSampleGrabberSinkCallback_OnClockSetRate(sample_grabber_get_callback(grabber), systime, rate); }
static HRESULT WINAPI sample_grabber_events_QueryInterface(IMFMediaEventGenerator *iface, REFIID riid, void **obj)