Windows 10系统下编译FFMpeg库文件

小记:以前干过很多脏活儿、累活儿(尤其是配置并安装环境之类的)都没有写成文档形式,以至于重装了系统碰到类似问题又尼玛重新百度、谷歌再来一遍。所以,真心劝各位网友养成一个好习惯,该记录的时候要写下来,为了自己也方便大家。

需要安装的工具

1、MinGW

     下载地址:http://www.mingw.org/

     进入下载页面,点击右上角的【Download Installer】

Windows 10系统下编译FFMpeg库文件_第1张图片

     点击下图中的链接即可

Windows 10系统下编译FFMpeg库文件_第2张图片

     经过傻瓜式的安装,会进入如下界面

Windows 10系统下编译FFMpeg库文件_第3张图片

    左侧选择MinGW,选择右边的待安装的项,反键 - Mark for Installation;之后,点击Installation进行安装。需要注意的是,在安装目录下(我用的 是默认路径即C:\MinGW\bin)有g++.exe | gcc.exe | gdb.exe就行,如果没有的话,就在上图中的packages列将带有g++、gcc、ada名字的bin项都选上进行安装。

【 备注】建议也选择MSYS进行安装(随便挑一个即可),为了将msys文件夹在C:\MinGW中生成。

Windows 10系统下编译FFMpeg库文件_第4张图片

    最后,将C:\MinGW\bin添加到环境变量PATH中,打开cmd命令行,运行gcc -v,如果把版本信息都打出来说明安装成功。

Windows 10系统下编译FFMpeg库文件_第5张图片

2、Msys

     下载地址:https://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/

     选择第一个(我选的是它),下载并解压,将msys里面的所有东东拷贝到C:\MinGW\msys\1.0下进行替换;同时,将C:\MinGW\msys\1.0\bin也添加在环境变量PATH中。

Windows 10系统下编译FFMpeg库文件_第6张图片

     运行msys.bat,并进入到ffmpeg解压目录下,执行./build_android.sh即可编译ffmpeg库文件。

     运行那个脚本就会进行一个编译的了,编译过程中,有时可以什么反应都没有,千万不要以为没有运行,停止它,因为编译是比较耗时的,编译个20分钟是很正常的,电脑性能好的,会快点,差的可能半小时都正常,要确定有没有在编译,可以查看一下cpu的使用率就可以了。经过一段时间的编译,我们就可以在脚本里面定义的那个目录里面看到编译成功的库了。

Windows 10系统下编译FFMpeg库文件_第7张图片

3、FFMPEG编译脚本

在FFMPEG解压目录下新建build_android.sh(名字可以随便取)

#!/bin/sh

#这里的这些变量根据自己本地的环境切换

export NDK=D:/03_AndroidSDK/Sdk/ndk-bundle

export PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt

export PLATFORM=$NDK/platforms/android-19/arch-arm

export TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64

export PREFIX=../ffmpeglib

build_one(){

./configure --target-os=linux --prefix=$PREFIX --enable-cross-compile \

--enable-runtime-cpudetect \

--disable-asm \

--arch=arm \

--cc=$TOOLCHAIN/bin/arm-linux-androideabi-gcc \

--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \

--disable-stripping \

--nm=$TOOLCHAIN/bin/arm-linux-androideabi-nm \

--sysroot=$PLATFORM \

--enable-gpl --enable-shared --disable-static --enable-small \

--disable-ffprobe --disable-ffplay --disable-ffmpeg --disable-ffserver --disable-debug \

--extra-cflags="-fPIC -DANDROID -D__thumb__ -mthumb -Wfatal-errors -Wno-deprecated -mfloat-abi=softfp -marm -march=armv7-a"

}

build_one

make

make install

cd ..

你可能感兴趣的:(Windows 10系统下编译FFMpeg库文件)