summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Fergeau <teuf@gnome.org>2003-11-23 00:33:15 +0000
committerChristophe Fergeau <teuf@gnome.org>2003-11-23 00:33:15 +0000
commitb138134c9a28887f78bd3bfdec51c88e1a2e534b (patch)
treee38ed360ec6ee99389624c03cc2201f0e764fef8
parentd0348439afa86b3c4fc25b57a6b2b322615330fc (diff)
downloadgstreamer-plugins-base-b138134c9a28887f78bd3bfdec51c88e1a2e534b.tar.gz
Properly detects shn files with no seek tables at the end
Original commit message from CVS: Properly detects shn files with no seek tables at the end
-rw-r--r--gst/typefind/gsttypefindfunctions.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c
index 086499720..1b70cf309 100644
--- a/gst/typefind/gsttypefindfunctions.c
+++ b/gst/typefind/gsttypefindfunctions.c
@@ -628,8 +628,11 @@ aiff_type_find (GstTypeFind *tf, gpointer unused)
static void
shn_type_find (GstTypeFind *tf, gpointer unused)
{
- guint8 *data = gst_type_find_peek (tf, -8, 8);
-
+ guint8 *data = gst_type_find_peek (tf, 0, 4);
+ if (data && memcmp (data, "ajkg", 4) == 0) {
+ gst_type_find_suggest (tf, GST_TYPE_FIND_MAXIMUM, SHN_CAPS);
+ }
+ data = gst_type_find_peek (tf, -8, 8);
if (data && memcmp (data, "SHNAMPSK", 8) == 0) {
gst_type_find_suggest (tf, GST_TYPE_FIND_MAXIMUM, SHN_CAPS);
}