Gstreamer 如何将uridecobin和videomixer与每个水槽的视频秤结合?

Gstreamer 如何将uridecobin和videomixer与每个水槽的视频秤结合?,gstreamer,gst-launch,Gstreamer,Gst Launch,我尝试制作一个图像向量,我可以得到很多URI。我已经成功地用视频混合器和uridecodebin以及视频刻度盘显示了一幅图像 gst-launch -e videomixer name = mixer \ sink_0::xpos = 0 sink_0::ypos = 0 \ ! xvimagesink \ uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg \ ! ffmpegc

我尝试制作一个图像向量,我可以得到很多URI。我已经成功地用视频混合器和uridecodebin以及视频刻度盘显示了一幅图像

gst-launch -e videomixer name = mixer \ 
    sink_0::xpos = 0 sink_0::ypos = 0 \
    ! xvimagesink \
    uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg \
    ! ffmpegcolorspace  ! imagefreeze ! videoscale method = 1 \
    ! video/x-raw-yuv,width=100,height=100 ! queue ! mixer.sink_0.
但是,当我在视频混合器的另一个位置添加相同的“uri_图像”时,使用相同的videoscale上限:

gst-launch -e videomixer name = mixer \
   sink_0::xpos = 0 sink_0::ypos = 0 \
   sink_1::xpos = 100 sink_1::ypos = 0 \
   ! xvimagesink \
   uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg
   ! ffmpegcolorspace ! imagefreeze ! videoscale ! \
    video/x-raw-yuv,width=100,height=100 ! queue2 ! mixer.sink_0. \
   uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg 
   ! ffmpegcolorspace ! imagefreeze ! videoscale ! \
   video/x-raw-yuv,width=100, height=100 ! queue2 ! mixer.sink_1.
我得到了这个错误:“videoscale1:未协商 gstbasetransform.c(2541):gst_base_transform_handle_buffer():/GstPipeline:pipeline0/GstVideoScale:videoscale1: "

所以我不明白为什么这个错误会出现在第二个接收器上,因为这两种情况下都是相同的过程

编辑:

我已经为那些感兴趣的人找到了部分解决方案

gst-launch -e videomixer name=mix ! ffmpegcolorspace ! xvimagesink \
    uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg ! videoscale ! video/x-raw-yuv,width=100,height=100 \
    ! videobox top=0 left=0 ! imagefreeze ! mix. \
    uridecodebin uri=http://upload.wikimedia.org/wikipedia/fr/1/14/Logo_vibration.JPG ! videoscale ! video/x-raw-   yuv,width=100,height=100 \
    ! videobox top=0 left=-100 ! imagefreeze ! mix.
但是这个解决方案不适用于png文件,我不知道为什么,因为uridecodebin是一个通用解码器。。。
如果有人有想法…

好的,试试这个管道。如果需要,可以使用管道添加png文件:

gst-launch -e videomixer2 name=mixer sink_0::xpos=0 sink_0::ypos=0 sink_1::xpos=100 sink_1::ypos=0 ! ffmpegcolorspace ! xvimagesink uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg ! ffmpegcolorspace ! imagefreeze ! videoscale ! "video/x-raw-yuv, format=(fourcc)AYUV, width=100, height=100" ! queue2 ! mixer.sink_0. uridecodebin uri=http://www.logotheque.fr/6396-2/logo+RMC+INFO.jpg ! ffmpegcolorspace ! imagefreeze ! videoscale ! "video/x-raw-yuv, format=(fourcc)AYUV, width=100, height=100" ! queue2 ! mixer.sink_1. -v

您使用的是哪个gstreamer版本(0.10或1.0)?我使用的是0.10 gstreamer版本