文档章节

Linux下 FFmpeg 编译安装

o
 osc_1ee7cxmx
发布于 2018/08/06 17:15
字数 573
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

官网:http://ffmpeg.org

一、FFmpeg安装

安装依赖包:

yum install  libtheora-devel  libvorbis-devel

FFmpeg编译安装:

由于系统不同,会导致依赖也不尽相同,需根据报错信息逐渐安装依赖

wget http://ffmpeg.org/releases/ffmpeg-3.3.2.tar.bz2
tar jxvf ffmpeg-3.3.2.tar.bz2
cd ffmpeg-3.3.2

 

# 如下是个人需要的编译参数,可以根据实际情况增减
./configure --prefix=/usr/local/ffmpeg \
--enable-shared \ --enable-libfdk-aac \ --enable-gpl \ --enable-nonfree \ --enable-postproc \ --enable-avfilter \ --enable-pthreads \ --enable-libmp3lame \ --enable-libtheora \ --enable-libvorbis \ --enable-libx264 \ --enable-libxvid \ --enable-decoder=libx264 \ --enable-encoder=libx264
 
make && make install


安装后,查看版本
./bin/ffmpeg -version

 

转码:

ffmpeg -i input.mp4 output.avi

二、FFmpeg安装错误解决

有的包下载缓慢,备用下载地址: http://pan.baidu.com/s/1hsEeSNM

  • 报错:yasm/nasm not found or too old. Use --disable-yasm for a crippled build
# rpm包存在的话,可以直接yum安装 yasm,没有则编译安装
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm.tar.gz
./configure
make
make install
  • 报错:ERROR: libfdk_aac not found
https://sourceforge.net/projects/opencore-amr/files/fdk-aac/
下载fdk-aac-0.1.5.tar.gz ./configure&& make && make install
  • 报错:ERROR: libtheora not found
http://downloads.xiph.org/releases/theora/?C=M;O=D
libtheora-1.2.0alpha1.tar.gz
./configure && make && make install
  • 如下报错:
*** Could not run Ogg test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means Ogg was incorrectly installed
*** or that you have moved Ogg since it was installed.
http://downloads.xiph.org/releases/ogg/?C=M;O=D
libogg-1.3.2.tar.gz
./configure && make && make install

 

  • 报错:ERROR: libvorbis not found

 

http://downloads.xiph.org/releases/vorbis/
libvorbis-1.3.3.tar.gz

 

  

 

  • 报错:ERROR: libmp3lame >= 3.98.3 not found
http://downloads.sourceforge.net/lame
https://sourceforge.net/projects/lame/files/lame/3.99/, 我下到的是lame-3.99.5.tar.gz ./configure && make && make install
  • 报错:ERROR: libx264 not found
git clone git://git.videolan.org/x264.git
./configure --enable-shared && make && make install

 

  • 报错:ERROR: libxvid not found
http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz
cd build/generic/
./configure && make && make install

 

  • 库文件找不到时解决:

 

ldd /data/server/ffmpeg/bin/ffmpeg  # 查看依赖库文件,找到no found的库文件
find /  -name libavdevice.so    # 查找库文件位置
vim/etc/ld.so.conf     # 如存在,添加库文件位置
/data/server/ffmpeg/lib/    
ldconfig     # 重新加载,使新库文件生效

 

 

3.动态链接库

$ sudo vi /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/ffmpeg/lib       ///usr/local/ffmpeg 目录是我ffmpeg安装目录,根据你的安装目录改吧

$ sudo ldconfig

 

4. Ffmpeg 加入环境变量

vi /etc/profile
加入以下内容:
export PATH="/usr/local/ffmpeg/bin:$PATH"

然后保存并运行source /etc/profile

 
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

LINUX_VERSION_CODE与KERNEL_VERSION

由于Linux版本的在不断更新,当设备驱动去兼容不同版本的内核时,需要知道当前使用的内核源码版本,以此来调用对应版本的内核API,这两个宏定义在文件 /usr/include/linux/version.h#defin...

osc_5g68egoj
10分钟前
11
0
JVM09-类加载过程

这一篇我们来学习一下JVM中的类加载过程。说到类的加载过程,我们需要先了解一下JVM中类的生命周期。在JVM中类的生命周期有七个阶段。分别是: 加载(Loading):加载是通过类加载器从不同的...

osc_zai0dt9q
11分钟前
9
0
###豪豪豪豪######2020 推荐系统技术演进趋势了解

读知乎文章《推荐系统技术演进趋势:从召回到排序再到重排》笔记: 《推荐系统技术演进趋势:从召回到排序再到重排》这篇文章主要说了下最近两年,推荐系统技术的一些比较明显的技术发展趋势...

osc_lhmderwy
12分钟前
9
0
SpringBoot入门实现RESTFUL API以及用Postman测试

Model @Data@Builderpublic class Article { private Long id; private String author; private String title; private String content; private Date createTime;}......

osc_7ludm6s2
13分钟前
4
0
Leetcode 83 删除排序链表中的重复元素-链表双指针

维护两个指针,第一个指针指向链表没有重复元素的最后一个位置,第二个指针向后扫描,直到末尾。严格来说,在C++中需要手动释放内存。但在算法题或者Java中不需要这么做。 class Solution {...

osc_n1x6m26g
14分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部