python - 避免在终端/cmd 上运行 FFmpeg

标签 python ffmpeg command-line

我正在为一个小项目使用 FFmpeg,所以我构建了一个用于视频编辑的 GUI 基本应用程序
这是图像
enter image description here
一切正常,但我只是想避免为 FFmpeg 进程打开终端,终端打开的原因是因为

I used os.system("FFmpeg command here")
那么有没有办法完全导入FFmpeg并避免使用终端并在代码中运行
如果您有任何想法,请提出建议并告诉我
对于 gui,我使用 PYQT5 和 python 来编码
谢谢
尝试使用子程序但没有用(适用于普通命令但不适用于 ffmpeg)
我还需要打印输出以存储在 python 变量中
请查看图片了解更多信息
enter image description here

最佳答案

我看到 2 个选项来解决这个问题:

  • 在没有控制台窗口的情况下运行 ffmpeg 命令。您可以通过使用带有 CREATE_NO_WINDOW 标志的 subprocess.run 来实现这一点,如:

  •     import subprocess
        
        subprocess.run(["path/to/ffmpeg", "arg1", "arg2"],
        creationflags=subprocess.CREATE_NO_WINDOW)
    
    请注意,CREATE_NO_WINDOW 标志仅在 Python 3.7 之后可用
  • 为 libffmpeg 使用 Python 包装器,例如:https://github.com/kkroening/ffmpeg-python有很多例子。
  • 关于python - 避免在终端/cmd 上运行 FFmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65679936/

    相关文章:

    python - 用scrapy一一爬取网站列表

    python - Psycopg2 - Eventlet 连接挂起

    python - 如何在 python 中为 aws-cdk 创建自定义构造库

    ffmpeg - 如何通过命令行工具在 x2go session 中记录桌面?

    c++ - 如何分析文件并检测文件是否为 H.264 视频格式?

    python - Pygtk 线程化长命令行进程

    command-line - Mercurial:命令行上的多行提交消息?

    python - wxPython:ProgressDialog 崩溃

    java - 如何在项目中使用 .jar 文件并在没有 IDE 的情况下编译它?

    php - shell_exec 返回 null ffmpeg 用于生成视频缩略图