登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> 程序员学前班[不再更新,只读] >> 主题: ffmpeg Eclipse cdt Wascana     [回主站]     [分站链接]
标题
ffmpeg Eclipse cdt Wascana
clq
浏览(0) + 2010-11-15 15:57:11 发表 编辑

关键字:

ffmpeg Eclipse cdt Wascana

据说这个组合不错.

clq
2010-11-15 16:07:03 发表 编辑

http://hi.baidu.com/howlwolf/blog/item/b6747e3e24efcd3d71cf6c2d.html
--------------------------------------------------
这两天研究了一下ffmpeg,对于如何编译,在网上看了很多资料(中文和英文都有,中文资料很少,而且基本都是直译)。我按照这些教程编译来编译去,都出现很多莫名的错误,比如Permission denied,Lame not found,Gcc is unable to create an executable file等。
我将我最后编译通过的过程记下来,如下:
1、准备:
    1)下载svn软件,网址:http://tortoisesvn.sourceforge.net/downloads。我下载的 TortoiseSVN-1.3.5.6804-svn-1.3.2.msi,当前          最新版;
    2)下载Dev-cpp软件,有着MinGW环境,不用自己去MinGW主页一个个下,MinGW上的版本实在是多,没打算去详细研          究,网址:http://www.bloodshed.net/。我下载的 Dev-C++ 5 Beta 9.2 (4.9.9.2),当前最新版。
    3)下载Msys软件,网址:http://www.mingw.org/msys.shtml。我下载的MSYS-1.0.11-2004.04.30-1.exe,当前最新版。
    4)安装svn软件,没什么好说明的,安装后需要重启动。
    5)从svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk上checkout出ffmpeg。

2、安装:
    1)首先安装Dev-Cpp软件,没什么好说明的,安装完后在系统变量path中增加bin的路径,我的是:C:/Dev-Cpp/bin。
    2)安装Msys软件,一步步来,最后会出现提示设置,依次为y,y,C:/Dev-Cpp。“C:/Dev-Cpp”为你安装的MinGW的路              径,Msys需要映射到C:/Dev-Cpp/bin,能找到gcc等exe。

3、编译ffmpeg:
    1)将通过svn checkout出的ffmpeg导入到Msys/home下,我的文件夹命名为ffmpeg。
    2)启动Msys,在Msys中输入cd /home/ffmpeg。
    3)输入./configure --enable-memalign-hack --enable-mingw32 --disable-debug --enable-small。
    4)输入make。

4、大功告成:
    在Msys/home/ffmpeg目录下你会发现编译好的ffmpeg.exe文件。

转载请注明作者:howlwolf。

附注:加上lame尚没有编译成功。
msys环境下./configure --enable-gpl --enable-memalign-hack --enable-mingw32 --enable-mp3lame --extra-cflags=-I/include --extra-ldflags=-L/lib

--------------------------------------------------
http://zh.efreedom.com/Question/1-248828/%E7%BC%96%E8%AF%91%E5%9C%A8-Windows-%E4%B8%8A%E4%BD%BF%E7%94%A8-Wascana-FFMPEG

准备环境

在安装 Wascana 后,您需要更新各种 MinGW 和下面的文件包。下载并解压缩 (可以从 MinGW 网站下载他们) 以下:

下面的软件包:

    * bash 3.1
    * coreutils 九十七
    * m4 1.4.7
    * 使 3.81

MinGW 包:

    * w32api 3.12
    * MinGW 运行时 3.15



clq
2010-11-15 16:15:45 发表 编辑

http://topic.csdn.net/u/20070924/18/e467693f-155b-4e57-9553-dbd5423cb6ae.html

ffmpeg.c可以在windows下使用Dev-c++来编译吗?[问题点数:60分,结帖人:glacierful]

    *
    * glacierful
    *
    *
    * 等 级:
    * 结帖率:98.21%
    *

   
楼主发表于:2007-09-24 18:23:02
最近一直在看ffmpeg中自带的那个ffmpeg.c示例,感觉还是挺有收获的。但只看不能调试还是太难受了。所以,就想试试是否可以编译。
装了Dev-c++,建了一个空项目,然后把ffmpeg.c加进项目,设置了包含文件的路径。开始编译,第一个编译错误就提示说找不到config.h头文件:config.h:   No   such   file   or   directory。

Dev-c++是使用的gcc的编译器,是支持C99标准的,我想应该可以在windows下编译ffmpeg的源代码吧。
不知道大家有否在windows下编译成功的经验? 

 

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

