linux下安装ffmpeg的教程
Posted Kaysen_7
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下安装ffmpeg的教程相关的知识,希望对你有一定的参考价值。
一、centos linux下安装ffmpeg的教程
1、进入官网下载
点击Download Source Code下载即可,此时得到压缩包ffmpeg-snapshot.tar.bz2
在压缩包目录下,执行命令
tar -xvjf ffmpeg-snapshot.tar.bz2
如果提示:tar (child): bzip2: Cannot exec: No such file or directory
安装bzip2,再执行解压命令
yum -y install bzip2
2、进入解压后目录,输入如下命令/usr/local/ffmpeg为自己指定的安装目录,编译并开启https,不开启会导致操作https的视频流出错
cd ffmpeg
./configure --prefix=/usr/local/ffmpeg --enable-openssl
make && make install
如出现错误 ERROR: openssl not found,进入到日志目录
cd ffbuild
cat config.log#出现下面错误信息
fatal error: openssl/ssl.h: No such file or directory
安装openssl,然后进行重新编译
yum install -y openssl
yum install -y openssl-devel#回到编译目录
cd ..
3、配置变量
vi /etc/profile
在最后PATH添加环境变量:
export PATH=$PATH:/usr/local/ffmpeg/bin
保存退出
查看是否生效
source /etc/profile 设置生效
4、查看版本
ffmpeg -version 查看版本
注意:
若安装过程中出现以下错误:
yasm/nasm not found or too old. Use –disable-yasm for a crippled build. If you think configure made a mistake, make sure you are using the latest version from Git. If the latest version fails, report the problem to the ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net. Include the log file “config.log” produced by configure as this will help solve the problem.
需要安装 yasm
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make && make install
Linux下安装ffmpeg
ffmpeg是一个很强大的音视频处理工具,官网是:http://ffmpeg.org/ 官网介绍ffmpeg是:一个完整的、跨平台的解决方案,可以记录、转换和传输音频和视频。ffmpeg既可以播放视频,也提供命令行工具来处理视频,另外还有强大的视频处理库用于开发,下面是以Linux为例介绍ffmpeg的安装流程的简单的命令行对视频进行转码操作,是ffmpeg中最最简单的入门内容.
首先去官网下载源码包,这里下载的是最新的ffmpeg-3.3.1.tar.bz2,下载之后上传至Linux准备安装,首先解压安装包:
tar -xjvf ffmpeg-3.3.1.tar.bz2 cd ffmpeg-3.3.1/
如果现在直接执行configure配置的话,可能会报如下的错误:
错误的意思是 yasm/nasm 包不存在或者很旧,可以使用--disable-yasm禁用这个选项编译,yasm是一款汇编器,并且是完全重写了nasm的汇编环境,接收nasm和gas语法,支持x86和amd64指令集,所以这里安装一下yasm即可,下载地址是:http://yasm.tortall.net/Download.html 进入后下载1.3.0的源码包,执行下面命令安装:
tar -xvzf yasm-1.3.0.tar.gz cd yasm-1.3.0/ ./configure make make install
编译参数都是默认的,直接安装到系统中即可,安装成功之后继续回到ffmpeg解压后的目录,执行下面命令编译并安装:
./configure --enable-shared --prefix=/monchickey/ffmpeg make make install
编译过程有点长,耐心等待完成之后执行 cd /monchickey/ffmpeg/ 进入安装目录,查看一下发现有bin,include,lib,share这4个目录,其中bin是ffmpeg主程序二进制目录,include是C/C++头文件目录,lib是编译好的库文件目录,share是文档目录,然后进入bin目录,执行 ./ffmpeg -version 查看当前版本的详细信息,默认情况下一般会报libavdevice.so.57: cannot open shared object file: No such file or directory,原因是lib目录未加载到链接到系统库中,系统ld目录列表在/etc/ld.so.conf中,打开文件会发现,里面引用了/etc/ld.so.conf.d/下面所有的.conf文件,比如mariadb-x86_64.conf我们只需要创建一个文件并写入lib路径即可,执行命令: vim /etc/ld.so.conf.d/ffmpeg.conf 然后添加一行内容: /monchickey/ffmpeg/lib 之后保存并退出,然后执行 ldconfig 使配置生效,现在再次执行 ./ffmpeg -version 显示就正常了
然后可以根据需要将bin目录添加至环境变量中以保证任何时候都能使用ffmpeg命令,下面测试一下对视频进行转码:
首先由一个avi格式的视频文件,大小是37M,现在使用ffmpeg转换为mp4格式,执行下面命令:
ffmpeg -i test.avi out.mp4
确认之后,看到屏幕滚动开始处理,大约半分钟之后视频就转换完毕了,转换后mp4视频大小是17M,具体可以下载下来看一下
现在ffmpeg安装和最简单的命令行视频转换就完成了,实际上ffmpeg命令行工具可以有很多参数不用编程就可以实现强大的功能,这个非常牛
以上是关于linux下安装ffmpeg的教程的主要内容,如果未能解决你的问题,请参考以下文章