rtph264depay: expose wait-for-keyframe property
authorMathieu Duponchelle <mathieu@centricular.com>
Wed, 9 Dec 2020 00:24:57 +0000 (01:24 +0100)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 18 Feb 2021 01:54:03 +0000 (01:54 +0000)
commit69a43dd00bd5a6e55c163dc76911b0e543adbb11
tree6361f1fded41d838fba655c5af0398284caf0181
parente71648e214d2995d5555cd0e1e9a91db6180781f
rtph264depay: expose wait-for-keyframe property

Similar to rtpvp8depay, when packet loss occurs, the depayloader
starts waiting for a keyframe.

We try to only stop waiting when all the packets for the new keyframe
have been received, by only resetting waiting_for_keyframe when
encountering the first packet of a keyframe, this is slightly
fragile because there is no bit that explicitly marks the start
of an access unit, so we rely on the existing picture_start
detection code.

As a consequence, the property is only meaningful when outputting
access units, and is ignored when outputting NALs directly.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/834>
gst/rtp/gstrtph264depay.c
gst/rtp/gstrtph264depay.h