ffmpeg的ubuntu的编译过程(编译静态库和动态库)

发布时间:2020-07-04 09:31:12 作者:夏曹俊
来源:网络 阅读:5604

第一步×××

通过git下载

git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg

或者直接下载

wget  http://ffmpeg.org/releases/ffmpeg-3.3.tar.bz2

如果是下载的ffmpeg-3.3.tar.bz2 需要进行解压

tar   -jxvf ffmpeg-3.3.tar.bz2 

如果国外网站访问速度慢,也可以到www.ffmpeg.club 中下载,可以在windows中下载后再复制到linux中。

第二步安装编译依赖环境

sudo apt-get update

sudo apt-get -y install autoconf automake build-essential \

libass-dev libfreetype6-dev libsdl2-dev libtheora-dev \

libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev \

libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev

sudo apt-get install yasm

第三步安装可选依赖库

X264安装

sudo apt-get install libx264-dev

如果选择编译要添加

--enable-gpl --enable-libx264

如果安装失败可以选择源码安装

wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2tar xjvf last_x264.tar.bz2cd x264-snapshot*PATH="$HOME/bin:$PATH" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static --disable-openclPATH="$HOME/bin:$PATH" makemake install

AAC

sudo apt-get install libfdk-aac-dev

如果选择编译添加 --enable-libfdk-aac

如果加了 --enable-gpl 需要加--enable-nonfree

MP3

sudo apt-get install libmp3lame-dev

如果选择编译添加 --enable-libmp3lame

opus

sudo apt-get install libopus-dev

如果选择编译添加 --enable-libopus

VPXVP8 Video Encoding Guide

sudo apt-get install libvpx-dev

如果选择编译添加 --enable-libvpx


第四步编译为静态库

PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \

--prefix="$HOME/ffmpeg_build" \

--pkg-config-flags="--static" \

--extra-cflags="-I$HOME/ffmpeg_build/include" \

--extra-ldflags="-L$HOME/ffmpeg_build/lib" \

--bindir="$HOME/bin" \

--enable-gpl \

--enable-libass \

--enable-libfdk-aac \

--enable-libfreetype \

--enable-libmp3lame \

--enable-libopus \

--enable-libtheora \

--enable-libvorbis \

--enable-libvpx \

--enable-libx264 \

--enable-nonfree

PATH="$HOME/bin:$PATH" make

make install

hash -r


编译完成就可以在ffmpeg_build中看到(生成的头文件、静态库文件)

bin include lib share

ffmpeg工具还在源码目录下面


快速编译为动态库方法

下载源码后之直接进入源码目录

./configure --enable-shared --prefix=/usr/local/ffmpeg

make

make install

其中--enable-shared表示编译为动态库,--prefix表示安装的路径

编译完成后就可以看到/usr/local/ffmpeg目录中有头文件和动态链接库文件。如果为了项目编译运行方便,可以直接把动态链接库复制到 /usr/lib目录下,这样运行就不用指定库路径了。

编译项目时候要注意,库路径要设置到/usr/lib 防止有老版本冲突,很多软件安装的时候会把ffmpeg安装进去,比如安装opencv也会把ffmpeg安装进去,有可能造成版本冲突。


更多的资料也可以关注我51CTO上的视频课程

夏老师的课堂 http://edu.51cto.com/lecturer/12016059.html


手把手教您开发视频播放器

http://edu.51cto.com/course/course_id-8059.html


 ffmpeg的ubuntu的编译过程(编译静态库和动态库)


推荐阅读:
  1. golang的编译过程
  2. hive sql的执行及编译过程

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ffmpeg 库和

上一篇:2019大数据学习路线指南(最全知识点总结)

下一篇:oracle删除用户命令和部分命令

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》