After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 640017 - basevideodecoder: add API to drop a frame and post a QoS message on the bus
basevideodecoder: add API to drop a frame and post a QoS message on the bus
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal enhancement
: 0.10.23
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on: 658241
Blocks:
 
 
Reported: 2011-01-20 00:56 UTC by Olivier Crête
Modified: 2011-11-25 11:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
basevideodecoder: post QoS message on the bus when dropping (3.96 KB, patch)
2011-11-23 20:06 UTC, Tim-Philipp Müller
none Details | Review
basevideodecoder: post QoS message on the bus when dropping a frame (3.89 KB, patch)
2011-11-23 20:26 UTC, Tim-Philipp Müller
needs-work Details | Review
basevideodecoder: add API to drop a frame and post a QoS message on the bus (7.52 KB, patch)
2011-11-24 14:30 UTC, Tim-Philipp Müller
committed Details | Review

Description Olivier Crête 2011-01-20 00:56:58 UTC
BaseVideoDecoder based vp8dec fails to emit the QoS GstMessage when dropping frames
Comment 1 David Schleef 2011-09-17 20:45:53 UTC
vp8dec doesn't drop frames due to QoS.

However, more relevantly, basevideodecoder doesn't do this if vp8dec were to drop frames due to QoS.
Comment 2 Tim-Philipp Müller 2011-11-23 20:06:06 UTC
Created attachment 202022 [details] [review]
 basevideodecoder: post QoS message on the bus when dropping

Attempt at fixing this.
Comment 3 Tim-Philipp Müller 2011-11-23 20:26:06 UTC
Created attachment 202024 [details] [review]
basevideodecoder: post QoS message on the bus when dropping a frame

Same as before, just without the GST_ERROR_OBJECT.
Comment 4 Sebastian Dröge (slomo) 2011-11-24 07:32:20 UTC
Review of attachment 202024 [details] [review]:

::: gst-libs/gst/video/gstbasevideodecoder.c
@@ +1491,3 @@
+    /* FIXME: do we need a way to mark frames that should not be counted as
+     * dropped (e.g. "invisible frames")? */
+    base_video_decoder->dropped++;

As discussed on IRC yesterday we need something for this, yes. Best would be new API to distinguish dropping of frames and frames without a src_buffer, e.g. gst_base_video_decoder_drop_frame().
Comment 5 Tim-Philipp Müller 2011-11-24 14:30:14 UTC
Created attachment 202058 [details] [review]
basevideodecoder: add API to drop a frame and post a QoS message on the bus

API: adds gst_base_video_decoder_drop_frame()
Comment 6 Vincent Penquerc'h 2011-11-24 14:52:44 UTC
So, does that replace https://bugzilla.gnome.org/show_bug.cgi?id=658241 ?
Comment 7 Tim-Philipp Müller 2011-11-24 15:17:35 UTC
> So, does that replace https://bugzilla.gnome.org/show_bug.cgi?id=658241 ?

Not as far as I can tell. basevideodec doesn't actually do any dropping afaics. I was mostly interested in making vp8dec post QoS messages when it drops frames. That doesn't mean we can't make use of your proposed new API later as well.
Comment 8 Tim-Philipp Müller 2011-11-25 11:50:03 UTC
commit ca772ed3211b7faad8452af105f2643af43ccdac
Author: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Date:   Fri Nov 25 11:36:14 2011 +0000

    vp8dec: use new basevideodecoder API to drop frames and get QoS messages posted

commit a039499bf16f07d148d5dc16618f054d26f349ae
Author: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Date:   Wed Nov 23 20:03:32 2011 +0000

    basevideodecoder: add API to drop a frame and post a QoS message on the bus
    
    https://bugzilla.gnome.org/show_bug.cgi?id=640017
    
    API: gst_base_video_decoder_drop_frame()