我想创建一个 gstreamer 管道来背靠背播放两个 mp4 视频。可以使用 gst-launch 玩吗?我可以为此目的使用 multifilesrc 吗?
请告诉我播放两个视频的路径。
提前致谢 !
实际上没有办法使用单个 gst-launch 命令来执行此操作。当您使用 multifilesrc 时,视频解码器会在第一个视频结束后发送结束流事件。
如果您不喜欢使用 gst-launch,您可以在 shell 脚本中包装两个 gst-launch 命令:
#!/bin/sh
file1=$1
file2=$2
gst-launch filesrc location="$file1" ! decodebin2 ! autovideosink
gst-launch filesrc location="$file2" ! decodebin2 ! autovideosink
另一种方法是用 C 语言编写一个简单的 GStreamer 应用程序,为第一个视频创建一个管道,播放它,为第二个应用程序创建一个新的管道,然后播放它。
请参阅 GStreamer 应用程序开发人员指南: http: //gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/
Hello World部分包含一个功能示例管道,我认为这将为您提供一个很好的起点。