I have an element that decodes a media type, mytype for example. I want to register the type so that the decodebin element can use my element if needed. I added the code for what I thought would work, but my type_find() function is never called. Any ideas on what I'm doing wrong? Here's what the code looks like:

<pre>
    #define MY_CAPS (gst_static_caps_get(&my_caps))

    static GstStaticCaps my_caps = GST_STATIC_CAPS("audio/x-mycaps");
    static gchar *my_exts[] = { "mtype", NULL };

    static void type_find(GstTypeFind *_type_find, gpointer callback)
    {
       printf("Type Find Function\r\n");
       gst_type_find_suggest(_type_find, GST_TYPE_FIND_POSSIBLE, gst_static_caps_get(&my_caps));
    }

    gboolean plugin_init(GstPlugin *plugin)
    {
       if(!gst_type_find_register(plugin, "mytype", GST_RANK_PRIMARY, type_find, my_exts, MY_CAPS, NULL, NULL))
         return FALSE;

       if(!gst_element_register(plugin, "myelement", GST_RANK_PRIMARY, MY_ELEMENT_TYPE)
          return FALSE;

       return(TRUE);
    }
</pre>

        
        
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/Type-Find-Function-Not-Called-in-GStreamer-Plugin-tp4658302.html">Type Find Function Not Called in GStreamer Plugin</a><br/>
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/">GStreamer-devel mailing list archive</a> at Nabble.com.<br/>