summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Schmidt <jan@centricular.com>2015-07-24 02:46:21 +1000
committerJan Schmidt <jan@centricular.com>2015-07-24 02:46:21 +1000
commit48a1f2792316d01c4ea4c6baa27188ffae73c543 (patch)
treeb018229f0c13effb08cce8b22928a7e03b7f62a8
parent2992ff98e56efd40be2d944b1738e7932a61ded2 (diff)
h264parse: Don't discard first AU delimiter
Don't throw away AU delimiter(s) that precede the SPS/PPS. Should fix MPEG-TS playback on iOS/Quicktime when muxing streams that already have AU delimiters. See https://bugzilla.gnome.org/show_bug.cgi?id=736213 for getting h264parse to insert AU delimiters when they don't already exist.
-rw-r--r--gst/videoparsers/gsth264parse.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gst/videoparsers/gsth264parse.c b/gst/videoparsers/gsth264parse.c
index 06e483126..aabe14c4b 100644
--- a/gst/videoparsers/gsth264parse.c
+++ b/gst/videoparsers/gsth264parse.c
@@ -856,6 +856,12 @@ gst_h264_parse_process_nal (GstH264Parse * h264parse, GstH264NalUnit * nalu)
h264parse->idr_pos);
}
break;
+ case GST_H264_NAL_AU_DELIMITER:
+ /* Just accumulate AU Delimiter, whether it's before SPS or not */
+ pres = gst_h264_parser_parse_nal (nalparser, nalu);
+ if (pres != GST_H264_PARSER_OK)
+ return FALSE;
+ break;
default:
/* drop anything before the initial SPS */
if (!GST_H264_PARSE_STATE_VALID (h264parse, GST_H264_PARSE_STATE_GOT_SPS))