【已解决】pyinstaller 将程序打包成 exe 文件后,无法保存视频或者保存的视频为空文件

这里写自定义目录标题

问题描述

使用pyinstaller将python程序打包为exe文件,其中包含保存视频的代码。直接运行脚本时,程序能够正确的保存视频。但是通过pyinstaller打包成exe文件后,exe文件无法保存视频或者保存的视频文件为空。

解决方法

方法一

将python的环境下的cv2安装包中的opencv_videoio_ffmpeg481_64.dll文件拷贝到exe的同目录下即可恢复正常。每个人的python路径不一样,opencv_videoio_ffmpeg481_64.dll文件名中的数字部分也可能不一样。我的文件路如下:

D:\anaconda3\envs\yolov8test\Lib\site-packages\cv2

方法二

打包exe文件时,使用--add-binary参数,将上述opencv_videoio_ffmpeg481_64.dll文件一起打包进来即可。命名格式如下:
--add-binary参数后面写的是opencv_videoio_ffmpeg481_64.dll文件的绝对路径。

python 复制代码
pyinstaller --onefile videoSave.py --add-binary D:\anaconda3\envs\yolov8test\Lib\site-packages\cv2\opencv_videoio_ffmpeg481_64.dll

参考

1.pyinstaller 打包成 exe 文件后无法保存视频的问题

2.Exe file build by Pyinstaller can not save video with cv2.VideoWriter

相关推荐
结衣结衣.19 分钟前
python中的函数介绍
java·c语言·开发语言·前端·笔记·python·学习
茫茫人海一粒沙22 分钟前
Python 代码编写规范
开发语言·python
林浩23323 分钟前
Python——异常处理机制
python
数据分析螺丝钉1 小时前
力扣第240题“搜索二维矩阵 II”
经验分享·python·算法·leetcode·面试
小蜗笔记1 小时前
在Python中实现多目标优化问题(7)模拟退火算法的调用
开发语言·python·模拟退火算法
TANGLONG2222 小时前
【C语言】数据在内存中的存储(万字解析)
java·c语言·c++·python·考研·面试·蓝桥杯
魏大橙2 小时前
Fastjson反序列化
开发语言·python
立黄昏粥可温2 小时前
Python 从入门到实战34(实例2:绘制蟒蛇)
开发语言·python
柚乐果果3 小时前
数据分析实战简例
java·大数据·python
luthane3 小时前
python 实现djb2哈希算法
python·算法·哈希算法