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
确切地说,打击垫类型是兼容的
正在尝试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
确切地说,打击垫类型是兼容的