`

编译ffmpeg

 
阅读更多

 1、 下载编译环境MinGW+Msys,地址是:http://sourceforge.net/projects/mingwbundle/files/,在这个页面上点击Download下载那个zip文件。下载完成后,直接安装,不建议修改任何默认路径(现在的电脑,C盘空间都大的很)。

MinGW和Msys以前都是分别安装的,现在可以一次性一起安装。可以在线安装,也可以离线安装。推荐离线安装,上面这个链接是用来下载离线安装包的。

2、在http://yasm.tortall.net/Download.html上下载yasm的exe文件(需要根据自己的操作系统选择是Win32.exe还Win64.exe),下载完后重命名为yasm.exe,放到MinGW安装目录的bin目录下。

如果没有这一步操作,在后面编译ffmpeg的过程中,可能会提示找不到yasm命令。ffmpeg里面的汇编加速部分的代码需要用到它,如果禁用汇编加速,会影响编译出来的编解码库的运行效率。

3、下载ffmpeg,在http://ffmpeg.org/download.html可以找到最新的版本,我下载的是http://ffmpeg.org/releases/ffmpeg-0.8.5.tar.gz。下载完成后解压到某处待命。

4、通过桌面或开始菜单的快捷方式,进入MinGW的命令行,进入ffmpeg的解压目录。

注意:切换盘符用“cd 盘符”命令,如“cd d: ”表示切换到d盘。

5、使用configure命令配置ffmpeg的编译参数。我配置的参数如下(仅供参考):

./configure --enable-shared --enable-gpl --enable-version3 --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-w32threads --disable-network --enable-memalign-hack --disable-everything --enable-decoder=h264 --enable-decoder=mpeg2video --enable-parser=h264 --enable-encoder=mpeg2video --disable-debug

通过./configure --help可以查看帮助,上面的每一个参数,都可以在帮助中找到说明;

由于我仅仅需要ffmpeg用来完成MPEG2视频的编码和解码,H.264视频的解码,因此我在上面的参数中,禁用了大量我用不着的内容。一方面加快编译的速度,另外一方面编译出来的库会比较小。

6、输入make进行编译。

7、编译完成后,输入make install进行部署。

如果没有修改过msys的安装路径,那么生成的文件会部署在“C:\msys\1.0\local”目录下。

生成的动态库在“msys目录\local\bin”目录下;

链接库文件在“msys目录\local\lib”目录下的,*.dll.a为动态库需要的链接文件,*.a为纯静态库(不依赖dll);修改扩展名为.lib就可以用了。

需要的头文件在“msys目录\local\include”目录下。

 

http://www.ffmpeg.org/releases/

 

sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-sound1.2-dev

 

cd ffmpeg

 

./configure --enable-shared --enable-pthreads  --disable-static --prefix=/home/chenjun/ffmpeg/svn_build --disable-yasm

 

./configure --prefix=/home/chenjun/ffmpeg/svn_build --enable-memalign-hack --enable-shared --disable-static --disable-encoder=snow --disable-decoder=ac3 --disable-decoder=vorbis --disable-encoder=vorbis --disable-vhook --enable-ffplay --disable-ffserver --disable-mpegaudio-hp --enable-pthreads --enable-liba52 --enable-nonfree --enable-libamr-nb --enable-libamr-wb --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libgsm --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-avisynth --enable-gpl --enable-swscale --enable-avfilter --enable-avfilter-lavf --enable-demuxer=vfwcap --enable-demuxer=rm --extra-cflags="-I/usr/local/include -I/usr/local/include/SDL" --extra-ldflags=-L/usr/local/lib --extra-libs=-lpthreadGC2

 

 make

 make install

 

ffmpeg -version

 

http://blog.csdn.net/huangxiansheng1980/article/details/5712003

http://1229363.blog.163.com/blog/static/19743427201001244711137/

http://www.codecoolie.com/ffmpeg/compile-ffmpeg-under-windows/

http://blog.csdn.net/blueloading/article/details/7000420

http://www.ffmpeg.com.cn/index.php/SDK_Download

http://3xin2yi.info/wwwroot/tech/doku.php/tech:multimedia:ffmpeg

http://synge33.blog.163.com/blog/static/6094958420110180142349/

http://bbs.rosoo.net/thread-6268-1-1.html

http://blog.simophin.net/?p=816

http://www.cnblogs.com/acloud/archive/2011/11/04/ffmpeg.html

http://hi.baidu.com/xulina809/blog/item/008a7ee898c3f5d8d539c93f.html

http://code.google.com/p/msys-cn/

http://www.diybl.com/course/3_program/c++/cppjs/20111029/562359.html

http://blog.csdn.net/szu030606/article/details/7212376

http://blog.csdn.net/yfh1985sdq/article/details/5706451

http://www.ffmpeg.com.cn/

http://blog.sina.com.cn/s/blog_51396f890100njwr.html

http://ticktick.blog.51cto.com/823160/555791   yuv介绍

http://blog.sina.com.cn/s/blog_4e0869690100x5xp.html ffmpeg源码分析

http://www.cnblogs.com/msopengl/archive/2011/12/25/2301382.html 音视频边编码解码实践

http://blog.chinaunix.net/uid-26073752-id-2939346.html sdk实现各种转换

http://lihaoyan.blog.sohu.com/146539049.html yuv2avi

http://www.diybl.com/course/3_program/c++/cppjs/20111029/562359.html ffmpeg编译环境配置

http://help.eclipse.org/ganymede/index.jsp eclipse帮助

http://blog.sina.com.cn/s/blog_5f5ad6a90100cs5k.html yuv2mpeg

http://www.2cto.com/kf/201112/114378.html vc编译ffmpeg

http://blog.chinaunix.net/uid-20718335-id-2980793.html ffmpeg编译

http://baike.baidu.com/view/189685.htm yuv介绍

http://blog.csdn.net/SearchSun/article/details/2443867 yuv介绍

http://blog.csdn.net/gwinner/article/details/5462855 h264编码

http://www.cnblogs.com/yanfake/archive/2012/01/10/2317869.html ffmpeg编译

http://www.rosoo.net/a/201006/9659.html h264解码

http://trace.eas.asu.edu/yuv/index.html yuv素材下载

http://ticktick.blog.51cto.com/823160/555791 yuv格式分析

http://www.cnblogs.com/hackergodness/

http://blog.csdn.net/huangxiansheng1980/article/details/6892519  windows+cygwin+ffmpeg+x264

http://bbs.chinavideo.org/viewthread.php?tid=5567&extra=&page=1

分享到:
评论

相关推荐

    3588交叉编译ffmpeg

    3588交叉编译ffmpeg

    Linux下编译ffmpeg的wasm库

    在Linux环境下编译FFmpeg的WebAssembly库是一个技术性较强的过程,主要涉及到FFmpeg的源码编译和WebAssembly的交叉编译。FFmpeg是一个强大的开源多媒体处理框架,广泛用于音视频的编码、解码、转码等任务。而...

    windows下编译ffmpeg 并

    在Windows环境下编译FFmpeg是一项技术性较强的任务,特别是对于初学者来说可能充满挑战。FFmpeg是一个开源项目,提供了一套强大的音频、视频处理工具,包括编码、解码、转换和流媒体等功能。以下是编译FFmpeg的详细...

    windows下基于MinGW编译ffmpeg之_初级篇_中级篇

    在Windows环境下,使用MinGW(Minimalist GNU for Windows)编译FFmpeg是一个常见的任务,尤其对于开发者来说,自定义编译可以实现特定的功能需求或优化性能。本篇将详细讲解如何进行FFmpeg的初级和中级编译过程。 ...

    Android 编译ffmpeg+测试工程

    本项目“Android编译ffmpeg+测试工程”旨在帮助开发者在Android环境中集成并运行FFmpeg,以便进行多媒体处理任务。通过这个项目,我们可以学习到以下关键知识点: 1. **FFmpeg简介**:FFmpeg是一个开源的跨平台...

    Android studio CMake 编译ffmpeg SO库 头文件 和 CMakeLists

    本文将详细讲解如何使用Android Studio和CMake编译FFmpeg库,生成SO共享库,并处理相关的头文件和CMakeLists配置。 首先,我们需要在Android Studio项目中引入CMake构建系统。打开`build.gradle`(Module级别)文件...

    编译ffmpeg(ffmpeg6.0+android-ndk-r25c)生成的动态链接库.so文件

    本文将详细讲解如何在Android平台上编译FFmpeg 6.0,并生成适用于不同架构的动态链接库.so文件,包括armeabi-v7a和arm64-v8a。 1. **FFmpeg 框架介绍** FFmpeg 包含了多种音视频编解码器、过滤器和协议,使得...

    嵌入式海思板交叉编译ffmpeg libx264 和 libx265可以在板子上面跑起来详细步骤记录。

    在编译ffmpeg时,确保已经正确安装了libx264和libx265,并且它们的路径被添加到环境变量中。解决找不到x265的错误,可以设置`PKG_CONFIG_PATH`: ``` export PKG_CONFIG_PATH=/home/lulei/work/ffmpeg/lib/...

    使用Cygwin编译ffmpeg.doc

    在Windows环境下编译FFmpeg,通常会选择使用Cygwin,因为Cygwin提供了一个类Linux的环境,使得可以在Windows上运行许多原本只适用于Linux的工具和软件,包括FFmpeg的编译工具链。以下是详细步骤: 1. **安装Cygwin*...

    成功交叉编译ffmpeg,sdl

    本话题主要探讨的是如何成功地交叉编译FFmpeg和SDL库,以便在S3c2440这样的ARM架构处理器上运行。FFmpeg是一个强大的开源多媒体处理工具集,包括音视频编码、解码、转换等功能,而SDL(Simple DirectMedia Layer)则...

    linux下编译ffmpeg

    FFMpeg 在 Linux 下的编译和使用 FFMpeg 是一个功能强大且广泛使用的开源多媒体处理框架,它可以对多种格式的音频和视频文件进行处理,包括编码、解码、转换、流媒体等。今天,我们将介绍如何在 Linux 操作系统下...

    win7下编译ffmpeg所需安装包(2016.12最新版)

    在Windows 7环境下编译FFmpeg,通常是为了实现特定的定制需求或者获取最新版本的功能。 首先,我们需要一个合适的编译环境。在Win7系统中,推荐使用MinGW-w64,这是一个为Windows平台提供的GCC(GNU Compiler ...

    Windows编译ffmpeg步骤

    在Windows环境下编译FFmpeg是一项技术性较强的任务,涉及到多个步骤和依赖库的配置。FFmpeg是一个开源项目,包含了多种音频、视频处理工具,如ffmpeg命令行工具、ffplay播放器等。为了在Windows上成功编译FFmpeg并...

    windows下编译ffmpeg库

    在 Windows 下编译 FFmpeg 库是一项技术性较强的工作,通常需要安装 MinGW 或 MSYS2 环境来提供 GCC 编译器。本篇文章将详细介绍在 Windows 上编译 FFmpeg 库的过程。 1. **环境准备**: - 首先,你需要下载并安装...

    vs2015编译ffmpeg产物

    在本文中,我们将深入探讨如何使用Visual Studio 2015(VS2015)来编译FFmpeg项目,生成所需的头文件(.h)、静态库文件(.lib)以及其他相关文件。 首先,我们需要准备以下资源: 1. FFmpeg源代码:可以从FFmpeg...

    mac上编译FFmpeg跑ios

    FFmpeg 是一个强大的开源多媒体处理框架,...以上就是关于“mac上编译FFmpeg跑ios”的详细知识点,希望对你的开发工作有所帮助。在整个过程中,了解和掌握编译原理、iOS 开发流程以及 FFmpeg 的内部结构是至关重要的。

    Android-NDK-clang 编译 FFmpeg 安卓设备能使用的FFmpeg库

    Ubuntu20系统,Android NDK-r21e 编译 FFmpeg4.2.4; 编译出libavcodec.so libavdevice.so、libavfilter.so、libavformat.so、libavutil.so、libswresample.so、libswscale.so;

    搭建VS2013编译ffmpeg环境需要的工具包

    在搭建Visual Studio 2013 (VS2013) 编译FFmpeg环境的过程中,你需要准备一些必要的工具和库。FFmpeg是一个开源的多媒体处理框架,它包含了音视频编码、解码、转码、播放等众多功能。在Windows平台上,使用VS2013...

    window下基于Mingw编译ffmpeg之初级篇

    在Windows操作系统下利用MinGW编译FFmpeg的初学者指导 FFmpeg是一个非常强大的跨平台音视频处理框架,它包括了众多的音视频处理库以及编码器,如libavcodec、libavformat等。由于FFmpeg框架功能全面且涉及面广,...

Global site tag (gtag.js) - Google Analytics