gstreamer/patches/videoparsers/0003-h264parse-default-to-byte-stream-nalu-format-Annex-B.patch
Víctor Manuel Jáquez Leal d8764aa11b patches/videoparsers: rebase all the h264parse patches
In order to avoid the creation of .orig files and break the distcheck target
2015-06-04 19:14:33 +02:00

44 lines
1.7 KiB
Diff

From 652357e0da6528b0ff8a8e01782c84c032c9f342 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/3] 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 4060145..b5d2955 100644
--- a/gst/vaapi/gsth264parse.c
+++ b/gst/vaapi/gsth264parse.c
@@ -392,7 +392,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),
@@ -2264,6 +2265,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.1.4