Linux安装ffmpeg详细教程(超细)

本文档详细介绍了在Linux系统中安装ffmpeg的过程,包括安装x264库和ffmpeg本身。首先从官方源下载x264库,通过configure、make、make install步骤进行安装。接着安装ffmpeg,配置时指定libx264支持,并解决可能的yasm依赖问题。最后,将ffmpeg的bin目录添加到环境变量中,确保命令全局可用。整个过程包括了解压缩、配置、编译和加载库等步骤,完成后可以通过ffmpeg命令进行视频转码操作。

操作步骤有点繁琐,按照我文章的操作就可以轻松安装!!

工具简介

ffmpeg是一个很强大的音视频处理工具,官网是:http://ffmpeg.org/ 官网介绍ffmpeg是:一个完整的、跨平台的解决方案,可以记录、转换和传输音频和视频。ffmpeg既可以播放视频,也提供命令行工具来处理视频,另外还有强大的视频处理库用于开发,下面是以Linux为例介绍ffmpeg的安装流程的简单的命令行对视频进行转码操作,是ffmpeg中最最简单的入门内容.

安装详细步骤

1.安装xlib264

  1. 下载x264库(http://download.videolan.org/x264/snapshots)

滑到最下面下载最新版本,要不然后面初始化ffmpeg会提示版本过旧

  1. 解压下载好得x264-snapshot-20120801-2245.tar.bz2

这里如果提示tar (child): bzip2: Cannot exec: No such file or directory,说明linux服务器没有安装解压工具 , 输入命令yum -y install bzip2

  1. 进入到库目录下 cd x264-snapshot-20120801-2245/
  2. 配置x264 bash执行 ./configure --enable-shared --enable-static
  3. 编译执行 make
  4. 继续 make install
  5. x264库将会安装在/usr/local/lib。要让其他程序可以使用这个库
  6. 打开/etc/ld.so.conf vi /etc/ld.so.conf
  7. 并添加下面的行。 /usr/local/lib
  8. 后运行下面的命令重新加载共享库 sudo ldconfig
    到这里x264就安装好了,接下来进行ffmpeg环节

2.安装ffmpeg

  1. 首先去官网下载源码包http://ffmpeg.org/download.html#releases,这里下载的是ffmpeg-3.4.8.tar.gz,下载之后上传至Linux准备安装,首先解压安装包,然后进到ffmpeg文件目录下面:

tar -xjvf ffmpeg-3.4.8.tar.gz cd ffmpeg-3.4.8/

  1. 然后执行configure配置

./configure --enable-gpl --enable-libx264 --prefix=/monchickey/ffmpeg

这里执行完以后一般都会报错的,会提示你 yasm/nasm 包不存在或者很旧


在这里插入图片描述

  1. 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


  1. 最后在执行刚刚第二步的操作

./configure --enable-gpl --enable-libx264 --prefix=/monchickey/ffmpeg
make
make install

这里编译时间非常长,等待的时间可以去喝杯coffee压压惊
好了之后执行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目录未加载到链接到系统库中


  1. 添加这些库:vim /etc/ld.so.conf
    然后添加一行内容: /monchickey/ffmpeg/lib
    之后保存并退出,
    然后执行 :sudo ldconfig 重新加载资源
    使配置生效,现在再次执行 ./ffmpeg -version 显示就正常了
    在这里插入图片描述
    然后可以根据需要将bin目录添加至环境变量中以保证任何时候都能使用ffmpeg命令

vi /etc/profile

添加下面这行

export PATH=/monchickey/ffmpeg/bin:$PATH

保存退出,运行profile

source /etc/profile

全局ffmpeg生效
到这ffmpeg安装完成并且生效



下面测试一下使用ffmpeg转码

首先由一个flv格式的视频文件,现在使用ffmpeg转换为mp4格式,执行下面命令:

ffmpeg -i usr/local/1600774754000.flv -acodec copy -vcodec copy usr/local/1600774754000.mp4

在这里插入图片描述
现在ffmpeg安装和最简单的命令行视频转换就完成了,ffmpeg的功能非常强大,命令也非常多,可以参考另一篇文章ffmpeg语法使用

<think>好的,我现在需要回答用户关于在Linux安装FFmpeg的问题。用户提供了几个引用来源,我需要仔细分析这些引用,整理出安装步骤,并确保符合用户的系统级指令,比如正确使用LaTeX格式、生成相关问题等。 首先,我要确认用户提供的引用内容。引用[1]提到了使用`make install`将FFmpeg安装到`/opt/ffmpeg/`目录下。引用[2]指出在Ubuntu等发行版上可以通过终端命令直接安装。引用[3]和[4]提到从官网下载源码包并解压,然后配置编译选项,比如`./configure`命令。引用[5]则说明需要额外安装编码库如H264和SDL依赖。 接下来,我需要将这些信息整合成清晰的安装步骤。用户可能有两种安装方式:使用包管理器快速安装和从源码编译安装。对于包管理器安装,适合Ubuntu/Debian和CentOS/Fedora系统,需要给出具体的命令,如`sudo apt install ffmpeg`或`sudo dnf install ffmpeg`。这部分在引用[2]中有提到,步骤相对简单。 然后是源码编译安装,这部分步骤较多,需要详细说明。根据引用[3]、[4]、[5],步骤包括下载源码、解压、配置编译选项、安装依赖库(如x264、lame、SDL等),然后执行`make`和`make install`。特别是要注意配置命令中的参数,比如`--prefix`指定安装路径,以及启用需要的编解码器。例如,引用[4]中的配置命令是`./configure --enable-shared --prefix=/usr/local/ffmpeg --enable-libx264`,这可能还需要用户先安装x264库。 同时,引用[5]提到需要安装SDL来支持ffplay,所以在依赖安装部分需要包含SDL的相关库。例如,在Ubuntu上可能需要安装`libsdl2-dev`。 验证安装部分,用户安装完成后需要检查版本和测试命令,如`ffmpeg -version`,确保安装成功,并确认动态库路径是否正确,如引用[1]提到的将库路径添加到`/etc/ld.so.conf`并运行`ldconfig`。 在整理过程中,需要注意用户提到的系统级指令,比如行内数学表达式使用$...$,但在这个问题中可能涉及较少,但如果有变量或路径,可能需要用LaTeX格式。例如,路径`/usr/local/ffmpeg`可以写成`/usr/local/ffmpeg`,不需要特别处理,但如果有数学内容需要注意格式。 生成的相关问题需要围绕FFmpeg安装可能遇到的后续问题,比如依赖库安装失败、配置选项错误、环境变量设置等,以及不同发行版的差异和如何验证安装成功。 最后,确保回答结构清晰,分步骤说明,并正确引用来源。同时,检查是否有遗漏的步骤或错误信息,比如是否需要root权限执行某些命令,或者不同发行版包管理器的差异。</think>在Linux系统上安装FFmpeg主要有两种方法:通过包管理器快速安装和通过源码编译安装。以下是具体步骤: --- ### 方法1:通过包管理器安装(推荐) **适用场景**:需要快速安装且不需要特定编解码器或定制功能 1. **Ubuntu/Debian系统** ```bash sudo apt update sudo apt install ffmpeg ``` 安装后验证:`ffmpeg -version`[^2] 2. **CentOS/Fedora系统** ```bash # CentOS 7/8 sudo yum install epel-release sudo yum install ffmpeg # Fedora sudo dnf install ffmpeg ``` --- ### 方法2:通过源码编译安装 **适用场景**:需要自定义编解码器(如H.264、MP3)或最新版本 1. **安装依赖库** ```bash # Ubuntu/Debian sudo apt install build-essential nasm yasm libx264-dev libmp3lame-dev libsdl2-dev # CentOS/Fedora sudo yum install gcc-c++ nasm yasm x264-devel lame-devel sdl2-devel ``` 2. **下载并解压源码** ```bash wget https://ffmpeg.org/releases/ffmpeg-6.0.tar.gz tar -xzf ffmpeg-6.0.tar.gz cd ffmpeg-6.0 ``` 3. **配置编译选项** ```bash ./configure --prefix=/usr/local/ffmpeg --enable-shared --enable-libx264 --enable-libmp3lame --enable-sdl2 ``` 参数说明: - `--prefix`:指定安装路径[^1] - `--enable-shared`:生成共享库[^4] - `--enable-libx264`:启用H.264编码[^5] - `--enable-sdl2`:支持ffplay播放器 4. **编译并安装** ```bash make -j$(nproc) # 多线程编译加速 sudo make install ``` 5. **配置环境变量** ```bash echo 'export PATH="/usr/local/ffmpeg/bin:$PATH"' >> ~/.bashrc source ~/.bashrc # 添加动态库路径 echo "/usr/local/ffmpeg/lib" | sudo tee /etc/ld.so.conf.d/ffmpeg.conf sudo ldconfig ``` 6. **验证安装** ```bash ffmpeg -version | grep "configuration" # 检查是否包含x264、lame等配置 ``` --- ### 常见问题解决 - **报错“libx264 not found”**:需先安装`libx264-dev` - **ffplay无法运行**:确认安装SDL2库 - **找不到命令**:检查环境变量是否配置正确[^1] ---
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Romeo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值