Python 和 ffmpeg

标签 python ffmpeg subprocess

我正在尝试调用 ffmpeg 从视频中的帧创建图像,我在 Mac 上使用 python 和 subprocess.Popen 来执行此操作,最终这将移动到 unix 服务器。

我可以使用此行从命令行成功创建视频

ffmpeg -i /Users/bimemployee/Movies/ski\ commute.m4v -r .5 -vframes 1 -ss 00:01:14 /Users/bimemployee/Movies/untitled\ folder/image-%d.jpeg

然后我将其转换为 python 可迭代对象并将其传递给 Popen

s=["ffmpeg","-i","Users/bimemployee/Movies/ski\ commute.m4v","-r","1","-vframes","1","-ss","00:01:14","/Users/bimemployee/Movies/untitled\ folder/image-%d.jpeg"]
subprocess.Popen(s)

当我这样做时,我从 ffmpeg 获得标准信息屏幕,并显示一条错误,指出 Users/bimemployee/Movies/ski\commute.m4v:没有这样的文件或目录

为什么这条路径在命令行中可以正常工作,但在 python 中却不能?

其次是他们有一个更好的库来处理这个问题,我能找到的库似乎不是活跃的项目,或者不能直接使用 python,但需要像 cython 这样的东西。

谢谢, CG

最佳答案

您缺少开头的正斜杠:

/Users/bimemployee/Movies/ski_commute.m4v

不等于

Users/bimemployee/Movies/ski_commute.m4v

关于Python 和 ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9234623/

相关文章:

c - FFMPEG 库添加填充处理的平面/帧

android - libav sws_scale() 在真实设备上的色彩空间转换失败,适用于模拟器

python - 我可以使用 python 're' 来解析复杂的人名吗?

python - 顺序或并行 : what is the proper way to read multiple files in python?

android - 这个 FFmpeg Command 的语法和逻辑是否正确?

python subprocess popen同步命令

python - 如何使用子进程在Python中访问Bash环境变量?

python - 为崩溃的子进程 : no out and err after a call to communicate() 捕获 "Segmentation fault"消息

python - 如何使用单个批处理文件安装 pip 和 python 模块?

python - Django mongonaut : 'You do not have permissions to access this content.'