quartz/dsoundrender: Do not send quality messages.

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-07-17 14:51:21 -05:00 committed by Alexandre Julliard
parent 98390d9c2d
commit f6f1983be8
2 changed files with 9 additions and 17 deletions

View File

@ -360,23 +360,7 @@ static HRESULT WINAPI DSoundRender_DoRenderSample(struct strmbase_renderer *ifac
cbSrcStream = IMediaSample_GetActualDataLength(pSample);
TRACE("Sample data ptr = %p, size = %d\n", pbSrcStream, cbSrcStream);
hr = DSoundRender_SendSampleData(This, tStart, tStop, pbSrcStream, cbSrcStream);
if (This->renderer.filter.state == State_Running && This->renderer.filter.clock && tStart >= 0) {
REFERENCE_TIME jitter, now = 0;
Quality q;
IReferenceClock_GetTime(This->renderer.filter.clock, &now);
jitter = now - This->renderer.stream_start - tStart;
if (jitter <= -DSoundRenderer_Max_Fill)
jitter += DSoundRenderer_Max_Fill;
else if (jitter < 0)
jitter = 0;
q.Type = (jitter > 0 ? Famine : Flood);
q.Proportion = 1000;
q.Late = jitter;
q.TimeStamp = tStart;
IQualityControl_Notify((IQualityControl *)This->renderer.qcimpl, &This->renderer.filter.IBaseFilter_iface, q);
}
return hr;
return DSoundRender_SendSampleData(This, tStart, tStop, pbSrcStream, cbSrcStream);
}
static HRESULT WINAPI DSoundRender_CheckMediaType(struct strmbase_renderer *iface, const AM_MEDIA_TYPE * pmt)

View File

@ -613,6 +613,13 @@ static const struct strmbase_filter_ops testfilter_ops =
.filter_destroy = testfilter_destroy,
};
static HRESULT testsource_query_interface(struct strmbase_pin *iface, REFIID iid, void **out)
{
todo_wine_if (IsEqualGUID(iid, &IID_IQualityControl))
ok(!IsEqualGUID(iid, &IID_IQualityControl), "Unexpected query for IQualityControl.\n");
return E_NOINTERFACE;
}
static HRESULT WINAPI testsource_DecideAllocator(struct strmbase_source *iface,
IMemInputPin *peer, IMemAllocator **allocator)
{
@ -621,6 +628,7 @@ static HRESULT WINAPI testsource_DecideAllocator(struct strmbase_source *iface,
static const struct strmbase_source_ops testsource_ops =
{
.base.pin_query_interface = testsource_query_interface,
.pfnAttemptConnection = BaseOutputPinImpl_AttemptConnection,
.pfnDecideAllocator = testsource_DecideAllocator,
};