admin管理员组文章数量:1130349
ffmpeg一般在linux环境中使用,但是我们目前很多的开发工具是windows,为了方便在windows下调试和使用ffmpeg,我们需要再windows下面编译和使用ffpeg,本文只讲述windows下如何编译ffmpeg的内容。
windows下编译ffmpeg有很多的方法,本文主要用MSYS2的方式来编译。其本质就是模拟一个linux的命令环境,用来编译ffmpeg
一、需要的软件下载
在windows下编译ffmpeg,需要下载几个软件,我们将其下载在一个不带有中文名称的文件夹中。
1、下载MSYS2
官网下载地址:MSYS2
2、下载FFmpeg源码
从ffmpeg官网上下载的源码好像不是最新的,后面编译的时候会报错,所以我们直接从github上下载5.1.2版本
3、下载x264源码
官网下载地址:x264, the best H.264/AVC encoder - VideoLAN
4、下载SDL源码(可选,在编译FFplay.exe时需要)
官网下载地址:Simple DirectMedia Layer - Homepage
这里下载了2.26.3版本
将下载的软件解压放在一个没有中文名称和空格的文件夹中,以下是我的地址路径
二、安装MSYS2及编译工具链
1、点击msys2-x86_64-20230718.exe并完成安装,完成后的工具如下:
2、修改C:\msys64\msys2_shell.cmd文件,将 rem set MSYS2_PATH_TYPE=inherit 修改成 set MSYS2_PATH_TYPE=inherit
3、启动MSYS2 MINGW64,依次输入以下命令行开始安装mingw64编译链和基本依赖
- 更新环境
<span style="color:#000000"><span style="background-color:#282c34"><code >pacman <span style="color:#ee9900">-Sy</span>
</code></span></span>
- 1
如果出现 clang32: signature from “Christoph Reiter (MSYS2 development key) reiter.christoph@gmail” is invalid
解决方法是输入以下命令,
<span style="color:#000000"><span style="background-color:#282c34"><code > <span style="color:#61aeee">rm</span> <span style="color:#ee9900">-r</span> /etc/pacman.d/gnupg/
pacman-key <span style="color:#ee9900">--init</span>
pacman-key <span style="color:#ee9900">--populate</span> msys2
<span style="color:#61aeee">curl</span> <span style="color:#ee9900">-O</span> http://repo.msys2/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
<span style="color:#61aeee">curl</span> <span style="color:#ee9900">-O</span> http://repo.msys2/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig
pacman <span style="color:#ee9900">-U</span> <span style="color:#ee9900">--config</span> <span style="color:#669900"><</span><span style="color:#999999">(</span><span style="color:#669900">echo</span><span style="color:#999999">)</span> msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
pacman <span style="color:#ee9900">-Syu</span>
</code></span></span>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
最终结果:
- 安装基本依赖库
ffmpeg一般在linux环境中使用,但是我们目前很多的开发工具是windows,为了方便在windows下调试和使用ffmpeg,我们需要再windows下面编译和使用ffpeg,本文只讲述windows下如何编译ffmpeg的内容。
windows下编译ffmpeg有很多的方法,本文主要用MSYS2的方式来编译。其本质就是模拟一个linux的命令环境,用来编译ffmpeg
一、需要的软件下载
在windows下编译ffmpeg,需要下载几个软件,我们将其下载在一个不带有中文名称的文件夹中。
1、下载MSYS2
官网下载地址:MSYS2
2、下载FFmpeg源码
从ffmpeg官网上下载的源码好像不是最新的,后面编译的时候会报错,所以我们直接从github上下载5.1.2版本
3、下载x264源码
官网下载地址:x264, the best H.264/AVC encoder - VideoLAN
4、下载SDL源码(可选,在编译FFplay.exe时需要)
官网下载地址:Simple DirectMedia Layer - Homepage
这里下载了2.26.3版本
将下载的软件解压放在一个没有中文名称和空格的文件夹中,以下是我的地址路径
二、安装MSYS2及编译工具链
1、点击msys2-x86_64-20230718.exe并完成安装,完成后的工具如下:
2、修改C:\msys64\msys2_shell.cmd文件,将 rem set MSYS2_PATH_TYPE=inherit 修改成 set MSYS2_PATH_TYPE=inherit
3、启动MSYS2 MINGW64,依次输入以下命令行开始安装mingw64编译链和基本依赖
- 更新环境
<span style="color:#000000"><span style="background-color:#282c34"><code >pacman <span style="color:#ee9900">-Sy</span>
</code></span></span>
- 1
如果出现 clang32: signature from “Christoph Reiter (MSYS2 development key) reiter.christoph@gmail” is invalid
解决方法是输入以下命令,
<span style="color:#000000"><span style="background-color:#282c34"><code > <span style="color:#61aeee">rm</span> <span style="color:#ee9900">-r</span> /etc/pacman.d/gnupg/
pacman-key <span style="color:#ee9900">--init</span>
pacman-key <span style="color:#ee9900">--populate</span> msys2
<span style="color:#61aeee">curl</span> <span style="color:#ee9900">-O</span> http://repo.msys2/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
<span style="color:#61aeee">curl</span> <span style="color:#ee9900">-O</span> http://repo.msys2/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig
pacman <span style="color:#ee9900">-U</span> <span style="color:#ee9900">--config</span> <span style="color:#669900"><</span><span style="color:#999999">(</span><span style="color:#669900">echo</span><span style="color:#999999">)</span> msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
pacman <span style="color:#ee9900">-Syu</span>
</code></span></span>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
最终结果:
- 安装基本依赖库
版权声明:本文标题:Windows下如何编译FFmpeg 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/jiaocheng/1754822202a2730755.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论