目录

[隐藏

[编辑]环境与软件

win7 32位

打包下载链接:http://pan.baidu.com/s/1c0deSSg 密码:cp1g

[编辑]第一步:安装MinGW

安装mingw-get-inst-20120426.exe(安装时选中c++编译器和Mingw Developer Toolkit,其它默认)

[编辑]第二步:配置编译环境

将yasm-1.2.0-win32.exe更名为yasm.exe后直接放在 /usr/local/bin(windows路径为C:\MinGW\msys\1.0\local\bin)

将下面3个压缩包里bin目录中的文件解压后放在/usr/local/bin下

glib_2.28.8-1_win32.zip:GLib (Run-time)

gettext-runtime_0.18.1.1-2_win32.zip:gettext-runtime (Run-time)

pkg-config_0.26-1_win32.zip:pkg-config (tool)

配置好后,效果如下:

[编辑]第三步:配置SDL

为了编译出ffplay,还需要配置SDL

下载编译好的SDL库文件SDL-devel-1.2.15-mingw32.rar并解压,

接下来无论是下载的还是自己编译的,都需要修改bin目录下的 sdl-config文件:

把 prefix=/usr/local/cross-tools/i686-w64-mingw32该成: prefix=c:/MinGW

并去掉2处-mwindows

解压后,将bin,include和lib目录下的文件分别拷贝到/usr/local对应目录下(注:直接拷贝include目录下的SDL文件夹),

为了编译时ffmpeg能识别SDL并开启 SDL support,需要将bin,include和lib目录下的文件再拷贝一份到C:\MinGW\的对应目录中。

[编辑]第四步:编译

下一步开始编译,不编译shared版本

注:软件安装时统一加上--prefix=/usr/local

[编辑]编译faac

./configure --prefix="/usr/local"--enable-static--disable-shared --with-mp4v2=no makemakeinstall

[编辑]编译fdk-aac

configure FFmpeg时需要加上--enable-libfdk_aac

./configure --prefix="/usr/local"--disable-sharedmakemakeinstall

[编辑]编译x264

./configure --prefix=/usr/local--enable-static--enable-sharedmakemakeinstall

[编辑]配置ffmpeg

如果未配置SDL,需要添加--disable-ffplay,下面内容可以全部复制后粘贴到命令行中。

PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"LDFLAGS="-L/usr/local/lib"CFLAGS="-I/usr/local/include" ./configure --enable-gpl \   --disable-optimizations--disable-asm--enable-libfaac --enable-libfdk_aac \   --enable-libx264--enable-nonfree--enable-static--disable-shared

去掉-enable-shared --prefix=/usr/local选项,并加上--disable-optimizations --disable-asm选项

不用make

[编辑]第五步:利用eclipse编译ffmpeg

eclipse运行需要先安装JRE;

打开eclipse:

File-New-C project,选择Makefile project下的Empty Project.右侧选Mingw GCC

再拷贝上面configure之后的ffmpeg源码到工程根目录下,F5刷新后选择Project-Build All.

[编辑]第六步:调试FFmpeg

右键Binaries下的ffmpeg_g.exe选择Debug as->Local C/C++ Application,选择gdb/mi

设置调试参数需要先执行一遍上面的操作,然后右击ffmpeg_g.exe选Debug as-> Debug Configuration,

在Arguments选项卡的Program arguments方框里可以输入调试参数。

如果调试时ffmpeg导常终止,不能进入Main函数中,如下图所示:

请将x264动态链接库(C:\MinGW\msys\1.0\local\bin\libx264-129.dll)拷贝到工程根目录下。

再次调试结果如下:

在Windows下利用Eclipse调试FFmpeg的更多相关文章

  1. 在Ubuntu下利用Eclipse调试FFmpeg《转》

    参考原贴,其中编译命令有略微改动. 第一步:准备编译环境 #sudoapt-get update #-dev libspeex-dev libtheora-dev libtool libva-dev ...

  2. 在Ubuntu下利用Eclipse调试FFmpeg

    [编辑]第一步:准备编译环境 .tar.bz2 -2245/ ./configure -linux-i586.tar.gz 解压后得到jre1.7.0_17目录 最后通过java -version检查 ...

  3. 在CentOS下利用Eclipse调试FFmpeg

    所需软件 64位软件打包下载链接:http://pan.baidu.com/s/1i3B08Up 密码:o50u https://yunpan.cn/cBKDSbrGDgBvz  访问密码 1f55 ...

  4. windows下使用eclipse调试C程序

    一.环境描述 Eclipse IDE for C/C++ Developers version 4.4.0 MinGW  gcc/g++ version 4.8.1;gdb version 7.6.1 ...

  5. 在Windows下利用MinGW编译FFmpeg

    目录 [隐藏]  1 环境与软件 2 第一步:安装MinGW 3 第二步:配置编译环境 4 第三步:配置SDL 5 第四步:编译 5.1 编译faac 5.2 编译fdk-aac 5.3 编译x264 ...

  6. Windows下利用Chrome调试IOS设备页面

    本文介绍如何在 Windows 系统中连接 iOS设备 并对 Web 页面进行真机调试 必须前提 iOS设备.数据线 Node.js 环境 Chrome 浏览器 环境准备 安装Node环境 参考Nod ...

  7. 在Ubuntu下利用Eclipse开发FFmpeg配置小结

    首先需要编译FFmpeg得到头文件和lib文件,参见:在Ubuntu下编译FFmpeg 选择File-New-C Project 选择Executable下的Empty Project,右侧选择Lin ...

  8. windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境

    windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境   http://rongmayisheng.com/post/windows%E4%B8%8B%E7%94%A ...

  9. eclipse下使用cygwin的方法(Windows下用eclipse玩gcc/g++和gdb)

    明天就回国了,今晚回国前写写如何配置eclipse和CDT.这个配置方法网上讨论不是很多,可能用的人少,毕竟Windows上写C++程序多数喜欢VS,即使写的是Linux程序,很多人仍然会用VS(说只 ...

随机推荐

  1. 织梦dedecms如何快速使用拼音首字母做栏目名称

    织梦默认使用拼音为保存目录的时候使用的是中文全拼,当遇到栏目名称比较长的时候目录名称看起来有点冗长,这时候大多数站长喜欢使用拼音首字母作为栏目的保存目录,那么有没有什么快速的办法能让我们快速的使用首字 ...

  2. 关于thinkphp 开发的网站部署问题

    公司一个网站用thinkphp 开发的,由wamp环境移植到lamp环境 出现错误.提示无法生成缓存文件. 原因是thinkphp 的一些目录需要重新生成,所以将一个新的thinkphp 核心包应用后 ...

  3. CF440C

    C. One-Based Arithmetic time limit per test 0.5 seconds memory limit per test 256 megabytes input st ...

  4. 超常用的PHP正则表达式收集整理

    以下就是对超常用的PHP正则表达式进行的收集整理,为了方便大家更快更好的掌握php正则表达式. 一.表单验证匹配验证账号,字母开头,允许 5-16 字节,允许字母数字下划线:^[a-zA-Z][a-z ...

  5. TopCoder SRM 590

     第一次做TC,不太习惯,各种调试,只做了一题...... Problem Statement     Fox Ciel is going to play Gomoku with her friend ...

  6. thinkphp中F方法

    我们已经了解了ThinkPHP中的S方法的用法,F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我 ...

  7. 小白科普之JavaScript的函数

    一 概述 1.1 函数声明 (1)function命令 函数就是使用function命令命名的代码区块,便于反复调用.这种声明方式叫做函数的声明(Function Declaration). func ...

  8. android edittext 去边框

    EditText的background属性设置为@null就搞定了:android:background="@null" style属性倒是可加可不加 附原文:@SlumberMa ...

  9. 暑假热身 A. GCC

    GCC编译器是一个由GNU项目维护的编译系统,它支持多种编程语言的编译.但是它并不包含数学运算符“!”.在数学中,这个符号代表阶乘.表达式n!的意思是从1到n的所有整数的乘积. 例如,4!=4*3*2 ...

  10. 【python】在python中调用mysql

    资料:http://www.runoob.com/python/python-mysql.html 例子: 假设有数据路HTMLHASH, 其中有表htmlhash, 表中包括两个varchar(10 ...