前面的文章讲述了编译32位ffmpeg 以及相关内容的过程。
现在讲述如何编译64位ffmpeg的过程。
编译环境搭建可以参考前面的文章。
注意在msys2中的编译器可以使用自带的gcc,也可以使用qt mingw中的gcc,可以通过修改PATH的先后顺序来决定使用哪一个编译器。
1、编译64位X264
- ./configure --prefix=$(pwd)/install --host=x86_64-w64-mingw32 --enable-shared --enable-static
- make -j8
- make install
- cd install/bin
- file x264.exe
2、编译x265
使用cmake生成mingw makefiles文件,主要在系统环境变量中设置qt的相关路径。
3、编译64位qsv
- autoreconf -i
- ./configure --prefix=$(pwd)/install --host=x86_64-w64-mingw32 --enable-shared --enable-static
- make -j8
- make install
4、编译64位 ffmpeg
- export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/cygdrive/e/softdev/transit/QtPro/x264-master-x64/x264-master/install/lib/pkgconfig/:/cygdrive/e/softdev/transit/QtPro/x265-master-x64/x265-master/build/mingw64/install/lib/pkgconfig/:/cygdrive/e/softdev/transit/QtPro/mfx_dispatch-master-x64/mfx_dispatch-master/install/lib/pkgconfig/
-
- ./configure --enable-shared --enable-static --enable-gpl --enable-libx264 --enable-libx265 --enable-libmfx --enable-decoder=h264 --enable-encoder=h264 --enable-decoder=h264_qsv --enable-encoder=h264_qsv --enable-encoder=h265 --enable-decoder=h265 --prefix=$(pwd)/install --enable-encoder=h264 --enable-encoder=h264_qsv --enable-encoder=h265 --disable-opencl --extra-cflags='-I/cygdrive/e/softdev/transit/QtPro/x264-master-x64/x264-master/install/include/ -I/cygdrive/e/softdev/transit/QtPro/mfx_dispatch-master-x64/mfx_dispatch-master/install/include/ -I/cygdrive/e/softdev/transit/QtPro/mfx_dispatch-master-x64/mfx_dispatch-master/install/include/mfx -I/cygdrive/e/softdev/transit/QtPro/x265-master-x64/x265-master/build/mingw64/install/include/' --extra-ldflags='-L/cygdrive/e/softdev/transit/QtPro/x264-master-x64/x264-master/install/lib/ -L/cygdrive/e/softdev/transit/QtPro/mfx_dispatch-master-x64/mfx_dispatch-master/install/lib/ -L/cygdrive/e/softdev/transit/QtPro/x265-master-x64/x265-master/build/mingw64/install/lib/' --enable-protocol=tcp --enable-demuxer=rtsp --enable-network --arch=x86_64
-
- make -j8
- make install