首页 > 解决方案 > 带有变量的 pytion 子进程 check_output 中的错误

问题描述

我需要 ffprobe 命令的输出。所以我使用 subprocess 模块如下:

lengthofvideo = subprocess.check_output('ffprobe', '-i' %inputfile, '-show_entries', 'format=duration', '-v', 'quiet', '-of', 'csv="p=0"')

输入文件变量包含完整的类似 bash 的视频路径。但我的语法有错误,我收到以下错误:

TypeError: not all arguments converted during string formatting

任何帮助表示赞赏。

标签: pythonvideoffmpegvideo-processingffprobe

解决方案


我这样做的最简单方法是创建一个命令,然后将其传递给子进程:

cmd = 'ffprobe -i ' + inputfile + ' -show_entries format=duration -v quiet -of csv="p=0"'
lengthofvideo = subprocess.check_output(cmd, shell=True)

推荐阅读