mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-11 09:55:36 +00:00
typefindfactory: add gst_type_find_factory_has_function()
Add API so people don't have to poke the struct for this.
This commit is contained in:
parent
80fa8aa77b
commit
ecf74cf2db
3 changed files with 20 additions and 1 deletions
|
@ -222,3 +222,21 @@ gst_type_find_factory_call_function (GstTypeFindFactory * factory,
|
|||
gst_object_unref (new_factory);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gst_type_find_factory_has_function:
|
||||
* @factory: A #GstTypeFindFactory
|
||||
*
|
||||
* Check whether the factory has a typefind function. Typefind factories
|
||||
* without typefind functions are a last-effort fallback mechanism to
|
||||
* e.g. assume a certain media type based on the file extension.
|
||||
*
|
||||
* Returns: TRUE if the factory has a typefind functions set, otherwise FALSE
|
||||
*/
|
||||
gboolean
|
||||
gst_type_find_factory_has_function (GstTypeFindFactory * factory)
|
||||
{
|
||||
g_return_val_if_fail (GST_IS_TYPE_FIND_FACTORY (factory), FALSE);
|
||||
|
||||
return (factory->function != NULL);
|
||||
}
|
||||
|
|
|
@ -73,6 +73,7 @@ GList * gst_type_find_factory_get_list (void);
|
|||
|
||||
gchar ** gst_type_find_factory_get_extensions (GstTypeFindFactory *factory);
|
||||
GstCaps * gst_type_find_factory_get_caps (GstTypeFindFactory *factory);
|
||||
gboolean gst_type_find_factory_has_function (GstTypeFindFactory *factory);
|
||||
void gst_type_find_factory_call_function (GstTypeFindFactory *factory,
|
||||
GstTypeFind *find);
|
||||
|
||||
|
|
|
@ -623,7 +623,7 @@ gst_type_find_helper_for_extension (GstObject * obj, const gchar * extension)
|
|||
factory = GST_TYPE_FIND_FACTORY (l->data);
|
||||
|
||||
/* we only want to check those factories without a function */
|
||||
if (factory->function != NULL)
|
||||
if (gst_type_find_factory_has_function (factory))
|
||||
continue;
|
||||
|
||||
/* get the extension that this typefind factory can handle */
|
||||
|
|
Loading…
Reference in a new issue