我有2个文件,test.mp4和test2.mp4,我想同时玩,中间没有明显的突破。目前我正在使用
mkfifo test
cat test.mp4 > test &
cat test2.mp4 > test &
omxplayer test
然而,当我这样做时,omxplayer只返回数据并且不播放该文件。但是如果我只是将一个文件放入管道中,则omxplayer会正常显示它。我也尝试在ffmpeg中使用copy命令,这也只是返回数据,不播放文件。
我知道我可以将两个文件连接在一起,但这不适用于我的目的,因为我需要能够在omxplayer运行时将文件提供给管道
答案 0 :(得分:0)
您正在后台运行两只猫,这意味着数据将以随机方式交错,并且omxplayer不太可能理解它。
您的脚本应该是:
mkfifo test
cat test.mp4 test2.mp4 > test &
omxplayer test
但是,即使这样也不适合您的需求,因为只要cat
完成,omxplayer会认为输入的结束并且会停止。
你需要这样的东西:
sendvideo() {
#
# Code to select file to send
#
cat test.mp4
#
# Code to select file to send
#
cat test2.mp4
#
# Loop to select files
#
while [ some condition ]; do
cat somefile
done
}
# Starts here
mkfifo test
sendvideo > test &
omxplayer test