回复次数:12

    * CoffeeCN用户头像
    * CoffeeCN
    * (_++["J!Mpwf!Zpv)
    *
    * 等 级:
    *

   
#1楼 得分:0回复于:2007-09-24 18:57:31
不能
ffmpeg要用MSys+MinGW编译

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

精华推荐:【微软面试题】请计算出1的个数

    * CoffeeCN用户头像
    * CoffeeCN
    * (_++["J!Mpwf!Zpv)
    *
    * 等 级:
    *

   
#2楼 得分:25回复于:2007-09-24 19:05:05
我以前用ffmpeg的H264   Codec时候在windows中编译过
可以用Dev   c++的编码库,但是要在MSys环境中编译,CYGWIN也不行
如果Lz要找资料可以去   ffmpeg工程组论坛   上找,有如何在windows下编译的文章

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

精华推荐: 一段小代码,是否出现了野指针? 请大家发表一下对野指针理解!(希望能Show出代码)

    * agaric用户头像
    * agaric
    * ( 椒盐蘑菇 - 8$ 一盘儿)
    *
    * 等 级:
    *

   
#3楼 得分:20回复于:2007-09-24 23:04:25
应该是可以的,它其实就是gcc的win32版本
但你得完成一些其他的工作
1.设置好工程环境:   头文件,链接库地址等等
2.一个正确的MAKE文档,包括需要编译的源文件,以及编译选项,预定义的宏等等。
3.可能需要修改部分代码,封装一些根具体平台相关的函数

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

精华推荐:大专生两年20万代码——就是我的文凭

    * glacierful用户头像
    * glacierful
    *
    *
    * 等 级:
    *

   
#4楼 得分:0回复于:2007-09-25 09:45:36
to   agaric(蘑菇星星)

也就是说ffmpeg它还是调用了一些linux的API函数的,如果要在windows下边编译,那就需要把这些函数换成windows下的相关函数。

不知道我的理解对不对?

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

精华推荐:多模式匹配问题

    * whw123456用户头像
    * whw123456
    *
    *
    * 等 级:
    *

   
#5楼 得分:5回复于:2007-09-25 11:03:13
友情帮顶~~

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

精华推荐:我画的素描,看一眼给5分!

    * lbaby用户头像
    * lbaby
    * (成为诗人,是我的梦想)
    *
    * 等 级:
    *

   
#6楼 得分:10回复于:2007-09-25 12:23:21
回复人:glacierful()   (   一级(初级))   信誉:100   2007-09-25   09:45:36   得分:0

to   agaric(蘑菇星星)

也就是说ffmpeg它还是调用了一些linux的API函数的,如果要在windows下边编译,那就需要把这些函数换成windows下的相关函数。

不知道我的理解对不对?

-----------------------------------
使用cygwin的原因就是,这些函数调用cygwin可以提

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * agaric用户头像
    * agaric
    * ( 椒盐蘑菇 - 8$ 一盘儿)
    *
    * 等 级:
    *

   
#7楼 得分:0回复于:2007-09-25 12:58:08
to   glacierful

是這樣,雖然說不是所有的函數都可以在windows上找到解決的方法,但我想,對于ffmpeg這種庫,應該是可以的

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * CoffeeCN用户头像
    * CoffeeCN
    * (_++["J!Mpwf!Zpv)
    *
    * 等 级:
    *

   
#8楼 得分:0回复于:2007-09-25 15:05:10
cygwin编译的严重依赖dll,一般不使用cygwin,而MSys用的比较多

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * CoffeeCN用户头像
    * CoffeeCN
    * (_++["J!Mpwf!Zpv)
    *
    * 等 级:
    *

   
#9楼 得分:0回复于:2007-09-25 15:07:39
to   agaric(蘑菇星星)

能否介绍下如何在makefile设置编码库路径,这样vc2003、和vc2005也能用了
学习了

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * evoloyeu用户头像
    * evoloyeu
    * (evoloyeu)
    *
    * 等 级:
    *

   
#10楼 得分:0回复于:2010-05-19 16:18:43
是可以的,我正两天也正在弄这个,我已经编译成果了,并且还能debug。
但是我用的是Eclipse+CDT+GDB
ffmpeg用的0.5版本

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * szuzsq用户头像
    * szuzsq
    * (兮)
    *
    * 等 级:
    *

   
#11楼 得分:0回复于:2010-10-27 00:36:08
^1下
mark

    * 对我有用[0]
    * 丢个板砖[0]
    * 引用
    * 举报
    * 管理
    * TOP

    * szuzsq用户头像
    * szuzsq
    * (兮)
    *
    * 等 级:
    *

   
#12楼 得分:0回复于:2010-10-28 16:52:41
刚好我调试过ffmpeg.0.5下的ffmpeg.c
1.安装好环境:eclipse +cdt +mingw+msys(这个网上很多,注:可能还需要mingw_gdb)
2.在window下用mingw下编译ffmpeg(这个网上也很多)。注:只做到./configure这一不,以后的make,make install不要做了,因为要在eclipse下编译调试
3.在eclipse下新建标准make c工程,目标目录在前面提到的ffmpeg.0.5那里。则eclipse会导入内容,且可以编译
4.设置断点
5.设置调试参数:运行程序选eclipse前面编译出来的ffmpeg_g.exe(注ffmpeg.exe不带调试信息);参数随意,如:-i "a.avi" "a.flv"
6.run
具体细节再交流40678884


clq
2010-11-15 20:45:08 发表 编辑

我自己的方法比较简单,先用 mingw 官方的网络安装程序安装完整版本(选择完整全部安装),我用的这个是 mingw-get-inst-20101030.exe 反正您取官网上最新的那个就行了.(为什么象 cygwin 一样搞这种网络安装方式,真蠢哪,至少要同时提供一个完整安装版嘛.这个软件虽然了不起,不过不代表这种做法不 SB 同样 SB 的还有 ffmpeg 本身,为什么故意写得这么难编译?都是开源为什么 apache 的源码这么好编译?没有什么原因,就是这帮 SB 并不想让太多人知道怎么做这类东西,减少竞争的对手.说实在的我就瞧不起这帮做开源的.)

然后执行两个命令就可以得到 ffmpeg.exe 了.
先进入 C:\MinGW\msys\1.0 执行 msys.bat 然后在其中的命令行入输入以下两个命令,然后开始漫长的等待吧,我的机器 30 分钟吧,公司机器可能只要 10 分钟.

./configure --enable-memalign-hack --disable-debug --enable-small
make

不过如何生成那几个库的 dll 文件呢?

clq
2010-11-15 21:03:39 发表 编辑

不要象网上的教程一样单独安装 MSYS 那样很麻烦,直接用 mingw安装完就行.
另外 "--enable-mingw32" 已经过时了,要用 "-target-os=mingw32"

clq
2010-11-15 21:53:20 发表 编辑

这样可以编译出 dll

$ ./configure --enable-memalign-hack --disable-debug --enable-small target-os=mingw32 --disable-static --enable-shared

make

还有的编译选项
./configure --help


clq
2010-11-16 12:16:01 发表 编辑

默认的 ffmpeg 居然是不带 h264 的, 要弄个 x264 的代码先编译好后再给 ffmpeg 用.好在 x264 的编译很容易:
同样是 msys 命令行下
./configure --disable-asm --enable-shared --disable-pthread
make

其中 --disable-pthread 是必须的,而 asm 那个是因为我没有编译 yasm 据说也要另外下载, --enable-shared 和 ffmpeg 中的一样,表示生成 dll

然后再编译 ffmpeg 时要加上 --enable-libx264 --enable-gpl 其中那个 gpl 的是附加 x264 后必须带有的. 但可惜的是这样会报 "ERROR: libx264 not found"
我又加了 ld 路径,结果还是不行. mmd 按提示看了 config.err 原来是找不到 x264.h , 怎么在 configure 时加入 include 目录呢, configure --help 都没说.结果在
http://www.ffmpeg.com.cn/index.php/Ffmpeg%E7%BC%96%E8%AF%91FAQ%E9%9B%86
看到了 "--extra-cflags=-I/opt/ffmpeg/include" 原来大爷要这样做啊. 这帮开源的真不是人啊.好了,最后的命令行是这样的:

$ ./configure --prefix=/home/ffmpeg-0.5.3/libavcodec --enable-memalign-hack --d
isable-debug --enable-small target-os=mingw32 --disable-static --enable-shared
--enable-libx264 --enable-gpl --extra-ldflags=-L/home/x264 --extra-cflags=-I/home/x264

其中 "/home/x264" 对应到的实际目录是 "C:\MinGW\msys\1.0\home\x264"  唉,sb 呀. 看到这里你们明白为什么 linux 吹了这么久搞不定 windows 还被 mac 超过了没,现在最流行的 linux 是安卓,可惜也是 google 公司出的. 靠这帮 x 省省吧.



clq
2010-11-17 16:40:14 发表 编辑

我还发现有 avcodec_find_encoder 能找到 CODEC_ID_H264 但 avcodec_open 找不开它的问题,网上的解释真 xx 多呀,都不对,其实是因为 x264 的版本不对,对于我的情况来说是太高了.在这里

ftp://ftp.videolan.org/pub/videolan/x264/snapshots/

下载 x264-snapshot-20081015-2245.tar.bz2 刚好能与 ffmpeg-0.5.3 相配合. !@#$$!! 晕吧. 倒是可以试一下最新版的 ffmpeg 能否支持最新的 x264 .

另外,俺这个组合的 CODEC_ID_H264 效果与 CODEC_ID_MPEG4 相同,不知道是哪里还有问题?

clq
2010-11-17 16:50:33 发表 编辑

不对,还是 264 压缩比高点,不过编码器查看时都是 V_MPEG4 不过后面有不同的字符.


总数:8 页次:1/1 首页 尾页  
总数:8 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1