请提供适用于您的设置的完整信息。
•硬件平台(Jetson/GPU(Jetson
•DeepStream版本5.0
•JetPack版本(仅对Jetson有效(4.4
•TensorRT版本7.0
•NVIDIA GPU驱动程序版本(仅适用于GPU( ?问题类型(问题、新要求、错误(问题•如何重现问题?(这是针对bug的。包括正在使用的示例应用程序、配置文件内容、使用的命令行以及其他用于复制的详细信息(
print("Linking demux to the rtppayload in the Pipeline n")
for i in range(number_of_sources):
demux_srcpad = streamdemux.get_request_pad("src_%u"%i)
if not demux_srcpad:
sys.stderr.write("Unable to get the src pad of streamdemux n")
sinkpad = rtppayload_list[i].get_static_pad("sink")
if not sinkpad:
sys.stderr.write(" Unable to get sink pad of rtppayload n")
demux_srcpad.link(sinkpad)
•需求详细信息(这是针对新需求的。包括哪个插件或哪个示例应用程序的模块名称、功能描述(
我试图在运行时为nvstreamdemux元素创建源代码板,并链接到列表中的几个rtph264pay元素:rtppayload_list。上面给出的代码导致以下错误:gi.overrides.Gst.LinkError:
如有任何帮助,我们将不胜感激。谢谢
您只能链接彼此兼容的元素和焊盘。
在这种情况下,nvstreamdemux
在其源焊盘输出NV12或RGBA格式的原始数据,而rtph264pay
在其输入汇点焊盘接收h264编码流。所以这两者是不相容的。
您需要将nvstreamdemux
链接到将原始数据编码为h264的某个元素(如nvv4l2h264enc
(,然后再将nvv4l2h264enc
链接到rtph264pay
。
所以你的管道应该是nvstreamdemux
->nvv4l2h264enc
->rtph264pay