Newbie query: Boilerplate code created by gst-element-maker does not compile

Mandeep Sandhu mandeepsandhu.chd at gmail.com
Mon Oct 29 06:43:57 PDT 2012


Hi All,

I'm newbie who's recently jumped into playing around with GStreamer.

I have gone through "GStreamer Application Development Manual" to get
a basic idea of the various Gstreamer concepts. Currently, I'm reading
the "GStreamer Plugin Writer's Guide (1.0.2)" to get a very basic
plugin working (only for my own understanding).

For creating the basic template of a plugin, I was using the
"make_element" tool which comes along with the gst-template repo.

The template code created by this tool compiles fine, however it does
not get recognized when I try to use it a sample pipeline. I construct
the pipline as follows (after building the plugin):

$ gst-launch-0.10 -v
--gst-plugin-path=/home/mandeep/work/gstreamer/gst-template/gst-plugin/src/.libs/
fakesrc ! myfilter ! fakesink silent=TRUE
WARNING: erroneous pipeline: no element "myfilter"
$

Somehow, my plugin is not 'registered' with gstreamer. Any idea how to
get this working?

The plugin guide has a "NOTE" that states one should use
"gst-element-maker" from the gst-plugins-bad repo. However, the
template code created by this tool does not compile. Here's what I
did:

$ gst-element-maker MyFilter basesink
../../../gst-plugins-bad/tools/gst-element-maker: 376:
../../../gst-plugins-bad/tools/gst-element-maker: gst-indent: not
found
pkg is gstreamer-base-0.10
gstmyfilter.c: In function ‘gst_myfilter_base_init’:
gstmyfilter.c:109:3: warning: implicit declaration of function
‘gst_element_class_set_static_metadata’
[-Wimplicit-function-declaration]
gstmyfilter.c: At top level:
gstmyfilter.c:324:1: error: ‘myfilter’ undeclared here (not in a function)

Any idea how to fix this error?

The files generated by the above command are: gstmyfilter.h and
gstmyfilter.c (I have altered Makefile.am accordingly to add these 2
new files for building.

Regards,
-mandeep


More information about the gstreamer-devel mailing list