Windows 7 GStreamer,将4个流合并为一个流并重新流

Windows 7 GStreamer,将4个流合并为一个流并重新流,windows-7,merge,streaming,gstreamer,rtsp,Windows 7,Merge,Streaming,Gstreamer,Rtsp,我试图一次读取4个ip摄像头,然后将它们合并成一个马赛克视频,并将其重新传输到客户端。到目前为止,我成功地接收到4条流并显示马赛克,但我不知道下一步该怎么做 gst-launch-1.0 -e \ videomixer name=mix \ sink_0::xpos=0 sink_0::ypos=0 sink_0::alpha=0\ sink_1::xpos=0 sink_1::ypos=0 \ sink_2::xpos=640 sink

我试图一次读取4个ip摄像头,然后将它们合并成一个马赛克视频,并将其重新传输到客户端。到目前为止,我成功地接收到4条流并显示马赛克,但我不知道下一步该怎么做

gst-launch-1.0 -e \
videomixer name=mix \
        sink_0::xpos=0   sink_0::ypos=0  sink_0::alpha=0\
        sink_1::xpos=0   sink_1::ypos=0 \
        sink_2::xpos=640 sink_2::ypos=0 \
        sink_3::xpos=0   sink_3::ypos=360 \
        sink_4::xpos=640 sink_4::ypos=360 \
    ! autovideosink \
videotestsrc pattern="black" \
    ! video/x-raw,format=AYUV,width=1280,height=720 \
    ! mix.sink_0 \
uridecodebin uri=rtsp://10.0.0.121:554/video.h264 \
    ! videoconvert ! videoscale \
    ! video/x-raw,format=AYUV,width=640,height=360 \
    ! mix.sink_1 \
uridecodebin uri=rtsp://10.0.0.122:554/video.h264 \
    ! videoconvert ! videoscale \
    ! video/x-raw,format=AYUV,width=640,height=360 \
    ! mix.sink_2 \
uridecodebin uri=rtsp://10.0.0.123:554/video.h264 \
    ! videoconvert ! videoscale \
    ! video/x-raw,format=AYUV,width=640,height=360 \
    ! mix.sink_3 \
uridecodebin uri=rtsp://10.0.0.124:554/video.h264 \
    ! videoconvert ! videoscale \
    ! video/x-raw,format=AYUV,width=640,height=360 \
    ! mix.sink_4 \

我正在Win7上使用最新的Gstreamer。如有任何建议,将不胜感激

如果您愿意使用RTP而不是RTSP,您可以使用类似的东西

发件人:

gst-launch-1.0 -e \
videomixer name=mix \
 sink_0::xpos=0   sink_0::ypos=0 \
 sink_1::xpos=640   sink_1::ypos=0 \
 ! queue ! videoconvert ! x264enc ! h264parse ! rtph264pay ! udpsink host=localhost port=5200 \
videotestsrc \
 ! video/x-raw,format=AYUV,width=640,height=360 \
 ! mix.sink_0 \
videotestsrc pattern="ball" \
 ! videoconvert ! videoscale \
 ! video/x-raw,format=AYUV,width=640,height=360 \
 ! mix.sink_1 \
接收人:

gst-launch-1.0 udpsrc port=5200 ! \
application/x-rtp,media=video,payload=96,encoding-name=H264 ! \
rtph264depay ! h264parse ! avdec_h264 ! \
videoconvert ! ximagesink

您正在尝试创建什么类型的流?我已经通过rtsp协议为带有h264视频的IP摄像机创建了一个流。我需要做的是创建这些视频的马赛克,并通过rtsp将其作为一个流重新传输到客户端应用程序。你能帮我个忙吗?你需要先对视频进行编码,可能是用x264enc插件。如果流媒体必须使用RTSP,则需要调查gst RTSP服务器。我没有一个线性为您虽然为RTSP。实际上,只是播放视频,我不需要编码,但可能是为了重新播放。我的问题是,对于使用rtsp服务器,我需要将它写下来,并编译rtsp服务器,这是我目前无法做到的。有什么帮助吗?你必须重新编码,因为你正在创建一个新的图像。不幸的是,我需要RTSP协议。我有很多想法,所以我可以把它写进代码中,还有什么比在Windows机器上编译RTSP服务器更重要的呢?最好是在视觉研究上“怎么做”这不在我的范围之内,抱歉。我建议查看gst-rtsp-server。告诉我,你能帮我把oneliner重写成C代码吗?这在Windows机器上行吗。我在Windows7机器上试过。不幸的是,这不适合我:(