Developing a custom plugin in gstreamer-vaapi
Víctor Jáquez
vjaquez at igalia.com
Thu Mar 15 23:04:18 UTC 2018
Hi,
I would say that the best way to add a new element that need the gstreamer-vaapi
internals, develop it inside the gstreamer-vaapi tree. It would be hard to
extract and isolate certain parts of it.
Since the integration of gstreamer-vaapi into the gstreamer project, there are
no gst-vaapi exportable libraries.
On Fri, 09 Mar 2018 at 11:03, Mats wrote:
> I am developing a custom plugin for gstreamer-vaapi. I am accessing the
> GstVaapiVideoMeta data of the incomming buffer, using the following piece
> of code,
>
> GstVaapiVideoMeta *meta;
> .
> .
> meta = gst_buffer_get_vaapi_video_meta (buf);
>
>
> Compilation succeeds. However at the time of linking , I get the error,
>
> CCLD libgstmyelement.la
> .libs/libgstmyelement_la-gstmyelement.o: In function `gst_myelement_chain':
> gstreamer-vaapi/gst-libs/gst/vaapi/gstmyelement.c:262: undefined
> reference to `gst_buffer_get_vaapi_video_meta'
> /usr/bin/ld: .libs/libgstmyelement.so.0.0.0: hidden symbol
> `gst_buffer_get_vaapi_video_meta' isn't defined
> /usr/bin/ld: final link failed: Bad value
> collect2: error: ld returned 1 exit status
> Makefile:1218: recipe for target 'libgstmyelement.la' failed
> make[5]: *** [libgstmyelement.la] Error 1
>
>
>
>
> I've included gstvaapivideometa.h in my c file. Modified the Makefile.am by
> adding
>
> plugin_LTLIBRARIES = libgstmyelement.la
>
> libgstmyelement_source_c = \
> gstmyelement.c \
> $(NULL)
>
> libgstmyelement_source_h = \
> gstmyelement.h \
> gstvaapivideometa.h \
> $(NULL)
>
> libgstmyelement_la_SOURCES = \
> $(libgstmyelement_source_c) = \
> $(libgstmyelement_source_h) \
> $(NULL)
>
> libgstmyelement_la_CFLAGS = -I <Path to gstreamer-vaapi/gst/vaapi/>
> libgstmyelement_la_CFLAGS+= \
> -DIN_LIBGSTVAAPI \
> $(libgstvaapi_cflags) \
> $(NULL)
>
>
> libgstmyelement_la_LIBADD = \
> $(libgstvaapi_libs) \
> $(GST_LIBS) \
> $(GST_BASE_LIBS) \
> $(GST_VIDEO_LIBS) \
> $(NULL)
>
> libgstmyelement_la_LDFLAGS = \
> $(GST_ALL_LDFLAGS) \
> $(NULL)
>
> libgstmyelement_la_LIBTOOLFLAGS = --tag=disable-static
>
>
> Can anyone tell me how I can develop a custom plugin in gstreamer but
> linking into existing libraries/functions/structs defined in other plugins.
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list