Разработка собственного плагина в gstreamer-vaapi
Я разрабатываю пользовательский плагин для gstreamer-vaapi. Я обращаюсь к данным GstVaapiVideoMeta из буфера поступления, используя следующий фрагмент кода,
GstVaapiVideoMeta *meta;
.
.
meta = gst_buffer_get_vaapi_video_meta (buf);
Компиляция удалась. Однако во время ссылки я получаю ошибку
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
Я включил gstvaapivideometa.h в мой файл c. Модифицировал Makefile.am, добавив
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
Может кто-нибудь сказать мне, как я могу разработать собственный плагин в gstreamer, но ссылки на существующие библиотеки / функции / структуры, определенные в других плагинах.