Hi,
I am trying to build a bin that contains multiple sub elements and can be used in other pipelines. I tried orienting myself on the gstautovideosrc as my bin will include a src similar to v4l2src. However when inspecting the .so with gst-inspect-1.0 I only get: Plugin Details: Name tcambin Description Tcam Video Bin Filename /home/XXXXX/work/tiscamera/build/src/gstreamer-1.0/libgsttcambin.so Version 1.0.0 License Proprietary Source module tcam Binary package tcambin Origin URL url tcambin: Tcam Video Bin 1 features: +-- 1 elements As you can see the caps and properties are missing. What am I missing? You can find my files here: The header file: http://pastebin.com/b2XYcT6R The body: http://pastebin.com/TcFwkrv6 Thank you in advance for your time. Regards, Edgar _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le mardi 19 avril 2016 à 11:13 +0200, Edgar Thier a écrit :
> Plugin Details: > Name tcambin > Description Tcam Video Bin > Filename > /home/XXXXX/work/tiscamera/build/src/gstreamer-1.0/libgsttcambin.so > Version 1.0.0 > License Proprietary > Source module tcam > Binary package tcambin > Origin URL url > > tcambin: Tcam Video Bin > > 1 features: > +-- 1 elements > > As you can see the caps and properties are missing. Both your plugin and your feature have the same name. Try giving them different name, like tcam for the plugin and tcambin for the feature. This way gst-inspect-1.0 won't pick randomly. Nicolas _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Sorry, I am not quite sure what you mean.
From my current understanding I have a plugin defining one element. I was under the assumption that a plugin is basically a shared object definition for an element and nothing more. Since I am kind of lost: What do I need to change? I tried using other names in the plugin_init and GST_PLUGIN_DEFINE but there seems to be something I am consistently overlooking... Edgar On 04/19/2016 03:51 PM, Nicolas Dufresne wrote: > Le mardi 19 avril 2016 à 11:13 +0200, Edgar Thier a écrit : >> Plugin Details: >> Name tcambin >> Description Tcam Video Bin >> Filename >> /home/XXXXX/work/tiscamera/build/src/gstreamer-1.0/libgsttcambin.so >> Version 1.0.0 >> License Proprietary >> Source module tcam >> Binary package tcambin >> Origin URL url >> >> tcambin: Tcam Video Bin >> >> 1 features: >> +-- 1 elements >> >> As you can see the caps and properties are missing. > > Both your plugin and your feature have the same name. Try giving them > different name, like tcam for the plugin and tcambin for the feature. > This way gst-inspect-1.0 won't pick randomly. > > Nicolas > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel > gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le mercredi 20 avril 2016 à 10:43 +0200, Edgar Thier a écrit :
> Sorry, I am not quite sure what you mean. > > From my current understanding I have a plugin defining one element. > I was under the assumption that a plugin is basically a shared object > definition for an element and > nothing more. In GStreamer, a plugin represent a shared object. Each plugin can contain one of more features. An element, is a feature. > > Since I am kind of lost: > > What do I need to change? > I tried using other names in the plugin_init and GST_PLUGIN_DEFINE > but there seems to be something I > am consistently overlooking... Just make sure that you plugin name (third parameter of GST_PLUGIN_DEFINE and by convention the shared object name) differ from your feature name, that second parameter of gst_element_register() call. After that, gst-inspect-1.0 will be able to give you the details of both independently. The problem is that gst-inspect-1.0 uses that same namespace for both plugins and features, it's not ideal, but it's easy to workaround. Nicolas _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (188 bytes) Download Attachment |
I tried that multiple times with different names but sadly without success.
I removed the cache with rm ~/.cache/gstreamer-1.0/registry.x86_64.bin to be sure that no old information is used. When now issuing gst-inspect-1.0 ~/work/project/build/src/gstreamer-1.0/libgsttcambin.so I get: (gst-plugin-scanner:3814): GLib-GObject-WARNING **: cannot register existing type 'ClutterGstVideoSink' (gst-plugin-scanner:3814): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed (gst-plugin-scanner:3814): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed (gst-plugin-scanner:3814): GStreamer-CRITICAL **: gst_element_register: assertion 'g_type_is_a (type, GST_TYPE_ELEMENT)' failed Plugin Details: Name tcambla Description Tcam Video Bin Filename /home/XXXX/work/project/build/src/gstreamer-1.0/libgsttcambin.so Version 1.0.0 License Proprietary Source module tcam Binary package tcambin Origin URL url tcamsrc: Tcam Video Bin 1 features: +-- 1 elements I think there is something else going on, although I am not sure if those warnings really come from my plugin. All other plugins come from the debian testing repositories (current version 1.8.0-1+b1). I will continue searching. If someone sees a fault, please say tell me. Edgar On 04/20/2016 02:51 PM, Nicolas Dufresne wrote: > Le mercredi 20 avril 2016 à 10:43 +0200, Edgar Thier a écrit : >> Sorry, I am not quite sure what you mean. >> >> From my current understanding I have a plugin defining one element. >> I was under the assumption that a plugin is basically a shared object >> definition for an element and >> nothing more. > > In GStreamer, a plugin represent a shared object. Each plugin can > contain one of more features. An element, is a feature. > >> >> Since I am kind of lost: >> >> What do I need to change? >> I tried using other names in the plugin_init and GST_PLUGIN_DEFINE >> but there seems to be something I >> am consistently overlooking... > > Just make sure that you plugin name (third parameter of > GST_PLUGIN_DEFINE and by convention the shared object name) differ from > your feature name, that second parameter of gst_element_register() > call. After that, gst-inspect-1.0 will be able to give you the details > of both independently. The problem is that gst-inspect-1.0 uses that > same namespace for both plugins and features, it's not ideal, but it's > easy to workaround. > > Nicolas > > > > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel > gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le jeudi 21 avril 2016 à 06:39 +0200, Edgar Thier a écrit :
> (gst-plugin-scanner:3814): GLib-GObject-WARNING **: cannot register > existing type 'ClutterGstVideoSink' > > (gst-plugin-scanner:3814): GLib-GObject-CRITICAL **: > g_type_add_interface_static: assertion > 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed > > (gst-plugin-scanner:3814): GLib-CRITICAL **: g_once_init_leave: > assertion 'result != 0' failed > > (gst-plugin-scanner:3814): GStreamer-CRITICAL **: > gst_element_register: assertion 'g_type_is_a > (type, GST_TYPE_ELEMENT)' failed > Plugin Details: > Name tcambla > Description Tcam Video Bin > Filename > /home/XXXX/work/project/build/src/gstreamer-1.0/libgsttcambin.so > Version 1.0.0 > License Proprietary > Source module tcam > Binary package tcambin > Origin URL url > > tcamsrc: Tcam Video Bin > > 1 features: > +-- 1 elements > > I think there is something else going on, although I am not sure if > those warnings really come from > my plugin. All other plugins come from the debian testing > repositories (current version 1.8.0-1+b1). > > I will continue searching. If someone sees a fault, please say tell > me. Now try "gst-inspect-1.0 tcamsrc" instead of using tcambla (or the plugin shared object name). The assertions seems to come from a miss-build of a third party clutter-gst repository. You can debug futher with gdb and environment variable "G_DEBUG=fatal_criticals". Nicolas _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |