mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
h264parse: Do not trigger caps update if we only have PPS updates
Updating caps results in downstream elements potentially reconfiguring themselves (such as decoders). If we do this in the middle of keyframes, we would result in those elements being reconfigured and handling garbage until the next keyframe. Instead of this only send (potentially) new codec_data when we have *both* SPS and PPS. https://bugzilla.gnome.org/show_bug.cgi?id=705333
This commit is contained in:
parent
5b63a7c8e0
commit
b17676a1d5
1 changed files with 4 additions and 2 deletions
|
@ -509,8 +509,10 @@ gst_h264_parse_process_nal (GstH264Parse * h264parse, GstH264NalUnit * nalu)
|
|||
GST_WARNING_OBJECT (h264parse, "failed to parse PPS:");
|
||||
|
||||
/* parameters might have changed, force caps check */
|
||||
GST_DEBUG_OBJECT (h264parse, "triggering src caps check");
|
||||
h264parse->update_caps = TRUE;
|
||||
if (!h264parse->have_pps) {
|
||||
GST_DEBUG_OBJECT (h264parse, "triggering src caps check");
|
||||
h264parse->update_caps = TRUE;
|
||||
}
|
||||
h264parse->have_pps = TRUE;
|
||||
if (h264parse->push_codec && h264parse->have_sps) {
|
||||
/* SPS and PPS found in stream before the first pre_push_frame, no need
|
||||
|
|
Loading…
Reference in a new issue