windows下使用heif库解码heic图片
windows下使用heif库解码heic图片
简言
heic图像格式是一种图像编码格式,可通过ffmpeg和libdec265进行解码。使用python开发可通过命令pip install pillow9.4.0, pip install pillow-heif0.12.0下载对应版本的heif进行解码(heif是通过调用libdec265.dll来进行解码),另外可通过,本文介绍通过在官方下载heif源码,并使用cmake-gui编译生成libheif.dll。
编译heif
相关下载
- 下载heif源码:github下载地址是:https://github.com/strukturag/libheif,这里我用的是v1.17.6版本。
- 下载libde265源码:https://github.com/strukturag/libde265,使用的版本是v1.0.16
- CMake版本这里用的是3.31.6,版本太低会有问题
配置编译
1.编译lib265(首先编译,后面编译heif要用到):
使用git bash或者cmake-gui.exe生成vs解决方案:
使用git bash生成vs解决方案
mkdir build
cd build
cmake …
在文件目录中生成vs解决方案然后使用vs进行打开,接着按照下面步骤进行编译,编译后获得de264.lib和libde265.dll。

2.编译heif
使用cmake-gui输入heif源码路径,配置源码路径和生成路径;

点击"Configure",然后勾选“WITH_LIBDE265”,取消“WITH_LIBDE265_PLUGIN”,并把上面编译好的de265库的头文件路径和动态库路径分别填入configure中,如下图所示:

配置好了之后点击"Generate",等待生成结束。

生成完成之后点击"Open Project"打开vs解决方案,选择生成所有

在vs编译完成之后,会生成heif.dll

测试
找到生成的heif-convert.exe,并把heif.dll,libde265.dll拷贝到这个exe同级目录,“Win+r"打开命令行,进入到该exe所在目录,使用命令"heif-convert --list-decoders"即可列出所有的解码器。

如果解码器都为空,说明没有正确配置解码器。
更多推荐


所有评论(0)