网上关于编译ffmpeg的帖子很多,我也尝试了很多次,但是很多都过不了,一部分原因是版本问题,还有就是有的路劲没说的太明白导致的,经过一天的摸索,最终编译好了,下面把编译方式写下来,希望对看到帖子的人有帮助,特别感谢:http://www.cnblogs.com/zzugyl/p/3186170.html

特别注意:路径千万别弄错了,否则ffplay.exe可能编译不出来

1、准备工作:

在干活之前,先把下面五个软件下载下来。

1)MinGW-MSYS Bundle   http://sourceforge.net/projects/mingwbundle/

2) SDL                                http://www.libsdl.org/download-1.2.php

3)yasm                               http://yasm.tortall.net/Download.html

4)FFmpeg                          http://www.ffmpeg.org/download.html

5)pthreadgc2.dll              http://www.dll-files.com/dllindex/dll-files.shtml?pthreadgc2

2、安装MinGW-MSYS Bundle软件

网上99%的方法都是先安装mingw,再通过网络下载的方法来安装mingw和msys软件。安装好之后,还需要通过烦琐的配置,来搭建编译环境。sourceforge开源平台给大家带来了福音,MinGW-MSYS Bundle软件同时包含了MinGW和MSYS,不需要连接网络进行安装,并且包含了最新的核心组件和库文件。

按照软件默认的安装向导,一路Next,把软件安装好。我是把软件装在了C盘。

3、安装SDL

到上文列出的SDL官方网站地址,下载SDL源码包。咱下载SDL最新的源码包SDL-1.2.15.tar.gz

到ffmpeg网站,下在ffmpeg源码包,咱下的是最新的版本ffmpeg-1.2.1.tar.gz

把ffmpeg解压缩到C:\msys\1.0\ffmpeg-1.2.1\ffmpeg-1.2.1\ 目录,再把SDL解压缩到C:\msys\1.0\ffmpeg-1.2.1\ffmpeg-1.2.1\SDL-1.2.15目录。

进入SDL目录,分别执行

./configure --prefix=/usr

make

make install

完成SDL的安装。

SDL编译完成之后,生成的bin文件、include文件、lib文件存放在C:\msys\1.0\local\SDL目录下。

通过下面命令导入SDL环境变量.

export PATH="$PATH:/usr/local/SDL/bin:/usr/local/SDL/include/SDL:/usr/local/lib"

否则,在执行ffmpeg  configure时,SDL support项显示为no.(注:mingw默认根目录对应与windows下的C:\msys\1.0\目录,可以通过echo $PATH查看当前的系统路径)

4、安装yasm

到yasm官方网站,下载最新的1.2.0版本的yasm源码包Source .tar.gz
解压到C:\msys\1.0\ffmpeg-1.2.1\yasm-1.2.0目录。

进入yasm目录,分别执行:

./configure --prefix=/usr/local/yasm

make

make  install

并通过下面命令导入yasm环境变量。

export PATH="$PATH:/usr/local/yasm/bin"

5、安装ffmpeg

进入ffmpeg代码目录C:\msys\1.0\ffmpeg-1.2.1\ffmpeg-1.2.1\, 分别执行下面命令:

./configure --enable-shared --disable-static --enable-memalign-hack

make

make install

编译完成后,在C:\MinGW\msys\1.0的bin、include和lib文件夹下可以看到编译结果。

make install 之后,ffplay.exe 、ffmpeg.exe等可执行程序安装到C:\MinGW\msys\1.0\bin路径下。

执行ffplay后效果:

