Ubuntu平台下载和编译FFmpeg


FFmpeg是Linux下一个开源的的音视频解决方案,采用LGPL或GPL许可证(依据选择的组件)。
 
FFMpeg的官方网站是 http://www.ffmpeg.org/,官网目前最新版本的源码2.2.1。
源码可以有多种下载方式,对Android开发者而言,git方式无疑是最方便的,使用下面的命令就可以下载完整的源码:
git clonegit://source.ffmpeg.org/ffmpeg.git ffmpeg
 
ffmpeg的编译方式和大多数开源的Linux软件类似,非常简单,三条命令就完成了:
./configure
make
sudo makeinstall
 
但是configure命令稍微复杂一点,这个命令用来配置编译模块,有很多参数,在Linux下比较简单的参数如下:
configure--prefix=/usr/local/ffmpeg --enable-shared --disable-yasm--enable-ffplay
 
其中:
--prefix指定了执行安装命令(make install)时的安装目录。
--enable-shared指定编译出动态库
--disable-yasm指定不编译yasm,如果不指定这条,会保错。
--enable-ffplay指定编译ffplay模块,不加也可以。
 
源码目录下的configure是一个脚本文件,如果需要知道到底支持哪些参数,可以打开这个文件看一看。另外这个文件运行的结果是生成了config.mak文件,如果我们需要检查某个模块是否会编译,打开这个文件查看相应模块的名称前是否有“!”号,没有则说明会编译出来。
 
这里要注意的是,如果要编译出ffplay模块(FFMpeg自带的播放器),需要在Ubuntu下先安装sdl模块,命令如下:
sudo apt-getinstall libsdl1.2-dev
如果不安装sdl,即使加上了参数--enable-ffplay也不会打开ffplay的编译开关。
 
make 和 sudo makeinstall 执行完成后在/usr/local/ffmpeg目录下会生成bin目录和lib目录,需要把它们加入到ubuntu的路径中。打开~/.bashrc文件,加入下面两行:
exportLD_LIBRARY_PATH=/usr/local/ffmpeg/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/ffmpeg/bin:$PATH
 
目录bin下有四个可执行文件:
ffplay:一个简单的音视频播放器。
ffmpeg:用于格式转换、解码或编码的工具。
ffprobe:用来获得每天文件的信息。
ffserver:用来搭建流媒体服务器。
 
目录lib下有七种库文件:
ibavformat:用于各种音视频封装格式(音频文件)的生成和解析。
libavcodec:用于各种类型图像、声音和视频的编解码。
libavdevice: 封装了和底层设备打交道的函数。
libavfilter:包括了图像处理中的各种滤镜效果。
libavutil:包含一些公共的函数。
libswscale:包含了图像,视频缩放、色彩映射转换等函数。
libswresample: 包含了调整声音采用率的函数。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值