waylandsink: Let the baseclass know when frames are dropped

This is using the new GST_BASE_SINK_FLOW_DROPPED return value.
With this change, fpsdisplaysink will properly report the
render and dropped rate.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3801>
This commit is contained in:
Nicolas Dufresne 2023-02-15 13:11:36 -05:00 committed by GStreamer Marge Bot
parent 5c256cffa6
commit 9084a960a5
2 changed files with 3 additions and 0 deletions

View file

@ -1001,6 +1001,7 @@ gst_gtk_wayland_sink_show_frame (GstVideoSink * vsink, GstBuffer * buffer)
if (!priv->wl_window) { if (!priv->wl_window) {
GST_LOG_OBJECT (self, GST_LOG_OBJECT (self,
"buffer %" GST_PTR_FORMAT " dropped (waiting for window)", buffer); "buffer %" GST_PTR_FORMAT " dropped (waiting for window)", buffer);
ret = GST_BASE_SINK_FLOW_DROPPED;
goto done; goto done;
} }
@ -1008,6 +1009,7 @@ gst_gtk_wayland_sink_show_frame (GstVideoSink * vsink, GstBuffer * buffer)
if (priv->redraw_pending) { if (priv->redraw_pending) {
GST_LOG_OBJECT (self, "buffer %" GST_PTR_FORMAT " dropped (redraw pending)", GST_LOG_OBJECT (self, "buffer %" GST_PTR_FORMAT " dropped (redraw pending)",
buffer); buffer);
ret = GST_BASE_SINK_FLOW_DROPPED;
goto done; goto done;
} }

View file

@ -773,6 +773,7 @@ gst_wayland_sink_show_frame (GstVideoSink * vsink, GstBuffer * buffer)
if (self->redraw_pending) { if (self->redraw_pending) {
GST_LOG_OBJECT (self, "buffer %" GST_PTR_FORMAT " dropped (redraw pending)", GST_LOG_OBJECT (self, "buffer %" GST_PTR_FORMAT " dropped (redraw pending)",
buffer); buffer);
ret = GST_BASE_SINK_FLOW_DROPPED;
goto done; goto done;
} }