diff options
author | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2013-03-22 09:35:21 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2013-03-22 09:35:21 +0000 |
commit | c7855b5505e35195b6f116c0bf942100135098fb (patch) | |
tree | 139cc24fcee3be06a23539c2a0f6ac973509d31e /gst/typefind | |
parent | 383f58b0ed15c5fd14d2a760719295256f6ba545 (diff) |
typefinding: fix y4m caps
We need to specify the y4mversion field now.
https://bugzilla.gnome.org/show_bug.cgi?id=696282
Diffstat (limited to 'gst/typefind')
-rw-r--r-- | gst/typefind/gsttypefindfunctions.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c index 5f3c22746..faf55b97f 100644 --- a/gst/typefind/gsttypefindfunctions.c +++ b/gst/typefind/gsttypefindfunctions.c @@ -4742,6 +4742,20 @@ degas_type_find (GstTypeFind * tf, gpointer private) } } +/*** y4m ***/ + +static void +y4m_typefind (GstTypeFind * tf, gpointer private) +{ + const guint8 *data; + + data = gst_type_find_peek (tf, 0, 10); + if (data != NULL && memcmp (data, "YUV4MPEG2 ", 10) == 0) { + gst_type_find_suggest_simple (tf, GST_TYPE_FIND_LIKELY, + "application/x-yuv4mpeg", "y4mversion", G_TYPE_INT, 2, NULL); + } +} + /*** DVD ISO images (looks like H.264, see #674069) ***/ static void dvdiso_type_find (GstTypeFind * tf, gpointer private) @@ -5216,8 +5230,8 @@ plugin_init (GstPlugin * plugin) GST_TYPE_FIND_LIKELY); TYPE_FIND_REGISTER (plugin, "image/vnd.wap.wbmp", GST_RANK_MARGINAL, wbmp_typefind, NULL, NULL, NULL, NULL); - TYPE_FIND_REGISTER_START_WITH (plugin, "application/x-yuv4mpeg", - GST_RANK_SECONDARY, "y4m", "YUV4MPEG2 ", 10, GST_TYPE_FIND_LIKELY); + TYPE_FIND_REGISTER (plugin, "application/x-yuv4mpeg", GST_RANK_SECONDARY, + y4m_typefind, NULL, NULL, NULL, NULL); TYPE_FIND_REGISTER (plugin, "image/x-icon", GST_RANK_MARGINAL, windows_icon_typefind, NULL, NULL, NULL, NULL); |