From 9707db909d1438d9a1bc85554be8a2a741be4771 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Sat, 2 Nov 2019 15:06:28 +0100 Subject: [PATCH] elementfactory: add GST_ELEMENT_FACTORY_TYPE_HARDWARE This new symbol matches with the elements within "Hardware" class. --- gst/gstelementfactory.c | 3 +++ gst/gstelementfactory.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/gst/gstelementfactory.c b/gst/gstelementfactory.c index 3ccfc1420a..547fbd5a1e 100644 --- a/gst/gstelementfactory.c +++ b/gst/gstelementfactory.c @@ -743,6 +743,9 @@ gst_element_factory_list_is_type (GstElementFactory * factory, if (!res && (type & GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR)) res = (strstr (klass, "Encryptor") != NULL); + if (!res && (type & GST_ELEMENT_FACTORY_TYPE_HARDWARE)) + res = (strstr (klass, "Hardware") != NULL); + /* Filter by media type now, we only test if it * matched any of the types above or only checking the media * type was requested. */ diff --git a/gst/gstelementfactory.h b/gst/gstelementfactory.h index d3180fbc77..cffb123429 100644 --- a/gst/gstelementfactory.h +++ b/gst/gstelementfactory.h @@ -105,6 +105,7 @@ gboolean gst_element_register (GstPlugin *plug * @GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER: Depayloader elements * @GST_ELEMENT_FACTORY_TYPE_DECRYPTOR: Elements handling decryption (Since: 1.6) * @GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR: Elements handling encryption (Since: 1.6) + * @GST_ELEMENT_FACTORY_TYPE_HARDWARE: Hardware based elements (Since: 1.18) * @GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS: Private, do not use * @GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO: Elements handling video media types * @GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO: Elements handling audio media types @@ -139,6 +140,7 @@ typedef guint64 GstElementFactoryListType; #define GST_ELEMENT_FACTORY_TYPE_FORMATTER ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 9)) #define GST_ELEMENT_FACTORY_TYPE_DECRYPTOR ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 10)) #define GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 11)) +#define GST_ELEMENT_FACTORY_TYPE_HARDWARE ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 12)) #define GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 48))