即使使用-shortest命令,ffmpeg也不会停止编码

时间:2017-05-03 16:20:22

标签: python linux ffmpeg raspberry-pi subprocess

我遇到了ffmpeg停止编码过程的问题,在互联网上搜索让我没有工作解决方案。我通过Python的子进程模块在Linux中调用ffmpeg,如下所示:

mergeFiles = subprocess.Popen("ffmpeg -i /home/pi/Video/video.mov -i /home/pi/Audio/test.wav -acodec copy -vcodec copy -map 0:v -map 1:a -shortest /home/pi/Final/output.mkv", shell=True)

命令提示符正在等待我用“ctrl-c”手动结束编码过程,但是我无法访问键盘来终止编码。我只是希望它在完成后停止。我甚至试图在几秒钟之后使用Python中的mergeFiles.kill(),这甚至都不起作用。救命啊!

编辑:如果我不清楚,我的意思是没有错误,ffmpeg根本不会继续,直到我点击“ctrl-c”。我只是希望它在完成后停止编码。这是我的命令提示符:ffmpeg error

只是在等我按“ctrl-c”

1 个答案:

答案 0 :(得分:0)

当文件/home/pi/Final/output.mkv已经存在时,ffmpeg会要求您覆盖该文件并且不执行任何操作。

您可以传递'-y'标记以覆盖。