问题描述
所以我想在 python 中使用 pickle.dump() 字典。这是我的字典的一般结构:
{"key": [tkinter.Button,moviepy.VideoFileClip,int]}
等等。
现在我无法在 moviepy.VideoFileClip
对象上运行 pickle.dump() - 它出现了这个错误:
cannot pickle '_thread.lock' object
有谁知道如何将带有moviepy videofileclip的字典保存到文件中(我可能很快会尝试使用numpy数组)
解决方法
您不能腌制 MoviePy VideoFileClip
,因为它没有将所有视频数据存储在其中,它会在请求时从 FFmpeg 进程延迟加载视频数据。
您必须使用 VideoFileClip
将 np.array(clip.iter_frames())
转换为 numpy 数组,这会将返回的生成器转换为 numpy 数组。