我正在尝试从python运行ffmpeg应用程序。我正在使用以下代码来执行应用程序
导入子流程
subprocess.call([' C:/ffmpeg/bin/ffmpeg.exe'])
通过此命令,应用程序正在执行。有人可以告诉我如何将命令传递给应用程序,我试过
subprocess.call([&#39; C:/ffmpeg/bin/ffmpeg.exe',&#39; ffmpeg -i 2.mp4 -vn -ab 128 outputaudio.mp3&#39;])< / p>
但它不起作用。
答案 0 :(得分:2)
他们需要成为单独的args:
subprocess.check_call(['C:/ffmpeg/bin/ffmpeg.exe','ffmpeg','-i',"2.mp4","-vn", "-ab", "128", "outputaudio.mp3"])
如果命令返回非零退出状态,也使用check_call
代替call
,check_call
将引发CalledProcessError。
我不确定'ffmpeg'
应该在那里。
答案 1 :(得分:0)
参数应该是列表中的单独元素。 doc page有一个如何调用它的示例。你的应该是这样的:
['C:/ffmpeg/bin/ffmpeg.exe','ffmpeg','-i 2.mp4','-vn','-ab','128','outputaudio.mp3']