summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaj-Michael Lang <milang@tal.org>2010-02-08 13:54:57 +0200
committerTim-Philipp Müller <tim.muller@collabora.co.uk>2010-02-15 12:50:45 +0000
commit0230f7ed9e3c976a614a9108945b7746437c3559 (patch)
tree29ecdbbc9fc76271ef2a8b85883e8fa11f4614e1
parent8e5e2dbe49c7895a072f462befa5fc4781cc1301 (diff)
typefind: Handle stm module format
Fixes #609314.
-rw-r--r--gst/typefind/gsttypefindfunctions.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c
index 8a7e6601..a15eb174 100644
--- a/gst/typefind/gsttypefindfunctions.c
+++ b/gst/typefind/gsttypefindfunctions.c
@@ -2475,6 +2475,21 @@ mod_type_find (GstTypeFind * tf, gpointer unused)
return;
}
}
+ /* STM */
+ if ((data = gst_type_find_peek (tf, 20, 8)) != NULL) {
+ if (strncasecmp ((gchar *) data, "!Scream!", 8) == 0 ||
+ strncasecmp ((gchar *) data, "BMOD2STM", 8) == 0) {
+ guint8 *id, *stmtype;
+
+ if ((id = gst_type_find_peek (tf, 28, 1)) == NULL)
+ return;
+ if ((stmtype = gst_type_find_peek (tf, 29, 1)) == NULL)
+ return;
+ if (*id == 0x1A && *stmtype == 2)
+ gst_type_find_suggest (tf, GST_TYPE_FIND_MAXIMUM, MOD_CAPS);
+ return;
+ }
+ }
}
/*** application/x-shockwave-flash ***/