diff options
author | Matthew Waters <matthew@centricular.com> | 2016-03-11 01:40:39 +1100 |
---|---|---|
committer | Matthew Waters <matthew@centricular.com> | 2016-03-11 01:40:39 +1100 |
commit | 4e7797546aa80f3d96bf346f212ba01fb6795b6f (patch) | |
tree | c69394cbdd02426b51dd91140cb0df8584023a63 /ext/gl | |
parent | 5061095e056864c08e676067d5a868fb2cb37a64 (diff) | |
download | gstreamer-plugins-bad-4e7797546aa80f3d96bf346f212ba01fb6795b6f.tar.gz |
gleffects; give each effect a unique long name and description
Gives applications that scrape the factory details more detailed and unique
details on the exact element.
https://bugzilla.gnome.org/show_bug.cgi?id=760566
Diffstat (limited to 'ext/gl')
-rw-r--r-- | ext/gl/gstgleffects.c | 11 | ||||
-rw-r--r-- | ext/gl/gstgleffects.h | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/ext/gl/gstgleffects.c b/ext/gl/gstgleffects.c index b2b453f8c..1518a645c 100644 --- a/ext/gl/gstgleffects.c +++ b/ext/gl/gstgleffects.c @@ -350,6 +350,7 @@ gst_gl_effects_filter_class_init (GstGLEffectsClass * klass, const GstGLEffectsFilterDescriptor * filter_descriptor) { GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + GstElementClass *element_class = GST_ELEMENT_CLASS (klass); klass->filter_descriptor = filter_descriptor; @@ -366,6 +367,15 @@ gst_gl_effects_filter_class_init (GstGLEffectsClass * klass, GST_TYPE_GL_EFFECTS_EFFECT, GST_GL_EFFECT_IDENTITY, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + } else { + gchar *description = g_strdup_printf ("GL Shading Language effects - %s", + filter_descriptor->filter_longname); + + gst_element_class_set_metadata (element_class, + filter_descriptor->filter_longname, "Filter/Effect/Video", + description, "Filippo Argiolas <filippo.argiolas@gmail.com>"); + + g_free (description); } g_object_class_install_property (gobject_class, @@ -605,6 +615,7 @@ gst_gl_effects_filters_descriptors (void) for (i = 0; i < n_filters; ++i, ++effect) { descriptors[i].effect = effect->value; descriptors[i].filter_name = effect->value_nick; + descriptors[i].filter_longname = effect->value_name; } for (defined = gst_gl_effects_filters_supported_properties (); diff --git a/ext/gl/gstgleffects.h b/ext/gl/gstgleffects.h index 82c33a997..ddd2292fc 100644 --- a/ext/gl/gstgleffects.h +++ b/ext/gl/gstgleffects.h @@ -46,6 +46,7 @@ typedef struct { gint effect; guint supported_properties; const gchar *filter_name; + const gchar *filter_longname; } GstGLEffectsFilterDescriptor; typedef void (* GstGLEffectProcessFunc) (GstGLEffects *effects); |