strmbase: Get rid of current sample tracking.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2020-02-10 19:22:20 -06:00 committed by Alexandre Julliard
parent 5f9ce6870c
commit fa72a28c51
2 changed files with 0 additions and 19 deletions

View File

@ -84,7 +84,6 @@ static HRESULT renderer_init_stream(struct strmbase_filter *iface)
if (filter->sink.pin.peer) if (filter->sink.pin.peer)
ResetEvent(filter->state_event); ResetEvent(filter->state_event);
filter->eos = FALSE; filter->eos = FALSE;
BaseRendererImpl_ClearPendingSample(filter);
ResetEvent(filter->flush_event); ResetEvent(filter->flush_event);
if (filter->pFuncsTable->renderer_init_stream) if (filter->pFuncsTable->renderer_init_stream)
filter->pFuncsTable->renderer_init_stream(filter); filter->pFuncsTable->renderer_init_stream(filter);
@ -228,7 +227,6 @@ static HRESULT sink_begin_flush(struct strmbase_sink *iface)
{ {
struct strmbase_renderer *filter = impl_from_IPin(&iface->pin.IPin_iface); struct strmbase_renderer *filter = impl_from_IPin(&iface->pin.IPin_iface);
BaseRendererImpl_ClearPendingSample(filter);
SetEvent(filter->flush_event); SetEvent(filter->flush_event);
return S_OK; return S_OK;
@ -279,7 +277,6 @@ void strmbase_renderer_cleanup(struct strmbase_renderer *filter)
filter->csRenderLock.DebugInfo->Spare[0] = 0; filter->csRenderLock.DebugInfo->Spare[0] = 0;
DeleteCriticalSection(&filter->csRenderLock); DeleteCriticalSection(&filter->csRenderLock);
BaseRendererImpl_ClearPendingSample(filter);
CloseHandle(filter->state_event); CloseHandle(filter->state_event);
CloseHandle(filter->advise_event); CloseHandle(filter->advise_event);
CloseHandle(filter->flush_event); CloseHandle(filter->flush_event);
@ -313,9 +310,6 @@ HRESULT WINAPI BaseRendererImpl_Receive(struct strmbase_renderer *This, IMediaSa
DeleteMediaType(pmt); DeleteMediaType(pmt);
} }
This->pMediaSample = pSample;
IMediaSample_AddRef(pSample);
if (This->pFuncsTable->pfnPrepareReceive) if (This->pFuncsTable->pfnPrepareReceive)
hr = This->pFuncsTable->pfnPrepareReceive(This, pSample); hr = This->pFuncsTable->pfnPrepareReceive(This, pSample);
if (FAILED(hr)) if (FAILED(hr))
@ -388,22 +382,11 @@ HRESULT WINAPI BaseRendererImpl_Receive(struct strmbase_renderer *This, IMediaSa
QualityControlRender_DoQOS(This->qcimpl); QualityControlRender_DoQOS(This->qcimpl);
BaseRendererImpl_ClearPendingSample(This);
LeaveCriticalSection(&This->csRenderLock); LeaveCriticalSection(&This->csRenderLock);
return hr; return hr;
} }
HRESULT WINAPI BaseRendererImpl_ClearPendingSample(struct strmbase_renderer *iface)
{
if (iface->pMediaSample)
{
IMediaSample_Release(iface->pMediaSample);
iface->pMediaSample = NULL;
}
return S_OK;
}
HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown *outer, HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown *outer,
const CLSID *clsid, const WCHAR *sink_name, const struct strmbase_renderer_ops *ops) const CLSID *clsid, const WCHAR *sink_name, const struct strmbase_renderer_ops *ops)
{ {

View File

@ -483,7 +483,6 @@ struct strmbase_renderer
/* Signaled when a flush or state change occurs, i.e. anything that needs /* Signaled when a flush or state change occurs, i.e. anything that needs
* to immediately unblock the streaming thread. */ * to immediately unblock the streaming thread. */
HANDLE flush_event; HANDLE flush_event;
IMediaSample *pMediaSample;
REFERENCE_TIME stream_start; REFERENCE_TIME stream_start;
IQualityControl *pQSink; IQualityControl *pQSink;
@ -522,7 +521,6 @@ struct strmbase_renderer_ops
HRESULT (*renderer_pin_query_interface)(struct strmbase_renderer *iface, REFIID iid, void **out); HRESULT (*renderer_pin_query_interface)(struct strmbase_renderer *iface, REFIID iid, void **out);
}; };
HRESULT WINAPI BaseRendererImpl_ClearPendingSample(struct strmbase_renderer *filter);
HRESULT WINAPI BaseRendererImpl_Receive(struct strmbase_renderer *filter, IMediaSample *sample); HRESULT WINAPI BaseRendererImpl_Receive(struct strmbase_renderer *filter, IMediaSample *sample);
HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown *outer, HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown *outer,