【FFMEPG】windows下编译ffmpeg2.5——使用VS2013,ARMLINUX,ANDORID编译ffmpeg
原文:http://blog.csdn.net/finewind/article/details/42784557
一、准备:
1. 本机环境: win7 64bit;
2. 安装MinGW到C:\MinGW,下载地址http://www.mingw.org/;
3. 安装yasm,下载地址http://yasm.tortall.NET/;
(2,3步请参考http://blog.csdn.net/finewind/article/details/38854517)
4. 下载ffmpeg源码:我是从https://github.com/FFmpeg/FFmpeg上拉的release/2.5分支;
二、使用VS2013编译ffmpeg2.5:
VS2013已基本完整支持C99,使用VS2013,可以省去C89到C99的转换过程,并且FFMPEG2.5版本已经完整支持msvc工具链(实际FFMPEG2.3即已经支持),这使得使用VS2013编译ffmpeg变得异常简单,详细步骤可参考http://blog.csdn.net/finewind/article/details/38854517。
1. 安装VS2013,假设装在D盘;
2. 编辑C:\MinGW\msys\1.0\msys.bat文件,在此文件的最前面(@echo off之后)添加一行如下内容:
- call "D:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat"
3. 重命名 C:/MinGW/msys/1.0/bin/link.exe 为link_renamed.exe;
4. 在FFMPEG代码目录下新建文件build_msvc.sh,内容如下:
- #!/bin/sh
- # for msvc
- MSVC_PREFIX=$(pwd)/out/msvc
- function build_msvc
- {
- ./configure \
- --prefix=$MSVC_PREFIX \
- --enable-static \
- --enable-shared \
- --enable-debug \
- --toolchain=msvc
- make clean
- make
- make install
- }
- build_msvc
5. 双击C:\MinGW\msys\1.0\msys.bat文件,在打开的命令行窗口下切换到ffmpeg源码目录,为build_msvc.sh添加执行权限,并执行;
6. 等待脚本执行完成。
二、使用Android NDK编译ffmpeg2.5:
1. 安装android ndk,下载地址:developer.android.com/tools/sdk/ndk/index.html,我使用的是ndk-r9d,安装目录为E:\android;
2. 在FFMPEG代码目录下新建文件build_android.sh,内容如下:
- NDK=E:/android/android-ndk-r9d
- SYSROOT=$NDK/platforms/android-19/arch-arm/
- TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64
- PREFIX=$(pwd)/out/android
- function build_android
- {
- ./configure \
- --prefix=$PREFIX \
- --enable-shared \
- --disable-static \
- --disable-doc \
- --disable-ffmpeg \
- --disable-ffplay \
- --disable-ffprobe \
- --disable-ffserver \
- --disable-avdevice \
- --disable-doc \
- --disable-symver \
- --enable-cross-compile \
- --sysroot=$SYSROOT \
- --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
- --target-os=linux \
- --arch=arm
- make clean
- make
- make install
- }
- build_android
3. 双击C:\MinGW\msys\1.0\msys.bat文件,在打开的命令行窗口下切换到ffmpeg源码目录,为build_android.sh添加执行权限,并执行;
4. 等待脚本执行完成。
三、使用ARM Linux工具链编译ffmpeg2.5:
1. 安装arm-none-linux-gnueabi-gcc,下载地址:http://www.veryarm.com/arm-none-linux-gnueabi-gcc,我使用的是windows安装版arm-2014.05-29-arm-none-linux-gnueabi.exe,安装路径:F:\arm-201405;
2. 在FFMPEG代码目录下新建文件build_armlinux.sh,内容如下:
- TOOLROOT=F:/arm-201405
- PREFIX=$(pwd)/out/armlinux
- function build_armlinux
- {
- ./configure \
- --prefix=$PREFIX \
- --enable-shared \
- --disable-static \
- --disable-doc \
- --disable-ffmpeg \
- --disable-ffplay \
- --disable-ffprobe \
- --disable-ffserver \
- --disable-avdevice \
- --disable-doc \
- --disable-symver \
- --enable-cross-compile \
- --sysroot=$TOOLROOT/arm-none-linux-gnueabi/libc \
- --cross-prefix=$TOOLROOT/bin/arm-none-linux-gnueabi- \
- --target-os=linux \
- --arch=arm
- make clean
- make
- make install
- }
- build_armlinux
3. 双击C:\MinGW\msys\1.0\msys.bat文件,在打开的命令行窗口下切换到ffmpeg源码目录,为build_armlinux.sh添加执行权限,并执行;
4. 等待脚本执行完成。
转载于:https://www.cnblogs.com/huty/p/8517633.html
【FFMEPG】windows下编译ffmpeg2.5——使用VS2013,ARMLINUX,ANDORID编译ffmpeg相关推荐
- Windows Embedded Compact 2013升级:VS2013也能编译
IT之家(www.ithome.com):Windows Embedded Compact 2013升级:VS2013也能编译 今天,微软为Windows Embedded Compact 2013送 ...
- 在Windows 下使用CodeBlocks 自带编译器实现对编译的优化
项目需要,对同一个源码进行编译,得到不同的优化版本的可执行文件.刚刚开始使用CodeBlocks的GUI的项目 Project->Properties->Project's build o ...
- Windows 下用VS2012(Visual Studio 2012)编译librtmp
https://blog.csdn.net/caoshangpa/article/details/52872756 https://blog.csdn.net/ILOVEYOULEEHUIJIE/ar ...
- GDAL库简介以及在Windows下编译过程
GDAL(Geospatial Data Abstraction Library,地理空间数据抽象库)是一个在X/MIT许可协议下的开源栅格空间数据转换库.官网http://www.gdal.org/ ...
- Windows下编译openssl库
1.概述 OpenSSL是一个开放源代码的软件库包,它实现了 SSL(Secure SocketLayer)和 TLS(Transport Layer Security)协议,所以应用程序可以使用这个 ...
- linux node gyp 编译,windows下安装node-gyp
什么是node-gyp? gyp是一种根据c++源代码编译的工具,node-gyp就是为node编译c++扩展的时候使用的编译工具. 最近在研究native script需要使用到node-gyp,遇 ...
- Windows下lapack的编译
ack我就不介绍了,MATLAB的底层就是它. 我要在Windows下使用lapack,应该怎么办? 1. 有现成的编译好的库.比如LAPACK for Windows,或者http://www.fi ...
- Linux及Windows下编译exosip和osip2源码
eXosip库及编译流程简介 1.eXosip库的简介 1.1.osip简介 osip2是一个开放源代码的sip协议栈,是开源代码中不多使用C语言写的协议栈之一,它具有短小简洁的特点,专注于sip底层 ...
- [ffmpeg][qsv][windows]windows下配置fmpeg英特尔qsv
[ffmpeg][qsv][windows]windows下配置fmpeg英特尔qsv 文章目录 [ffmpeg][qsv][windows]windows下配置fmpeg英特尔qsv 预装mingw ...
- 老是说我编译版本不够_海思3518E编译环境搭建
一.系统准备 1. Hi3518e的SDK 2. Ubuntu安装文件,这次安装的版本是20.04 3. Vmware虚拟机,也可以直接安装一台编译服务器,这次安装的是虚拟机 4. 安装虚拟机的时候, ...
最新文章
- Vue2.x开发饿了么项目(header部分)
- 不是python中用于开发用户界面的第三方库-模拟试卷C
- JPA 中文乱码问题
- 云架构指挥调度平台技术方案建议书
- Java poi操作导入导出excel
- 别出心裁的Linux命令学习法
- Pr插件大全一键安装包视频剪辑必备工具预设
- mac charles4.0.2免费破解版安装
- 梅特勒托利多电子秤显示EEP服务器错误,托利多电子秤故障排除和维修方法
- cpufreq schedutil原理剖析
- 需求调研(一)——调研流程和时间的把握
- require.js的用法:
- 京东 App 鸿蒙版上架华为应用商店
- Freertos 任务切换
- 解决电脑上用耳机时声音太小的问题
- tvOS游戏开发系列(SpriteKit)之新建tvOS游戏项目(二)
- Goslate: Free Google Translate API
- 架构师学习笔记14--信息系统基础知识
- 微信小程序开发之图片压缩方案
- 安装gnome3桌面环境_在Linux上使用GNOME 3桌面环境的11个理由