From: Lucas Stach <[email protected]>

Set the pipeline latency via the processing deadline property to
something that can actually be reached under real system load. Also
add some more slack to the allowed buffer lateness. As the whole
pipeline is running at 30fps, the default 5ms is a bit harsh and
drops frames that are still fine to present.

Signed-off-by: Lucas Stach <[email protected]>
---
 plugin/gstplayer.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/plugin/gstplayer.cpp b/plugin/gstplayer.cpp
index 909843b..df2c0c9 100644
--- a/plugin/gstplayer.cpp
+++ b/plugin/gstplayer.cpp
@@ -378,7 +378,9 @@ void QtGstPlayer::updatePipeline()
        GstElement *upload = gst_element_factory_make("glupload", NULL);
        GstElement *sink = gst_element_factory_make("qmlglsink", NULL);
 
-       g_object_set(G_OBJECT(sink), "widget", m_sink, NULL);
+       g_object_set(G_OBJECT(sink), "widget", m_sink,
+                                    "processing-deadline", 35 * GST_MSECOND,
+                                    "max-lateness", 15 * GST_MSECOND, NULL);
 
        gst_bin_add_many(GST_BIN(sinkBin), upload, sink, NULL);
        gst_element_link_many(upload, sink, NULL);
-- 
2.30.2


Reply via email to