向元素的特定接收垫提供输入

问题描述 投票:0回答:1

我正在开发自定义 gstreamer 插件,它有 2 个接收器 如何将 filesrc 连接到特定的接收器

       filesrc1----------|
                         |----> custom_plugin------->filesink
       filesrc2----------|

这里我的custom_plugin有2个sinkpadsink_1和sink_2 使用 gst-launch-1.0 构建管道时如何将 filesrc1 链接到 sink_1 并将 filesrc2 链接到 sink_2 sink_1和sink_2都有不同的链事件,并且sink_2将缓冲区推送到src pad

gst-launch-1.0 文件位置 = left.avi !解码器!视频转换!视频/x-raw,格式=BGR,宽度=1920,高度=1080!自定义_插件.sink_1!文件源位置=right.avi!解码器!视频转换!视频/x-raw,格式=BGR,宽度=1920,高度=1080!自定义插件.sink_2!假水槽

这是我尝试过的,下面是 警告:错误的管道:语法错误

我想知道的是,如果一个插件有多个接收器,如何连接特定的接收器

plugins gstreamer nvidia-deepstream
1个回答
0
投票

该问题可能是由于不直接将插件调用到管道中而只是尝试直接使用接收器而引起的。尝试将插件包含到管道中,然后将流发送到接收器:

gst-launch-1.0 custom_plugin name=cp filesrc location=left.avi ! decodebin ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! cp.sink_1 ! filesrc location=right.avi ! decodebin ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! cp.sink_2 ! fakesink
© www.soinside.com 2019 - 2024. All rights reserved.