summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Nauwelaerts <mnauw@users.sourceforge.net>2013-11-10 12:17:18 +0100
committerSebastian Dröge <sebastian@centricular.com>2013-11-26 12:46:47 +0100
commit42a3fc36d374f4bbf51ebebc7b05b2666ceabfa1 (patch)
treeb65e60d0324556e74c89206da96bbd5997c5a020
parent4b9821c89fc435b4825e55690c43c2105dd99a02 (diff)
downloadgstreamer-plugins-bad-42a3fc36d374f4bbf51ebebc7b05b2666ceabfa1.tar.gz
mpegvideoparse: tweak extension handling
-rw-r--r--gst/videoparsers/gstmpegvideoparse.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gst/videoparsers/gstmpegvideoparse.c b/gst/videoparsers/gstmpegvideoparse.c
index b02b10d72..1feb3c52b 100644
--- a/gst/videoparsers/gstmpegvideoparse.c
+++ b/gst/videoparsers/gstmpegvideoparse.c
@@ -504,9 +504,14 @@ gst_mpegv_parse_process_sc (GstMpegvParse * mpvparse,
break;
case GST_MPEG_VIDEO_PACKET_EXTENSION:
GST_LOG_OBJECT (mpvparse, "startcode is VIDEO PACKET EXTENSION");
- parse_packet_extension (mpvparse, info, off);
- if (mpvparse->ext_count < G_N_ELEMENTS (mpvparse->ext_offsets))
- mpvparse->ext_offsets[mpvparse->ext_count++] = off;
+ if (mpvparse->pic_offset >= 0) {
+ GST_LOG_OBJECT (mpvparse, "... considered PICTURE EXTENSION");
+ parse_packet_extension (mpvparse, info, off);
+ } else {
+ GST_LOG_OBJECT (mpvparse, "... considered SEQUENCE EXTENSION");
+ if (mpvparse->ext_count < G_N_ELEMENTS (mpvparse->ext_offsets))
+ mpvparse->ext_offsets[mpvparse->ext_count++] = off;
+ }
checkconfig = FALSE;
break;
default: