From: Sebastian Dröge Date: Tue, 4 Aug 2015 08:48:27 +0000 (+0300) Subject: rtph264depay: PPS replaces and old PPS if it has the same id, independent of SPS id X-Git-Tag: 1.6.0~107 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0c124f76d8c39ad6114ecc0e3c244953f41a21d;p=platform%2Fupstream%2Fgst-plugins-good.git rtph264depay: PPS replaces and old PPS if it has the same id, independent of SPS id The spec says: When a picture parameter set NAL unit with a particular value of pic_parameter_set_id is received, its content replaces the content of the previous picture parameter set NAL unit, in decoding order, with the same value of pic_parameter_set_id (when a previous picture parameter set NAL unit with the same value of pic_parameter_set_id was present in the bitstream). --- diff --git a/gst/rtp/gstrtph264depay.c b/gst/rtp/gstrtph264depay.c index 906d009..5686d87 100644 --- a/gst/rtp/gstrtph264depay.c +++ b/gst/rtp/gstrtph264depay.c @@ -519,7 +519,7 @@ gst_rtp_h264_add_sps_pps (GstElement * rtph264, GPtrArray * sps_array, gst_buffer_map (pps, &ppsmap, GST_MAP_READ); parse_pps (&ppsmap, &tmp_sps_id, &tmp_pps_id); - if (sps_id == tmp_sps_id && pps_id == tmp_pps_id) { + if (pps_id == tmp_pps_id) { if (map.size == ppsmap.size && memcmp (map.data, ppsmap.data, ppsmap.size) == 0) { GST_LOG_OBJECT (rtph264, "Unchanged PPS %u:%u, not updating", sps_id,