linux编译ffmpeg(一)

linux编译ffmpeg(一)

网上有很多ffmpeg编译的方法,但乱七八糟的比较多,今天编译了一下,下面是步骤,需要的可以看下。


一:需要的库

     可以上官网上下载最新版,不想上官网的可以下载下面的库,然后将下面的库解压并编译 “./configure” 。

1:faac-1.28.tar

http://download.csdn.net/detail/zhuweigangzwg/8463553

2:ffmpeg-2.5.3

http://download.csdn.net/detail/zhuweigangzwg/8463563

3:lame-3.99.5

http://download.csdn.net/detail/zhuweigangzwg/8463569

4:x264-0.142.x

http://download.csdn.net/detail/zhuweigangzwg/8463571

5:yasm-1.2.0

http://download.csdn.net/detail/zhuweigangzwg/8463575



再编译ffmpeg之前先编译如下库:

1: faac(如果上面的faac-1.28编译的时候有错误可以如下,否则cd到目录中编译)
# wget http://downloads.sourceforge.net/faac/faac-1.26.tar.gz
# tar xvfz faac-1.26.tar.gz
# cd faac 
# ./bootstrap 
# ./configure 
# make 
# make install

2: libmp3(如果上面的lame-3.99.5编译的时候有错误可以如下,否则cd到目录中编译
# wget http://downloads.sourceforge.net/lame/lame-3.97.tar.gz
# tar xzf lame-3.97.tar.gz
# cd lame-3.97 
# ./configure 
# make 
# make install

3:libX264如果上面的x264编译的时候有错误可以如下,否则cd到目录中编译
# /usr/local/bin/git clone git://git.videolan.org/x264.git x264
# cd x264 
# ./configure  --enable-shared --disable-asm 
# make 
# make install

可参考:http://www.cnblogs.com/littlehb/p/3914645.html



二:编译ffmpeg

cd到解压的ffmpeg,然后输入命令
./configure --enable-gpl --enable-nonfree --disable-shared --enable-static 
--enable-debug --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib  --enable-postproc --enable-bzlib --enable-zlib 
--enable-parsers --enable-libx264 --enable-libmp3lame --enable-libfaac  
 --enable-pthreads --extra-libs=-lpthread --enable-encoders --enable-decoders   --enable-avfilter --enable-muxers --enable-demuxers

make &&make install

三:遇到问题


可以看下这个链接:http://blog.chinaunix.net/uid-26212859-id-3256667.html
如果共享库文件安装到了/lib或/usr/lib目录下, 那么需执行一下ldconfig命令
ldconfig命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*), 进而创建出动态装入程序(ld.so)所需的连接和缓存文件. 缓存文件默认为/etc/ld.so.cache, 此文件保存已排好序的动态链接库名字列表. 

编辑/etc/ld.so.conf文件,在新的一行中加入库文件所在目录;例如所在目录在/usr/local/lib,在vim /etc/ld.so.conf 换一行直接添加:/etc/ld.so.conf。

运行ldconfig,以更新/etc/ld.so.cache文件;



2:编译的那些库(包括ffmpeg)默认会产生在/usr/local/bin和  /usr/local/include目录下 ,如果想改变路径可以用:
--prefix来改变路径.

3:ffmpeg/x264:ERROR: libx264 not found

可以看这个链接:http://blog.sina.com.cn/s/blog_54b5ea250100r53o.html

只要在配制configure时,添加额外的include/link路径应该能够解决问题,即增加开关:
       --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib
这个需要根据你x264编译、安装的实际配制修改

四:测试结果
 下面命令是利用rtmp服务器和ffmpeg转码率的命令,其他命令上网上自己查找。
./ffmpeg -i rtmp://test1.com:1935/myapp/teststream  -report -acodec libfaac -vcodec libx264 -profile:v main -level:v 31 -preset ultrafast   -r 25 -b:v 600k  -f flv rtmp://test1.com:1935/myapp/newstream



ffmpeg linux 下载地址:   http://johnvansickle.com/ffmpeg/    可以下载编译好的ffmpeg.

交流请加QQ群:62054820

QQ:379969650

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值