Zebediah Figura : quartz/dsoundrender: Do not send quality messages.

Alexandre Julliard julliard at winehq.org
Fri Jul 17 16:30:47 CDT 2020


Module: wine
Branch: master
Commit: f6f1983be8c332911bf45277650f9f401a56e7f1
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=f6f1983be8c332911bf45277650f9f401a56e7f1

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Fri Jul 17 14:51:21 2020 -0500

quartz/dsoundrender: Do not send quality messages.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/quartz/dsoundrender.c       | 18 +-----------------
 dlls/quartz/tests/dsoundrender.c |  8 ++++++++
 2 files changed, 9 insertions(+), 17 deletions(-)

diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c
index 225c1e07b9..fba206ecb6 100644
--- a/dlls/quartz/dsoundrender.c
+++ b/dlls/quartz/dsoundrender.c
@@ -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)
diff --git a/dlls/quartz/tests/dsoundrender.c b/dlls/quartz/tests/dsoundrender.c
index 35f935bcad..0e7fed4c25 100644
--- a/dlls/quartz/tests/dsoundrender.c
+++ b/dlls/quartz/tests/dsoundrender.c
@@ -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,
 };




More information about the wine-cvs mailing list