TextClip构造方法报OSError:MoviePy creation of None failed because of the following [WinError 2]系统找不到指定的文件

时间:2023-03-08 23:45:47
TextClip构造方法报OSError:MoviePy creation of None failed because of the following [WinError 2]系统找不到指定的文件

☞ ░ 前往老猿Python博文目录

在使用moviepy的构造方法创建实例时报错:

"C:\Program Files\Python37\python.exe" F:/study/python/project/moviepyTest/moviepyTest.py
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\moviepy\video\VideoClip.py", line 1137, in __init__
subprocess_call(cmd, logger=None)
File "C:\Program Files\Python37\lib\site-packages\moviepy\tools.py", line 46, in subprocess_call
proc = sp.Popen(cmd, **popen_params)
File "C:\Program Files\Python37\lib\subprocess.py", line 775, in __init__
restore_signals, start_new_session)
File "C:\Program Files\Python37\lib\subprocess.py", line 1178, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。 During handling of the above exception, another exception occurred: Traceback (most recent call last):
File "F:/study/python/project/moviepyTest/moviepyTest.py", line 16, in <module>
txtclip = TextClip(inf )
File "C:\Program Files\Python37\lib\site-packages\moviepy\video\VideoClip.py", line 1146, in __init__
raise IOError(error)
OSError: MoviePy Error: creation of None failed because of the following error: [WinError 2] 系统找不到指定的文件。. .This error can be due to the fact that ImageMagick is not installed on your computer, or (for Windows users) that you didn't specify the path to the ImageMagick binary in file conf.py, or that the path you specified is incorrect Process finished with exit code 1

这可能是两个原因导致的:

  1. 未安装ImageMagick应用

    ImageMagick是一套功能强大、稳定而且开源的多平台工具集和开发包,可以用来读、写和处理超过200种基本格式的图片文件,包括PNG,JPEG,GIF,HEIC,TIFF,DPX,EXR,WebP,Postscript,PDF和SVG等格式。利用ImageMagick,可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存,对图片的操作,既可以通过命令行进行,也可以通过C/C++、Perl、Java、PHP、Python或Ruby编程来完成。ImageMagic的主要精力集中在性能,减少bug以及提供稳定的API和ABI上。

    ImageMagick的功能通常通过命令行使用,也可以通过编程来使用。moviepy使用的方式就是通过命令行方式调用的。因此在使用TextClip前,必须安装独立的ImageMagick应用,该应用对应官方下载地址为:

    http://www.imagemagick.org/script/index.php,该网站从国内访问非常慢,老猿好不容易才弄到该工具包的windows 64位16通道图像处理的版本放在CSDN的资源服务器上,如果大家需要使用该版本可以从CSDN的资源服务器对应链接下载,下载地址为:https://download.csdn.net/download/LaoYuanPython/12539159,不过需要5个CSDN积分,但下载快,下载后解压直接点击执行文件运行即可。

  2. 安装ImageMagick没有修改moviepy的配置文件config_defaults.py

    安装ImageMagick后,需要修改moviepy的config_defaults.py模块的配置,将下行代码:

    IMAGEMAGICK_BINARY = os.getenv('IMAGEMAGICK_BINARY', 'auto-detect')

    替换为:

    IMAGEMAGICK_BINARY = r"C:\Program Files\ImageMagick-7.0.8-Q16\magick.exe"

    具体的替换值需要确认ImageMagick安装目录进行更改。

更多TextClip的介绍请参考《moviepy音视频剪辑:视频基类VideoClip子类DataVideoClip、UpdatedVideoClip、ImageClip、ColorClip、TextClip类详解》。

更多moviepy的介绍请参考《PyQt+moviepy音视频剪辑实战文章目录》或《moviepy音视频开发专栏》。

关于收费专栏

老猿的付费专栏《使用PyQt开发图形界面Python应用》专门介绍基于Python的PyQt图形界面开发基础教程,付费专栏《moviepy音视频开发专栏》详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,两个专栏加起来只需要19.9元,都适合有一定Python基础但无相关专利知识的小白读者学习。这2个收费专栏都有对应免费专栏,只是收费专栏的文章介绍更具体、内容更深入、案例更多。

对于缺乏Python基础的同仁,可以通过老猿的免费专栏《专栏:Python基础教程目录》从零开始学习Python。

如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。

TextClip构造方法报OSError:MoviePy creation of None failed because of the following [WinError 2]系统找不到指定的文件TextClip构造方法报OSError:MoviePy creation of None failed because of the following [WinError 2]系统找不到指定的文件

跟老猿学Python、学5G!

☞ ░ 前往老猿Python博文目录