ubuntu编译支持h265的ffmpeg,ffplay

ffmpeg2.8.1

x264-snapshot-20170521-2245

x265-3.2

SDL-1.2.15

Ubuntu14.04

 

1.ffmpeg扩展h265,参看金山云的github。修改了三个文件。

2.x265编译很简单,弹出一个dos窗口的时候,先按c,再按g,“一直下一步”。没什么好说的,网上查。推荐是static编译

3.SDL编译,我的版本是2.8.1所以,不支持SDL2,所以要下载SDL1的包编译。

为了生成ffplay,需要做的工作:

4.sudo apt-get install libasound2-dev libpulse-dev  为了ffplay播放有声音

5.sudo apt-get install libx11-dev

   sudo apt-get install xorg-dev   是ffplay播放时,SDL依赖的图形库

6.SDL需要修改下src/video/x11/SDL_x11sym.h ,要注释两行代码

#ifdef LONG64  
SDL_X11_MODULE(IO_32BIT)  
//SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)  
//SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)  

#endif
7. 开始SDL编译,脚本是./configure --disable-alsa

最后的alsa disable非常重要,否则ffplay播放声音卡顿,而且疯狂弹日志

8.ffmpeg编译必须加上--enable-sdl ,否则ffplay是不会生成的。

ffplay会不会生成不必等make完了才知道,可以直接看configure结束后,

会打印enable programes,如果没有ffplay,说明你的环境还有问题

9.ffmpeg编译脚本(x264,fdkaac,lame的编译参看我以前的博客)

#!/bin/bash
PROJECT_PATH=`pwd`
PREFIX=/home/bixinwei/Downloads/ffmpeg-2.8.1-h265patch/build
external_libs=/home/bixinwei/Downloads/ubuntu-build/external_libs

./configure --prefix=$PREFIX \
--enable-shared --disable-static \
--enable-ffplay --enable-sdl --enable-pic --enable-gpl --enable-version3 --enable-nonfree \
--enable-libx264  --enable-libx265 --enable-libmp3lame --enable-libfdk_aac \
--disable-doc --yasmexe=/usr/bin/yasm \
--enable-pthreads --enable-avfilter \
--extra-libs="-lpthread -lm -ldl" \
--extra-cflags="-I/usr/local/include -I$external_libs/fdk-aac/include -I$external_libs/x264/include -I$external_libs/lame/include" \
--extra-ldflags="-L/usr/local/lib -L$external_libs/fdk-aac/lib -L$external_libs/x264/lib -L$external_libs/lame/lib"

 

10. pkgconfig是干啥的?其实这个东西就是充当了--extra-cflags,extra-ldflags的作用。一般build完,在

$prefix/lib/pkgconfig有个.pc的文件,这个文件就是告诉系统改依赖库所在路径。我们手动用--extra-cflags,extra-ldflags

指定库的路径,就不需要pkgconfig了

11.生成的ffplay也支持播放hevc的rtmp流

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值