win10编译ffmpeg so库

第一步先安装linux虚拟机,这里我使用的是mingw,windows上还有很多这种工具,我就不一一介绍了
mingw的安装包我也上传到百度云了,连接在下面
链接:https://pan.baidu.com/s/1ZlnkKoz4mqjgDa3adcNN6Q
提取码:ieh4
https://www.jianshu.com/p/e9ff7b654c4a
这是安装的教程,切记一定要按照教程一步步来,有一个步骤我特别提醒一下在这里插入图片描述
这里不懂的全部点上,之后呢我们在C:\MinGW\msys\1.0目录下有个msys.bat。先点开,之后需要用到。
当然这是前奏,之后我们就开始ffmpeg的编译之路了,我们需要下载ffmpeg源码,这里你一定要用我的,每个版本的ffmpeg源码都不一样我这里用的是3.2.12版本,这里的源码有些地方我已经优化过了,rtsp流媒体播放的一些优化。连接如下:链接:https://pan.baidu.com/s/1Z5mjMRon_jxPj6D3hLMUmQ
提取码:h0p7
下载之后就是其他的我已经改好了你只需要改动这里build_android.sh,打开这个文件会显示如下:
#!/bin/bash
ADDI_CFLAGS="-marm"
API=27
PLATFORM=arm-linux-androideabi
CPU=armv7-a
NDK=D:/Android/Sdk/ndk-bundle # 修改自己本地的ndk路徑
SYSROOT= N D K / p l a t f o r m s / a n d r o i d NDK/platforms/android- API/arch-arm/
ISYSROOT= N D K / s y s r o o t A S M = NDK/sysroot ASM= ISYSROOT/usr/include/ P L A T F O R M T O O L C H A I N = PLATFORM TOOLCHAIN= NDK/toolchains/KaTeX parse error: Expected 'EOF', got '#' at position 39: …indows-x86_64 #̲注意這裏,一定是windows…OUTPUT
–enable-shared
–disable-static
–disable-doc
–disable-ffmpeg
–disable-ffplay
–disable-ffprobe
–disable-avdevice
–disable-doc
–disable-symver
–cross-prefix=KaTeX parse error: Expected 'EOF', got '\ ' at position 38: …x-androideabi- \̲ ̲--target-os=and…SYSROOT
–extra-cflags="-I$ASM -isysroot $ISYSROOT -Os -fpic -marm"
–extra-ldflags="-marm"
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
echo “开始编译fmpeg…”
build_one
echo “完成编译…”
需要改的地方我都已经注释了,之后你会看到需要ndk,这个时候切记,用我的ndk版本,因为每个版本有差异,我这里用的是r17版本,连接如下:链接:https://pan.baidu.com/s/1MsWZbqsMjY6dMhhRetqlfQ
提取码:6cfq
下载之后放到你的sdk主干目录下解压,然后复制路径粘贴到在这里插入图片描述
这里。之后点开刚刚我们打开的msys.bat虚拟机,之后我们在这里插入图片描述
复制ffmpeg 的路径过去,记得修改\,在linux下这个斜杠是不识别的,需要改成/。进入目录后开始执行build_android.sh脚本,在这里插入图片描述
执行之后你就会看到停顿在编译的那句话不动,然后你需要等待之后会出现一堆的编译信息,不要动让他编译,大概十几二十分钟在ffmpeg目录下会多一个android 文件夹,编译好的头文件也在,之后里面的lib目录会有我们需要的so库。

猜你喜欢

转载自blog.csdn.net/qq_29877851/article/details/88846457