这是在视频框中播放2个mp4视频的代码。
gst-launch-1.0 filesrc位置= 1.mp4!解码器!排队! 视频转换! videobox border-alpha = 0 right = -100!混音器 名称=混合!视频转换! autovideosink filesrc位置= 2.mp4! 解码器!排队!视频转换! videobox border-alpha = 0 left = -100! 混合。
我尝试使用此代码播放3个视频
gst-launch-1.0 filesrc位置=下载/1.mp4!解码器!排队! 视频转换! videobox border-alpha = 0 right = -100!混音器 name = mix!
videoconvert! autovideosink filesrc位置=下载/2.mp4! 解码器!排队!视频转换! videobox border-alpha = 0 left = -100! 混合!
videoconvert! autovideosink filesrc位置= Downloads / 3.mp4! 解码器!排队!视频转换! videobox border-alpha = 0 left = -200! 混合。
我收到语法错误:(
答案 0 :(得分:0)
实例化具有名称的元素(例如videomixer name=mix
)后,您可以稍后使用进行连接。 (例如mix.
)。之后,您无需重复autovideosink
3次。
gst-launch-1.0 filesrc location=Downloads/1.mp4 ! decodebin ! queue ! videoconvert ! videobox border-alpha=0 right=-100 ! videomixer name=mix ! videoconvert ! autovideosink
filesrc location=Downloads/2.mp4 ! decodebin ! queue ! videoconvert ! videobox border-alpha=0 left=-100 ! mix.
filesrc location=Downloads/3.mp4 ! decodebin ! queue ! videoconvert ! videobox border-alpha=0 left=-200 ! mix.
在这里,我们初始化了3个管道,并将其中三个与mix
元素合并。
答案 1 :(得分:0)
videomixer 类似的东西
gst-launch-1.0 -e \
videomixer name=mix background=0 \
sink_1::xpos=0 sink_1::ypos=0 \
sink_2::xpos=200 sink_2::ypos=0 \
sink_3::xpos=100 sink_3::ypos=100 \
! autovideosink \
uridecodebin uri='file:///data/big_buck_bunny_trailer-360p.mp4' \
! videoscale \
! video/x-raw,width=200,height=100 \
! mix.sink_1 \
uridecodebin uri='file:///data/sintel_trailer-480p.webm' \
! videoscale \
! video/x-raw,width=200,height=100 \
! mix.sink_2 \
uridecodebin uri='file:///data/the_daily_dweebs-720p.mp4' \
! videoscale \
! video/x-raw,width=200,height=100 \
! mix.sink_3