Использование мета-API-интерфейса GSTBuffer не распространяется по конвейеру - PullRequest
0 голосов
/ 25 сентября 2019

Я реализовал новый GstMeta API, выполнив шаги, упомянутые в Реализация нового GstMeta API

В одной рабочей области созданы два плагина pluginone и plugintwo.

  1. В плагине gst_buffer_add_my_example_meta, если gst_buffer_get_my_example_meta имеет значение null и запущен конвейер.

    "gst-launch-1.0 -v videotestsrc! Plugin1! Plugin1! X plugin1!"С этой метаинформацией нет буфера и она распространяется в конвейере.

  2. В плагине gst_buffer_add_my_example_meta, если gst_buffer_get_my_example_meta равен нулю, а в плагине два, называемом gst_buffer_get_my_example_mell, и мета-информация null, и метаданные получили тот же конвейер, что и метаданные null и получили тот же конвейерв plugintwo и в журналах отладки появилась следующая информация gst-launch-1.0:29752): GLib-GObject-CRITICAL **: 19:58:19.466: g_pointer_type_register_static: assertion 'g_type_from_name (name) == 0' failed (gst-launch-1.0:29752): GLib-GObject-CRITICAL **: 19:58:19.466: g_type_set_qdata: assertion 'node != NULL' failed (gst-launch-1.0:29752): GLib-CRITICAL **: 19:58:19.466: g_once_init_leave: assertion 'result != 0' failed (gst-launch-1.0:29752): GStreamer-CRITICAL **: 19:58:19.466: gst_buffer_get_meta: assertion 'api != 0' failed

Фрагмент кода из pluginone

 GstMeta *meta = gst_buffer_get_meta(frame->buffer, MY_EXAMPLE_META_API_TYPE);
if (meta == NULL) {
    g_print("*************  meta api is null ********* \n");
    gst_buffer_add_my_example_meta(frame->buffer, 10, "sample");
} else {
    if (meta->info->api == MY_EXAMPLE_META_API_TYPE) {
        g_print("********* meta api age value %d \n ",
                gst_buffer_get_my_example_meta(frame->buffer)->age);
    } else {
        g_print("******** no  meta api   \n ");
        gst_buffer_add_my_example_meta(frame->buffer, 10, "sample");
    }

Нужна помощь в том, чтобы узнать, где ошибка и как ее следуетиспользуйте мета API для добавления метаинформации в буфер видеокадра.

...