window下编译ffmpeg 比较简单的更多相关文章

  1. window下编译ffmpeg

    网上关于编译ffmpeg的帖子很多,我也尝试了很多次,但是很多都过不了,一部分原因是版本问题,还有就是有的路劲没说的太明白导致的,经过一天的摸索,最终编译好了,下面把编译方式写下来,希望对看到帖子的人 ...

  2. Linux下编译ffmpeg并用GDB调试

    1.在Ubuntu界面上调处命令行界面,最方便的方式是使用快捷键Ctrl+Alt+T. 2.安装SDL SDL是一个开源的多媒体开发库,可以设置图像和视频的绘制等操作.如果不安装SDL,FFMPEG将 ...

  3. 在Windows下编译FFmpeg详细说明

    MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...

  4. Android 环境下编译FFmpeg

    Android 环境下编译FFmpeg 开发环境:Ubuntu 12.04.2 LTS , android-sdk-linux, android-ndk-r8e 一 .X264 编译 1.    X2 ...

  5. 在Window下编译LibGeotiff(含Libtiff)

    核心提示:1.GeoTiff简介 GeoTiff是包含地理信息的一种Tiff格式的文件. 1.GeoTiff简介 GeoTiff是包含地理信息的一种Tiff格式的文件.Libgeotiff就是一个操作 ...

  6. ffmpeg windows下编译ffmpeg

    windows下编译ffmpeg 今天由于工作需求需重新编译ffmpeg,百度,goole了一大堆,看眼花缭乱的,但几乎都是三种方案,大部分都是直接转发,一字不漏,错误的缺文件的还是照转,可是问题都大 ...

  7. linux下编译ffmpeg 引入外部库x264

    Found no assembler Minimum version is nasm-2.13 If you really want to compile without asm, configure ...

  8. VoIP应用在Ubuntu 14.04下编译FFmpeg libX264及PJSIP

    PJSIP是一个开源的SIP协议栈.它支持多种SIP的扩展功能,可说算是最目前流行的SIP协议栈之一了.  它实现了SIP.SDP.RTP.STUN.TURN和ICE.PJSIP作为基于SIP的一个多 ...

  9. ubuntu 下 编译ffmpeg 3.1.1

    1,下载ggmpeg源码:http://ffmpeg.org/download.html 2.下载ndk ,百度 3.配置环境 3.1 编译FFMPEG时,出现了 ffmpeg yasm not fo ...

随机推荐

  1. CSS笔记---文字两边对齐

    <style> .box{ width: 1000px; height: 500px; background-color: #aa0000; margin:0 auto; } .teste ...

  2. 如何在IOS开发中在自己的framework中添加.bunble文件

    今天就跟大家介绍一下有关,如何在IOS开发中在自己的framework中添加.bunble文件,该文章我已经在IOS教程网(http://ios.662p.com)发布过来,个人觉得还是对大家有帮助的 ...

  3. 锋利的jquery-事件和动画

    1 注册事件的触发时机 在jquery中,$(window).load(function(){}) 注册在window下的事件等待页面所有资源加载完成(包括dome树的加载和图片视频的资源的加载) $ ...

  4. 借网上盛传2000w记录介绍多进程处理

    2000w的数据在网上搞得沸沸扬扬,作为技术宅的我们也来凑凑热闹.据了解网上有两个版一个是数据库文件另一个是CSV文件的,前者大小有好几个G后者才几百M.对于不是土豪的我们当然下载几百M的.至于在哪下 ...

  5. 深入mongoDB(1)--mongod的线程模型与网络框架

    最近工作需要开始研究mongoDB,我准备从其源代码角度,对于mongod和mongos服务的架构.sharding策略. replicaset策略.数据同步容灾.索引等机制做一个本质性的了解.其代码 ...

  6. PHP随机生成广告图片的实例 代码

    PHP随机生成广告图片: <?php /*  +------------------------------------------------------------------+  | Mi ...

  7. Python学习_算数运算函数

    记录以grades列表为例,分别定义输出.求和.平均值.方差和标准差函数,并输出相应的值 grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90 ...

  8. WPF 多线程处理(2)

    WPF 多线程处理(1) WPF 多线程处理(2) WPF 多线程处理(3) WPF 多线程处理(4) WPF 多线程处理(5) WPF 多线程处理(6) WPF UI 设计需要自动适应窗体大小,那么 ...

  9. (转载)linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结

    linux下tar.gz.tar.bz2.zip等解压缩.压缩命令小结 bz2 tgz z等众多压缩文件的压缩与解压方法,需要的朋友可以参考下 1) Linux下最常用的打包程序就是tar了,使用ta ...

  10. ARCGIS 10中添加excel点字段生产点shp文件的工具

    菜单栏中——文件——添加数据——添加XY数据——选择excel。 选择x,y和投影(注意这里投影应该是原数据的本身投影,不能直接选择你要转换的投影)完成。