From: Mark Nauwelaerts Date: Fri, 28 Sep 2012 14:51:01 +0000 (+0200) Subject: avidemux: recognize all xsub frames as keyframes X-Git-Tag: 1.0.1~11 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cb0e4b2059607a8bb2303ac6608da6ab7a401807;p=platform%2Fupstream%2Fgst-plugins-good.git avidemux: recognize all xsub frames as keyframes Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684977 --- diff --git a/gst/avi/avi-ids.h b/gst/avi/avi-ids.h index 7b724df..695a4f8 100644 --- a/gst/avi/avi-ids.h +++ b/gst/avi/avi-ids.h @@ -49,6 +49,7 @@ typedef struct _gst_riff_avih { /* vprp (video properties) ODML header */ /* see ODML spec for some/more explanation */ #define GST_RIFF_TAG_vprp GST_MAKE_FOURCC ('v','p','r','p') +#define GST_RIFF_DXSB GST_MAKE_FOURCC ('D','X','S','B') #define GST_RIFF_VPRP_VIDEO_FIELDS (2) typedef struct _gst_riff_vprp_video_field_desc { diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c index 533e6bb..434c650 100644 --- a/gst/avi/gstavidemux.c +++ b/gst/avi/gstavidemux.c @@ -2656,6 +2656,9 @@ gst_avi_demux_parse_index (GstAviDemux * avi, GstBuffer * buf) if (stream->strh->type == GST_RIFF_FCC_auds) { /* all audio frames are keyframes */ ENTRY_SET_KEYFRAME (&entry); + } else if (stream->strf.vids->compression == GST_RIFF_DXSB) { + /* all xsub frames are keyframes */ + ENTRY_SET_KEYFRAME (&entry); } else { guint32 flags; /* else read flags */