簡體   English   中英

Python:使用子進程調用ffmpeg命令行

[英]Python : call ffmpeg command line with subprocess

我正在嘗試使用subprocess.call調用簡單的ffmpeg命令行。 (示例: ffmpeg -i input\\video.mp4 -r 30 input\\video.avi

通過直接鍵入ffmpeg命令,它可以工作,但是當我嘗試使用subprocess.call('ffmpeg -i input\\video.mp4 -r 30 input\\video.avi', shell=True)調用它時: subprocess.call('ffmpeg -i input\\video.mp4 -r 30 input\\video.avi', shell=True)有沒有錯誤,但不會產生任何結果。

知道哪里可能是問題嗎? (我正在使用python 3.4或2.7,我都嘗試過)

終於發現了問題:使用子流程時,必須使用

/

為您的文件位置而不是

\

編輯 :或者您可以使用原始字符串文字-> r'ffmpeg -i input\\video.mp4 ...' (注意:r''),也可以將它們加倍' \\\\ ' 感謝JF Sebastian

x=subprocess.Popen('ffmpeg -i input\video.mp4 -r 30 input\video.avi', shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
output,err=x.communicate()
if output:
      print "success ",output
else:
      print "error ",err

您可以嘗試此操作,並檢查輸出和錯誤(如果有)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM