opencv 编译“FFMPEG: Download failed”解决办法

编程入门 行业动态 更新时间:2024-10-19 01:29:02

在编译OpenCV 源码过程中,需要下载第三方依赖包,由于种种原因,无法下载,导致编译中止
错误类型如下:

FFMPEG: Download: opencv_videoio_ffmpeg.dll Try 1 failed CMake Warning
at cmake/OpenCVDownload.cmake:202 (message): FFMPEG: Download
failed: 28;“Timeout was reached”

FFMPEG: Download: opencv_videoio_ffmpeg_64.dll Try 1 failed CMake
Warning at cmake/OpenCVDownload.cmake:202 (message): FFMPEG:
Download failed: 35;“SSL connect error”

以上错误:opencv_videoio_ffmpeg.dll 和 opencv_videoio_ffmpeg_64.dll下载失败导致。

查看,下载缓存opencv\sources.cache\ffmpeg,文件并未下载完成

解决方法

一、从其他地方下载以上两个文件,放在opencv\sources.cache\ffmpeg目录中

只需要下载对应的opencv_videoio_ffmpeg.dll 和 opencv_videoio_ffmpeg_64.dll即可,文件名前面的16进制前缀,为对应文件的md5值。
https://download.csdn/download/pyt1234567890/12492971

二、修改源码中文件MD5

下载后的文件如下,对应的MD5分别为5de6044cad9398549e57bc46fc13908d和 55c0bc8ad27db00116fabf06508de196

仅仅把下载的文件放在缓冲区中是不够的,因为自己下载的MD5有可能和源码中指定的MD5不一致,从而导致编译后,依旧无法下载指定是的文件,同样无法编译!

所以修改源码中指定的MD5。
打开文件opencv\sources\3rdparty\ffmpeg\ffmpeg.cmake
把如下两项对应的值,修改成以上文件的MD5,分别对应32位和64位的dll

ocv_update(FFMPEG_FILE_HASH_BIN32 "5de6044cad9398549e57bc46fc13908d")
ocv_update(FFMPEG_FILE_HASH_BIN64 "55c0bc8ad27db00116fabf06508de196")

注意:
其中文件对应关系,可以追溯原始MD5

三、再次编译

通过修改MD5,并和下载的文件对应起来,再次编译即可顺利成功!

注意:
以上方法仅适用于,所需文件版本差异不大的情况下。
如果文件版本差异太大,就必须下载指定的版本了

-----------------------------------------仅此记录-------------------------------------------------------

更多推荐

opencv 编译“FFMPEG: Download failed”解决办法

本文发布于:2023-06-14 07:13:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1450275.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:解决办法   FFMPEG   opencv   failed   Download

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!