Разработка собственного плагина в 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, но ссылки на существующие библиотеки / функции / структуры, определенные в других плагинах.

0 ответов

Другие вопросы по тегам