From 095a5ba42573c805352845f341414cb0b79422dc Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Tue, 24 Jan 2023 09:24:03 -0300 Subject: [PATCH] factory: Add "Timestamper" as new factory type This will be used by elements that correct timestamps (like the h264timestamper for example) Part-of: --- subprojects/gstreamer/gst/gstelementfactory.c | 4 ++++ subprojects/gstreamer/gst/gstelementfactory.h | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/subprojects/gstreamer/gst/gstelementfactory.c b/subprojects/gstreamer/gst/gstelementfactory.c index e4205b4614..2bbe9434f0 100644 --- a/subprojects/gstreamer/gst/gstelementfactory.c +++ b/subprojects/gstreamer/gst/gstelementfactory.c @@ -1084,6 +1084,10 @@ gst_element_factory_list_is_type (GstElementFactory * factory, res = ((strstr (klass, "Parser") != NULL) && (strstr (klass, "Codec") != NULL)); + if (!res && (type & GST_ELEMENT_FACTORY_TYPE_TIMESTAMPER)) + res = ((strstr (klass, "Timestamper") != NULL) + && (strstr (klass, "Codec") != NULL)); + if (!res && (type & GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER)) res = (strstr (klass, "Depayloader") != NULL); diff --git a/subprojects/gstreamer/gst/gstelementfactory.h b/subprojects/gstreamer/gst/gstelementfactory.h index 07f3f81b22..b3749a6379 100644 --- a/subprojects/gstreamer/gst/gstelementfactory.h +++ b/subprojects/gstreamer/gst/gstelementfactory.h @@ -165,6 +165,14 @@ typedef guint64 GstElementFactoryListType; #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)) +/** + * GST_ELEMENT_FACTORY_TYPE_TIMESTAMPER: + * + * Timestamp correcting elements + * + * Since: 1.24 + */ +#define GST_ELEMENT_FACTORY_TYPE_TIMESTAMPER ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 13)) #define GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS ((GstElementFactoryListType)(G_GUINT64_CONSTANT (1) << 48))