elementfactory: add GST_ELEMENT_FACTORY_TYPE_HARDWARE 40/230340/2
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Sat, 2 Nov 2019 14:06:28 +0000 (15:06 +0100)
committerEunhye Choi <eunhae1.choi@samsung.com>
Thu, 9 Apr 2020 10:27:55 +0000 (19:27 +0900)
This new symbol matches with the elements within "Hardware" class.

cherry-pick from upstream
commit id: 9707db909d1438d9a1bc85554be8a2a741be4771

Change-Id: I1d28757bd68fe3247321bad188daf24107769399

gst/gstelementfactory.c
gst/gstelementfactory.h

index b538613..2d5dd42 100644 (file)
@@ -748,6 +748,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. */
index c35d559..e0d2108 100644 (file)
@@ -109,6 +109,7 @@ GstElement              *gst_element_factory_get                (GstElementFacto
  * @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
@@ -138,6 +139,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))