FFmpeg是一款强大的视频编解码工具,可以处理大量的编码格式。ffmpeg是开源项目,在Linux平台下开发,同时也可以在其它操作系统下编译运行,包括Windows、Mac OS X等。本文将介绍在Linux下以源代码方式编译安装ffmpeg的方法。
安装
本文使用Linux发行版为centos 6.6,其安装步骤如下。
下载源码
从ffmpeg官网:https://www.ffmpeg.org/download.html下载源代码,当前最新的版本为ffmpeg-2.5.3.tar.bz2。
解压文件
tar -jxvf ffmpeg-2.5.3.tar.bz2
进入目录
cd ffmpeg-2.5.3
配置
安装yasm,ffmpeg编译中为了提高编译速度,使用了汇编指令,于是需要使用这个工具。
yum -y install yasm
或者同样使用源码方式安装,下载yasm源代码,然后使用./configure、make以及make istall进行安装。
当然,如果实在不想要这个功能,可以在下一步的配置中使用./configure –disable-yasm选项。
配置必要选项,这一步根据自己需要开启或关闭某些选项,具体可以使用./configure –help查看,或者直接查看configure文件。本文使用如下简单配置。
./configure --enable-shared --prefix=/usr/local/ffmpeg
其中–enable-shared表示生成动态链接库,可以供以后编程使用,同时生成的可执行程序也依赖这些动态库。如果不加上–enable- shared选项则使用静态链接的方式编译,此时不会生成动态库,同时生成的ffmpeg等的可执行文件也比较大,但他们不需要动态库就可以直接运行
。
–prefix表示程序安装的目录,这里设为/usr/local/ffmpeg。
编译安装
编译,需要较长时间,10分钟左右。
make
安装,很快完成。
sudo make install
如果你的用户没有运行sudo命令的权限,需要管理员运行编辑/etc/sudoers文件,在
root ALL=(ALL) ALL
下面添加一行
noalgo ALL=(ALL) ALL
其中noalgo为添加的用户的名称。
路径处理
安装完成后在/usr/local/ffmpeg出现三个目录:
- bin:可执行文件目录
- lib:动态链接库目录
- include:编程用到的头文件目录
不管是编程还是可执行程序的执行都需要依赖lib下面的动态库,可以把里面的so文件拷贝到/usr/lib下,但可以直接修改配置文件。通过查看/etc/ld.so.conf文件,发现里面只有一句话:
include ld.so.conf.d/*.conf
表明其包含了ld.so.conf.d下所有的conf文件,于是可以在/etc/ld.so.conf.d/创建一个新的文件ffmpeg.conf,其中之包含一句话,即为ffmpeg的lib目录:
/usr/local/ffmpeg/lib
再执行ldconfig,更新ld.so.cache,使修改生效。
为了在任何地方能够直接用ffmpeg运行,而不用使用如./ffmpeg或者 /usr/local/ffmpeg/bin/ffmpeg的方式运行程序,可以把可执行程序复制到bin目录下,这里选择在bin目录下创建软链接。软 链接类似于Windows下的快捷方式,如果原可执行程序被删除了,软链接也不能继续使用,而硬链接则可以继续使用。创建链接命令如下:
sudo ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/local/bin/ sudo ln -s /usr/local/ffmpeg/bin/ffprobe /usr/local/bin/ sudo ln -s /usr/local/ffmpeg/bin/ffserver /usr/local/bin/
另外,如果变成需要包含ffmpeg的头文件,最好将include目录下的ffmpeg复制到/usr/include中。
运行
现在可以在shell中直接输入ffmpeg运行程序,得到以下结果:
[noalgo@NOALGO ~]$ ffmpeg ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers built on Jan 14 2015 11:54:30 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-11) configuration: --enable-shared --prefix=/usr/local/ffmpeg libavutil 54. 15.100 / 54. 15.100 libavcodec 56. 13.100 / 56. 13.100 libavformat 56. 15.102 / 56. 15.102 libavdevice 56. 3.100 / 56. 3.100 libavfilter 5. 2.103 / 5. 2.103 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 1.100 / 1. 1.100 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... Use -h to get full help or, even better, run 'man ffmpeg' 转自:http://noalgo.info/874.html
相关推荐
以下是对"linux下安装FFmpeg命令,亲测可用"这一主题的详细解释。 1. **FFmpeg简介** FFmpeg是跨平台的音频和视频处理工具,包含了一系列的命令行工具,如ffmpeg、ffplay、ffprobe等,用于编码、解码、转码、合并、...
### Linux下安装ffmpeg库 #### 知识点一:FFmpeg简介及用途 - **FFmpeg**是一款强大的跨平台音视频处理工具集,能够进行音视频的编码、解码、转码、复用、解复用、流媒体传输、滤镜处理等功能。 - 它包含了一系列...
以上步骤只是一个基础的FFmpeg安装指南,实际操作中可能需要根据你的系统环境和需求进行调整。例如,你可能还需要添加某些库路径到环境变量,或者根据特定的编解码需求调整`./configure`选项。在安装过程中,可能会...
6. **设置环境变量**:脚本会更新系统的PATH环境变量,确保新安装的FFmpeg命令可以在任意目录下执行。 7. **清理**:最后,脚本可能会清除下载和编译过程中产生的临时文件,以保持系统整洁。 在提供的链接中,具体...
以下是在Linux下安装FFmpeg及其依赖库的详细步骤: 首先,确保你的系统已经安装了必要的编译工具,如GCC和make。如果没有,可以通过包管理器进行安装。例如,在Ubuntu或Debian上运行: ```bash sudo apt-get update...
在Linux环境下,通过脚本安装FFmpeg可以自动化整个过程,提高效率并确保安装正确无误。以下是一份详细的FFmpeg在Linux上的安装教程。 首先,我们需要准备必要的依赖库和编译工具。在大多数Linux发行版中,这通常...
编译完成后,使用`sudo make install`将FFmpeg安装到系统路径: ```bash sudo make install ``` 安装完成后,FFmpeg的命令行工具就可以在全局路径下使用了。你可以通过`ffmpeg -version`来检查安装是否成功。 ...
本教程将详细讲解如何在Linux环境下安装FFmpeg,以及所需的解码器,确保你可以全面利用FFmpeg的功能。 首先,让我们了解FFmpeg的基本概念。FFmpeg是一个开源的跨平台项目,它包含了一系列的库,如libavcodec(编码/...
### Linux环境下Nginx+RTMP+FFmpeg套餐安装与拉流人数获取详解 #### 一、概述 本文旨在提供一套完整的Linux环境下Nginx、RTMP和FFmpeg的安装及配置指南,帮助读者快速搭建功能强大的流媒体服务器。文章不仅涵盖了...
在Linux环境下安装FFmpeg,通常涉及到多个依赖库的安装,这些库为FFmpeg提供了必要的功能支持。本压缩包包含了安装FFmpeg所需的各种组件,方便用户一次性安装,避免了逐个下载的繁琐过程。 1. **编译环境**: 在安装...
二、Linux下安装FFmpeg 在Linux环境下,通常有多种方法安装FFmpeg: 1. 使用包管理器:对于Ubuntu或Debian用户,可以通过运行以下命令来安装: ``` sudo apt-get update sudo apt-get install ffmpeg ``` 对于...
在 Linux 服务器上安装 FFmpeg,通常需要先安装一些依赖库,例如 libx264(用于 H.264 视频编码)和 libmp3lame(用于 MP3 音频编码)。以下是一个详细的安装步骤: 1. **检查并安装 GCC**: GCC 是 GNU Compiler ...
Linux编译安装ffmpeg,包括ffmpeg-4.3.1.tar,nasm-2.13.03.tar.bz2,x264-snapshot-20191217-2245-stable.tar.bz2和yasm-1.3.0.tar.gz
1. 安装`ffmpeg`库:在Linux系统上,可以通过包管理器如`apt-get`或`yum`安装。例如,在Ubuntu上运行`sudo apt-get install libavcodec-dev libavformat-dev libavutil-dev`。 2. 引入库:在C++代码中,使用`#...
FFMpeg 在 Linux 下的编译和使用 FFMpeg 是一个功能强大且广泛使用的开源多媒体处理框架,它可以对多种格式的音频和视频文件进行处理,包括编码、解码、转换、流媒体等。今天,我们将介绍如何在 Linux 操作系统下...
下面将详细介绍在Linux下安装FFmpeg的步骤和相关知识点。 首先,你需要了解Linux发行版的包管理器,因为FFmpeg的安装通常依赖于这些管理器。例如,对于基于Debian的系统(如Ubuntu),我们使用`apt`,对于基于RPM的...
在Redhat Linux环境下安装ffmpeg是一项常见的任务,特别是对于需要处理视频音频文件的开发者来说尤为重要。本文将详细介绍如何在Redhat Linux系统上安装ffmpeg及其相关的解码器库,确保能够支持多种格式的媒体文件...
首先,我们需要在Linux系统上安装FFmpeg。通常可以通过添加官方仓库并执行apt-get或yum命令来安装。例如,在Ubuntu上: ```bash sudo add-apt-repository ppa:jonathonf/ffmpeg-4 sudo apt-get update sudo apt-get...
在Linux环境下编译FFmpeg的WebAssembly库是一个技术性较强的过程,主要涉及到FFmpeg的源码编译和WebAssembly的交叉编译。FFmpeg是一个强大的开源多媒体处理框架,广泛用于音视频的编码、解码、转码等任务。而...