win10编译ffmpeg

Posted 荣超

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了win10编译ffmpeg相关的知识,希望对你有一定的参考价值。

android-ndk-r14b(linux版)

ffmpeg-4.0

开启win10子系统(控制面板-》程序和功能-》启用或关闭Windows功能 然后在 适用与 Linux 的 Windows 子系统前面打勾)

然后点击确定,等待安装,电脑会重启

然后在win10应用商店 搜索ubuntu安装后 即可打开liunx控制台(以后直接在windows控制台输入bash即可进入linux控制台)

首次进入linux控制台后还需要安装gcc和make

安装 gcc
apt-get install gcc
安装 make
apt-get install make

 下面是执行的命令 ffmpeg的configure不需要做任何修改

android-ndk-r14b可以编译成功,但是使用android-ndk-r16却编译不通过

在e:/ffmpeg/4.0/build/ffmpeg-4.0/目录下 新建 build.sh 文件内容如下 cd到该目录下 执行chmod 777 build.sh  在执行./build.sh    

#!/bin/sh
cd /mnt/e/ffmpeg/4.0/build/ffmpeg-4.0
#这里的这些变量根据自己本地的环境切换
export NDK=/mnt/e/ffmpeg/SDK/android-ndk-r14b
export PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt 
export PLATFORM=$NDK/platforms/android-16/arch-arm
export TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
export CPU=arm
export PREFIX=/mnt/e/ffmpeg/4.0/build/android/$CPU

build_one(){
./configure \\
--target-os=linux \\
--prefix=$PREFIX \\
--enable-cross-compile \\
--disable-asm \\
--arch=$CPU \\
--cross-prefix=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi- \\
--disable-stripping \\
--nm=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi-nm \\
--sysroot=$PLATFORM \\
--enable-gpl \\
--enable-static \\
--disable-shared \\
--enable-small \\
--disable-ffprobe \\
--disable-ffplay \\
--disable-ffmpeg \\
--disable-debug \\
$ADDITIONAL_CONFIGURE_FLAG
make clean
make j8
make install
}

build_one

$TOOLCHAIN/bin/arm-linux-androideabi-ld \\
-rpath-link=$PLATFORM/usr/lib \\
-L$PLATFORM/usr/lib \\
-L$PREFIX/lib \\
-soname libffmpeg.so -shared -nostdlib -Bsymbolic --whole-archive --no-undefined -o \\
$PREFIX/libffmpeg.so \\
libavcodec/libavcodec.a \\
libavfilter/libavfilter.a \\
libswresample/libswresample.a \\
libavformat/libavformat.a \\
libavutil/libavutil.a \\
libswscale/libswscale.a \\
libpostproc/libpostproc.a \\
libavdevice/libavdevice.a \\
-lc -lm -lz -ldl -llog --dynamic-linker=/system/bin/linker \\
$TOOLCHAIN/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a \\

cd ..

 这里我只编译了arm架构的

android ffmpeg的简单使用

 

以上是关于win10编译ffmpeg的主要内容,如果未能解决你的问题,请参考以下文章

win10下使用msys+vs2019编译ffmpeg源码

win10下使用msys+vs2019编译ffmpeg源码

win10编译ffmpeg

FFmpeg入门详解之104:Win10快速安装OpenSSL(不用编译源码)

WIN10 编译ffmpeg(包含ffplay)

Win10专业版,CMake3.8.2,opencv3.3.0,自编译,ffmpeg文件