gpt4 book ai didi

python-3.x - 等待 subprocess.run 直到完成它的任务

转载 作者:行者123 更新时间:2023-12-04 00:41:18 25 4
gpt4 key购买 nike

我创建了一个简单的方法,可以像在终端中一样执行命令

from subprocess import PIPE, run

class Command_Line():

@staticmethod
def execute(command):
result = run(command, stdout=PIPE, stderr=PIPE, universal_newlines=True, shell=True)
print(result)
return result.stdout

我对上面代码的问题是它不会等到任务/过程完成。假设我使用 ffmpeg 通过以下代码更改视频的帧速率
import Command_Line as cmd    
cmd.execute('ffmpeg -i "000000004.avi" -c copy -y -r 30 "000000004.avi"')

问题是输出视频,因为它没有完成该过程。我已经搜索了如何等待 Is there a way to check if a subprocess is still running?
但无法将其与我的代码合并。你能分享一下你的经验吗。

谢谢

最佳答案

根据python documentation subprocess.run等待进程结束。

问题是 ffmpeg overwrites the input file如果输入和输出文件相同,因此输出视频变得不可用。

关于python-3.x - 等待 subprocess.run 直到完成它的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49227453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com