summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hervey <edward@centricular.com>2017-05-13 09:05:57 +0200
committerEdward Hervey <bilboed@bilboed.com>2017-05-18 18:12:15 +0200
commit4f713717de4f1900ec87b64a45ea348d96c52a54 (patch)
tree497c2e159c6bcc0cc9262f2cfe4558adecd38b5a
parent1f2e48852ee07bfb40e8fa2df9b11835a136a7ca (diff)
isomp4: Safely ignore [skip] atoms
Instead of warning about them
-rw-r--r--gst/isomp4/fourcc.h1
-rw-r--r--gst/isomp4/qtdemux.c4
-rw-r--r--gst/isomp4/qtdemux_types.c1
3 files changed, 5 insertions, 1 deletions
diff --git a/gst/isomp4/fourcc.h b/gst/isomp4/fourcc.h
index 51a65e9cd..d302c9799 100644
--- a/gst/isomp4/fourcc.h
+++ b/gst/isomp4/fourcc.h
@@ -204,6 +204,7 @@ G_BEGIN_DECLS
#define FOURCC_sbtl GST_MAKE_FOURCC('s','b','t','l')
#define FOURCC_sdp_ GST_MAKE_FOURCC('s','d','p',' ')
#define FOURCC_sidx GST_MAKE_FOURCC('s','i','d','x')
+#define FOURCC_skip GST_MAKE_FOURCC('s','k','i','p')
#define FOURCC_smhd GST_MAKE_FOURCC('s','m','h','d')
#define FOURCC_soaa GST_MAKE_FOURCC('s','o','a','a')
#define FOURCC_soal GST_MAKE_FOURCC('s','o','a','l')
diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c
index 87fed9b85..255b0f4c1 100644
--- a/gst/isomp4/qtdemux.c
+++ b/gst/isomp4/qtdemux.c
@@ -4301,6 +4301,7 @@ gst_qtdemux_loop_state_header (GstQTDemux * qtdemux)
break;
case FOURCC_mdat:
case FOURCC_free:
+ case FOURCC_skip:
case FOURCC_wide:
case FOURCC_PICT:
case FOURCC_pnot:
@@ -6693,8 +6694,9 @@ gst_qtdemux_process_adapter (GstQTDemux * demux, gboolean force)
case FOURCC_styp:
/* [styp] is like a [ftyp], but in fragment header. We ignore it for now
* FALLTHROUGH */
+ case FOURCC_skip:
case FOURCC_free:
- /* [free] is a padding atom */
+ /* [free] and [skip] are padding atoms */
GST_DEBUG_OBJECT (demux,
"Skipping fourcc while parsing header : %" GST_FOURCC_FORMAT,
GST_FOURCC_ARGS (fourcc));
diff --git a/gst/isomp4/qtdemux_types.c b/gst/isomp4/qtdemux_types.c
index d6cdf8118..850129d77 100644
--- a/gst/isomp4/qtdemux_types.c
+++ b/gst/isomp4/qtdemux_types.c
@@ -146,6 +146,7 @@ static const QtNodeType qt_node_types[] = {
{FOURCC_____, "----", QT_FLAG_CONTAINER,},
{FOURCC_data, "data", 0, qtdemux_dump_unknown},
{FOURCC_free, "free", 0,},
+ {FOURCC_skip, "skip", 0,},
{FOURCC_SVQ3, "SVQ3", 0,},
{FOURCC_rmra, "rmra", QT_FLAG_CONTAINER,},
{FOURCC_rmda, "rmda", QT_FLAG_CONTAINER,},