![循环播放 .mpeg 转储](https://linux22.com/image/1262418/%E5%BE%AA%E7%8E%AF%E6%92%AD%E6%94%BE%20.mpeg%20%E8%BD%AC%E5%82%A8.png)
需要循环转储 MPEG2 文件到标准输出或命名管道。
这有效:
$ { while : ; do cat myLoop.mpg; done; } | vlc -
这适用于包含“1234\n”的文本文件:
$ mkfifo myPipe
$ cat test.txt > myPipe & < myPipe tee -a myPipe | cat -
(它正确循环,在每一行输出“1234”)。为什么下面的代码不起作用?
$ cat myLoop.mpg > myPipe & < myPipe tee -a myPipe | vlc myPipe
我主要想重写第一个语句以删除不正确的“cat myLoop.mpg”语句。将输入到 VLC 或 FFMPEG 中,然后通过管道传输到 VLC。
答案1
最后一个可能不起作用,因为您是vlc
从命名管道而不是标准输入读取的。
看看这个是否有效:
cat myLoop.mpg > myPipe & < myPipe tee -a myPipe | vlc -
你的第一个例子有什么问题?顺便说一句,花括号不是必需的:
while :; do cat myLoop.mpg; done | vlc -