您的位置:首页 > 其它

ubuntu编译x264与ffmpeg--总结

2013-01-22 18:14 141 查看
如果是H.264与ffmpeg的大牛们,就可以闪过了,免得浪费你们时间,小弟是还不能算入门的新手呢,对调试了半天的过程做一个总结。

首先介绍一下我所编译的环境:

1.我是用的虚拟机里面的ubuntu11.10版本系统。

2.x.264是最新版的。

3.ffmpeg的版本是ffmpeg-1.0.1

在网上找了各种文章,总是有各种不同的错误,最后还是在官方网站里面找到了一篇文章,具体的地址为:https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide,其实按照这篇文章基本上就可以成功的完成安装了,小弟我再罗嗦一句,对于里面的fdk-acc、libvpx、opus可是视个人的需要安装,我自己都没有安装。

具体的步骤如下:

1.移除已经存在的各种包:(如果没有安装,可以越过本步骤)

$ sudo apt-get remove ffmpeg x264 libav-tools libvpx-dev libx264-dev yasm

2.安装一部分x264与ffmpeg所依赖的包

这要分ubuntu的两个版本

2.1桌面版:

$ sudo apt-get -y install autoconf build-essential checkinstall git libass-dev libfaac-dev \

libgpac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \

librtmp-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev \

libx11-dev libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev

2.2服务器版:

$ sudo apt-get -y install autoconf build-essential checkinstall git libass-dev libfaac-dev \

libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev \

libtheora-dev libtool libvorbis-dev pkg-config texi2html zlib1g-dev

3.安装yasm

$ wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
$ tar xzvf yasm-1.2.0.tar.gz

$ cd yasm-1.2.0

yasm-1.2.0$ ./configure

yasm-1.2.0$ make

yasm-1.2.0$ sudo checkinstall --pkgname=yasm --pkgversion="1.2.0" --backup=no --deldoc=yes --fstrans=no --default

4.安装x.264

cd ~

$git clone --depth 1 git://git.videolan.org/x264(如果自己已经有了则可以不用再次下载,下一步直接跳到你的264所在的目录下面)

$cd x264

x264$ ./configure --enable-static

x264$ make

x264$ sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes \

--fstrans=no --default

5.安装ffmpeg

cd

$git clone --depth 1 git://source.ffmpeg.org/ffmpeg(如果自己已经有了则可以不用再次下载,下一步直接跳到你的ffmpeg所在的目录下面)

$cd ffmpeg

ffmpeg$ ./configure --enable-gpl --enable-libass --enable-libfaac --enable-libfdk-aac --enable-libmp3lame \

--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora \

--enable-libvorbis --enable-libvpx --enable-x11grab --enable-libx264 --enable-nonfree --enable-version3

ffmpeg$ make

ffmpeg$ sudo checkinstall --pkgname=ffmpeg --pkgversion="7:$(date +%Y%m%d%H%M)-git" --backup=no \

--deldoc=yes --fstrans=no --default

ffmpeg$ hash -r(此步我不知道什么用,我没执行也可以,如果哪位知道的说一下。)

这样就安装完成了,就可以用了。

下面我把我自己的运行例子的步骤也写在这,在网上没有看见。其实也不难。

我测试所用的视频序列的名字为:CREW_704x576_30_orig_01.yuv,顺便贡献一个可以下载测试视频序列地址:http://blog.sina.com.cn/s/blog_5fd6a0e50100dn0k.html

1.首先利用x264编码视频序列(对于x264的其他编码参数可以参见:x264 --help)

./x264 --qp 30 --open-gop -o crew.264 CREW_704x576_30_orig_01.yuv

这样得到的crew.264序列我们就利用ffmpeg进行解码得到视频。

2.利用ffmpeg解码得到视频(对于x264的其他编码参数可以参见:man ffmpeg)

ffmpeg -i crew.264 crew.mp4

这里编码出来的crew.mp4就可以用播放器播放了。

这是我首次记录自己学习过程,还希望大家不要嫌弃,当然,如果各位发现问题了,我欢迎各位提出!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: