前言
本文在win10下用msys2和vs2017编译ffmpeg(含ffplay)64位,以及把ffplay.c移植到vs2017环境中,便于学习。ffmpeg 的源码是跨平台的,通过 configure(shell脚本) 实现不同平台的编译。在 configure 的时候指定--toolchain=msvc 就可以使用 msvc 来编译。
一、准备环境
1、下载MSYS2
官网下载地址:https://www.msys2.org/ ,edge浏览器和chrome浏览器没下载成功,用搜狗浏览器下载成功。window10 的CMD 无法运行 configure 脚本,所以需要装 msys2 ,装了 msys2 就能运行 configure 。
2、下载FFmpeg源码
官网地址为https://ffmpeg.org/,选择的版本为4.4.5
网上的一些教程 编译ffmpeg 的时候,会下载编译 x264 , fdk-aac 等,然后引入ffmpeg 里面。但是 4.4.5版本的 ffmpeg 已经基于微软的 MediaFoundation 实现了 h264 ,aac 编解码器,分别是 h264_mf 跟 aac_mf ,mf 是 MediaFoundation 的缩写。所以不需要 再编译 x264 ,也不需要编译 fdk-aac ,比较方便。
3、下载SDL源码(可选,在编译FFplay.exe时需要)
官网下载地址:Simple DirectMedia Layer - Homepage