pycharm中调用FFmpeg命令行报错显示不是内部或外部命令,也不是可运行的程序解决办法

前些天在完成一个课程的大作业的时候,需要用到FFmpeg工具将视频转化为一帧帧图片提取出来并保存,然后需要在pycharm中使用Python语句调用cmd命令,代码如下:

cmd = 'ffmpeg -i \"{}\" -vf fps=1 -qscale:v 2 \"{}/image_%01d.jpg\"'.format(video_file_path, image_file_path)
subprocess.call(cmd, shell=True)

结果出现报错提示ffmpeg不是内部或外部命令,也不是可运行的程序
但是正常在外部系统命令行工具中使用时没有问题的,说明外部环境变量的配置是成功了的
pycharm中调用FFmpeg命令行报错显示不是内部或外部命令,也不是可运行的程序解决办法_第1张图片
经查找,发现一种解决办法是在pycharm中写ffmpeg命令时使用绝对路径,即把ffmpeg工具的bin完整路径写上,但是这样太过麻烦。
经过我自己鼓捣,我推测是因为pycharm中使用的是anaconda虚拟环境的原因,导致ffmpeg环境变量没有配置在内,因此可以在pycharm右上角配置一下:
pycharm中调用FFmpeg命令行报错显示不是内部或外部命令,也不是可运行的程序解决办法_第2张图片
在这个位置填上ffmpeg中bin文件路径即可:
pycharm中调用FFmpeg命令行报错显示不是内部或外部命令,也不是可运行的程序解决办法_第3张图片
之后便可正常调用了,不会再有报错。至于原因可能我理解的不是很对,毕竟我对pycharm和anaconda都是刚上手,欢迎大佬指正。

你可能感兴趣的:(ffmpeg,pycharm,python)