gstreamer/patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch

45 lines
1.7 KiB
Diff
Raw Normal View History

From 56df8be6dff017d32218bb3111e6ae6ff1316dec Mon Sep 17 00:00:00 2001
From: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Date: Tue, 26 May 2015 09:33:57 +0300
Subject: [PATCH 3/6] h264parse: default to byte-stream/nalu format (Annex B).
Always default to stream-format=byte-stream,alignment=nalu if avcC
format was not detected. This is the natural stream format specified
in the standard (Annex.B): a series of NAL units prefixed with the
usual start code.
https://bugzilla.gnome.org/show_bug.cgi?id=732167
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
---
gst/vaapi/gsth264parse.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/gst/vaapi/gsth264parse.c b/gst/vaapi/gsth264parse.c
index f472a5e..f1ed269 100644
--- a/gst/vaapi/gsth264parse.c
+++ b/gst/vaapi/gsth264parse.c
@@ -405,7 +405,8 @@ gst_h264_parse_negotiate (GstH264Parse * h264parse, gint in_format,
if (!format)
format = GST_H264_PARSE_FORMAT_BYTE;
if (!align)
- align = GST_H264_PARSE_ALIGN_AU;
+ align = format == GST_H264_PARSE_FORMAT_BYTE ? GST_H264_PARSE_ALIGN_NAL :
+ GST_H264_PARSE_ALIGN_AU;
GST_DEBUG_OBJECT (h264parse, "selected format %s, alignment %s",
gst_h264_parse_get_string (h264parse, TRUE, format),
@@ -2452,6 +2453,8 @@ gst_h264_parse_set_caps (GstBaseParse * parse, GstCaps * caps)
/* bytestream caps sanity checks */
if (format == GST_H264_PARSE_FORMAT_BYTE) {
+ if (align == GST_H264_PARSE_ALIGN_NONE)
+ align = GST_H264_PARSE_ALIGN_NAL;
/* should have SPS/PSS in-band (and/or oob in streamheader field) */
if (codec_data_value != NULL)
goto bytestream_caps_with_codec_data;
--
2.5.1