Gstreamer:如何 link 请求垫(接收器)和静态垫(源)

Gstreamer: How to link a request pad (sink) and static pad (source)

正在尝试link发球到队列。这是我在程序代码中所做的

节目片段 /// 创建发球台模板 tee_src_pad_template = gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS (三通), "src_%u");

if(!tee_src_pad_template)
    g_print("thread Live: no tee_src_pad_template \n");

/// request the 2 pad
tee_pad = gst_element_request_pad (tee,
                                   tee_src_pad_template,
                                   NULL,
                                   NULL);
queue_pad = gst_element_get_static_pad (queue, "sink");

/// verify the object is created
if(!tee_pad)
    g_print(" no tee_pad \n");

if(!queue_pad)
    g_print("no queue_pad \n");

/// link the pads together
GstPadLinkReturn  ret  = gst_pad_link (tee_stream_pad, queue_stream_pad);
g_print(" Link return %d \n", ret);

程序编译通过但在link pad阶段出错,返回值为-4

 Link return -4

查看GstPadLinkReturn 值的含义。只是想知道是什么原因导致以下

GST_PAD_LINK_NOFORMAT (-4) – pads do not have common format

它们没有通用格式是什么意思?他们不是中立的 link 人吗?

此致

设法找出常见问题,因为我链接了错误的元素类型

GST_PAD_LINK_NOFORMAT (-4) – pads do not have common format

确切地说,打击垫类型是兼容的