如何解决无法使用 PyGObject
请提供适用于您的设置的完整信息。
• 硬件平台(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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。