返回列表 发帖

大哥大姐们,实在没办法了,帮帮忙啊。关于3GP、amrnb和amrwb编译问题。

我是完全按照论坛的精华帖子:
[转]在Windows下编译ffmpeg完全手册 来编译的,大部分库都能安装完成,可是,到了3GP库,却安装不了。我是这样做的:

http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip 解压到ffmpeg/libavcodec/amr_float
静态方式链接入FFmpeg
静态方式链接入FFmpeg
--enable-amr_nb解压到ffmpeg相应目录下后,编译ffmpeg即可


但是,当我加入命令 enable-libamr-nb(命令有改动ffmpeg --help 里面看到的),却说找不到amrnb,即使我把 上面的文件夹amr_float 换成 amrnb也是一样。看好多帖子,大都是跟这个一样的处理方法,可是我又不知道错在那里。各位帮帮忙了,刚刚初学,也没有人指点,真的不知道怎么办了。谢谢各位了。

解决方法如下

在config.h中添加
#define AMR_NB 1
#define AMR_WB 1
两个宏,然后执行make clean,再make ,重新生成的ffmpeg.exe就可以将AVI转换成3GP 格式了

TOP

那文章里面说到的faad怎么编译啊?

我按上面写的没办法编译啊...

TOP

我也遇到楼主那种问题了...

好象是新版FFMPEG的问题吧...不能识别amr_float和amrwb_float文件夹...

在libamr.h里面说到:
#include <amrnb/interf_dec.h>
#include <amrnb/interf_enc.h>

那么那2个3GP的编/解码器究竟放在哪好呢?

是不是要设置环境变量之类的呢?

TOP

我也遇到同样的问题了,提示我 libamrnb not found,也不知道该怎么解决

TOP

我是在linux下编译的失败的,但是同样的配置命令在windows下却成功了,难道是因为我装了暴风影音,它里面带了这些编解码器的缘故吗?

TOP

原帖由 xiaoyao888 于 2007-7-19 07:04 PM 发表
我是在linux下编译的失败的,但是同样的配置命令在windows下却成功了,难道是因为我装了暴风影音,它里面带了这些编解码器的缘故吗?


应该不会吧...

明天试试更新新的AMR版本试试...

TOP

我是楼主,我的问题解决了,现在给上面兄弟一个提示:去下载一个新的amr-nb,amr-wb包,是库文件,不是源码.
amr-wb:http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.1.tar.bz2
amr-nb:http://ftp.penguin.cz/pub/users/utx/amr/amrnb-6.1.0.4.tar.bz2
然后 configure make make install 就可以了.
其中如果碰到说是找不到unzip,google搜索下就可以了,还有就是需要wget,有这两个才能编译出来.
以前说的哪个拷贝到指定目录的方法不行,不知道是不是版本问题.望高手解答.

TOP

果然,楼主真高人,管理员把这个问题补充到置顶的那个帖子里吧,那个置顶的帮助贴是不是也该更新了,现在configure的参数都变了。

我看安装时是在 /usr/local/include 下建了两个文件夹,是amrnb和amrwb不知道是不是直接下载复制到这下面也可以呢?
其实它就是下载了26104-601和26204-700

TOP

还有一个问题是amr-nb,amr-wb包在configure时要指定路径/usr 不然它会放到/usr/local下,这样执行ffmpeg命令时它会提示找不到libamrnb.so.2

TOP

感谢各位,已在置顶贴中加了一条补充,连接到这个帖子,方便后来者。

http://bbs.chinavideo.org/viewth ... ra=page%3D1#pid2102

TOP

原帖由 ysjjsj 于 2007-7-20 10:28 AM 发表
我是楼主,我的问题解决了,现在给上面兄弟一个提示:去下载一个新的amr-nb,amr-wb包,是库文件,不是源码.
amr-wb:http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.1.tar.bz2
amr-nb:http://ftp.penguin.cz/p ...


你能发个可以编译的UNZIP给我吗?

我一直编译不过...

[ 本帖最后由 gdgzboy 于 2007-7-20 04:21 PM 编辑 ]

TOP

回复 #8 ysjjsj 的帖子

我按照你说的做了,但是make的时候却说:
libamr.c: In function `amr_wb_decode_frame':
libamr.c:666: error: `block_size' undeclared (first use in this function)
libamr.c:666: error: (Each undeclared identifier is reported only once
libamr.c:666: error: for each function it appears in.)
make[1]: *** [libamr.o] Error 1
make[1]: Leaving directory `/work/bond/ffmpeg/libavcodec'
make: *** [lib] Error 2


怎么会这样啊???

TOP

这样做,好象在msys里面,好象要少很多文件啊。没法编译。
我下载了wget后,在msys里面编译都通不过,提示缺少一些网络方面的接口。

TOP

谢谢各位, 我的也编译过去了.
可能是因为公司是用代理上网的原因, 调用wget时,不能connect上, 当然就不能下载源文件了. 我把wget要下载的文件下到本地, 再调用make时,就不用下载,就直接编译,完成了.

TOP

楼主,问题到底有没有解决啊?我有碰到这样的问题哦,谁帮我一下哦

TOP

楼上的可以试试装一下 msysDTK

TOP

兄弟啊..按照楼上说的方法,我下载了unzip,wget,然后make的时候出错..
楼主救命啊...

TOP

原帖由 ysjjsj 于 2007-7-20 10:28 AM 发表
我是楼主,我的问题解决了,现在给上面兄弟一个提示:去下载一个新的amr-nb,amr-wb包,是库文件,不是源码.
amr-wb:http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.1.tar.bz2
amr-nb:http://ftp.penguin.cz/p ...


楼主关于amr-wb跟amr-nb这2个包能不能说的详细点,下载了也不知道编译到哪里去。我的是windows系统,其他的环境什么也都好了,就差这2样了。
拜托了!~

TOP

回复 #2 xianggali 的帖子

感谢,的确用二楼的方法就搞定了!

TOP

返回列表