Commit 13ef9840 authored by Seungha Yang's avatar Seungha Yang 🐑 Committed by Tim-Philipp Müller
Browse files

h264parse,h265parse: Push parameter set NAL units again per segment-done

Some decoder implementations might drain out internal buffers and
reset its status on segment-done event. So, in case that
upstream stream-format is packetized but downstream supports only
byte-format, required codec-data might not be forwarded toward
downstream if such parameter set NAL units don't exist in inband
bitstream. Therefore, parse elements should re-send parameter set NAL
units like the case of flush event.

Part-of: <gstreamer/gst-plugins-bad!2351>
parent 4e1adef0
......@@ -3577,6 +3577,7 @@ gst_h264_parse_event (GstBaseParse * parse, GstEvent * event)
break;
}
case GST_EVENT_FLUSH_STOP:
case GST_EVENT_SEGMENT_DONE:
h264parse->dts = GST_CLOCK_TIME_NONE;
h264parse->ts_trn_nb = GST_CLOCK_TIME_NONE;
h264parse->push_codec = TRUE;
......
......@@ -3128,6 +3128,7 @@ gst_h265_parse_event (GstBaseParse * parse, GstEvent * event)
break;
}
case GST_EVENT_FLUSH_STOP:
case GST_EVENT_SEGMENT_DONE:
h265parse->push_codec = TRUE;
res = GST_BASE_PARSE_CLASS (parent_class)->sink_event (parse, event);
break;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment