FFmpeg的多媒体框架的新的主要版本(2.8.1)现已提供下载,带来了一些修正和更新不同的软件包。
FFmpeg多媒体框架的Linux
FFmpeg的2.8.1被命名为“ 费曼 ”不包括任何附加的功能,但是从ffmpeg的-MT的2015年8月28日libav大师,变化libav 11为2015年8月28日。 以下库版本也可用于此次要版本。
- libavutil 54.3100
- libavcodec 56.60.100
- libavformat 56. 40.101
- libavdevice 56. 4.100
- libavfilter 5. 40.101
- 实施例2
- libswscale 3. 1.101
- libswresample 1. 2.101
- libpostproc 53. 3.100
该维护版本是2.8版本分支,它是与已公布在今年2015年9月5日许多新功能和bug修复主要版本的一部分。
目前在FFmpeg的2.8.1一个非常重要的特点,我想注意到这篇文章是通过libwebp中的WebP编码。
什么是WebP?
的WebP是一个新的开源图像格式这是希望创造非常快的网站,Web开发人员非常有用的。 有损WebP压缩用于从原始输出中获得较小的新图像。 根据官方说明的WebP图像格式在google的开发者网站,WebP图像的方式太小,与他们的png版本相比。
也有FFmpeg的2.8.1许多其他可用的功能,如HNM版本4解复用器,编码器libx265,现场HDS合并器,支持DNx444,ATRAC3 +解码器,Mirillis FIC视频解码器和其他许多人,你可以在新闻部分找到ffmpeg的。组织 。
这篇文章系列的主要优先级不是计数功能,而是教会用户如何在他们的Linux机器中安装和使用FFmpeg框架,以执行一些基本操作,如格式之间转换多媒体文件,播放音频/视频文件,记录音频/视频文件以及如何对它们进行编码或解码。
在学习如何使用FFmpeg工具之前你应该做的第一件事是学习什么是FFmpeg。 那么,是什么?
什么是FFmpeg
FFmpeg是最好的多媒体框架之一,包含用于不同任务的各种工具。 例如,ffplay是可以用于播放音频/视频文件的便携式媒体播放器,ffmpeg可以在不同的文件格式之间进行转换,ffserver可以用于流式直播,ffprobe能够分析多媒体流。
这个框架是真正强大的,由于其中的可用工具的多样性,为用户提供最好的技术解决方案。 根据FFmpeg在官方网站的描述,有这样伟大的多媒体框架的原因是最好的自由软件选项的组合。
FFmpeg框架提供高安全性,这是因为开发人员在审查代码时的严肃性,它始终是以安全为目标。
我非常肯定,你会发现这个框架非常有用,当你想做一些数字音频和视频流或录音。 还有许多其他实用的东西,你可以做的帮助FFmpeg框架,如将您的wav文件转换为mp3,编码和解码您的视频,甚至扩展它们。
根据官方网站FFmpeg是能做到以下几点。
- 解码多媒体文件
- 编码的多媒体文件
- 转码多媒体文件
- mux多媒体文件
- demux多媒体文件
- 流多媒体文件
- 过滤多媒体文件
- 播放多媒体文件
让我举个例子,一个非常简单的例子。 下面的命令将你的MP4文件转换成AVI文件,就这么简单。
# ffmpeg -i Lone_Ranger.mp4 Lone_Ranger.avi
上述命令只用于解释,不建议在实践中使用,因为codex,比特率和其他细节没有声明。
在下一部分中,我们将练习一些FFmpeg多媒体框架工具,但在此之前,我们必须将它安装在我们的Linux框中。
如何在Linux中安装FFmpeg多媒体框架
由于FFmpeg包是为最常用的Linux发行版提供的,安装将相对容易。 让我们开始在基于Ubuntu的发行版中安装FFmpeg框架。
在Debian,Ubuntu和Linux Mint
通过PPA在官方博客中推荐我将安装FFmpeg的。 打开一个新的终端(CTRL + ALT + T),然后运行下面的命令。
$ sudo add-apt-repository ppa:jon-severinsson/ffmpeg $ sudo apt-get update $ sudo apt-get install ffmpeg
FFmpeg从源代码编译
从源代码编译软件不是世界上最简单的事情,但使用正确的指令,我们将能够做到。 首先确保您的系统满足所有的依赖关系。 这些依赖关系的安装可以在以下命令的帮助下完成。
首先,告诉系统下拉最新的软件包。
$ sudo apt-get update
使用以下命令安装依赖项。
$ sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev \ libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \ libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
然后使用以下命令为FFmpeg源创建一个新目录。 这是将下载源文件的目录。
$ mkdir ~/ffmpeg_sources
现在,编译和安装使用的FFmpeg通过运行以下命令YASM汇编。
$ cd ~/ffmpeg_sources $ wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz $ tar xzvf yasm-1.3.0.tar.gz $ cd yasm-1.3.0 $ ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" $ make $ make install $ make distclean $ export "PATH=$PATH:$HOME/bin"
您已成功安装了YASM汇编后,是时候来安装,将与特定的FFmpeg工具使用的一些不同的编码器。 使用下面的命令来安装的H.264视频编码器。
$ cd ~/ffmpeg_sources $ wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2 $ tar xjvf last_x264.tar.bz2 $ cd x264-snapshot* $ ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static $ make $ make install $ make distclean
另外一个不错的有用的编码器是libfdk-AAC AAC音频编码器。
$ cd ~/ffmpeg_sources $ wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master $ unzip fdk-aac.zip $ cd mstorsjo-fdk-aac* $ autoreconf -fiv $./configure --prefix="$HOME/ffmpeg_build" --disable-shared $ make $ make install $ make distclean
安装libopus音频解码器和编码器。
$ cd ~/ffmpeg_sources $ wget http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz $ tar xzvf opus-1.1.tar.gz $ cd opus-1.1 $ ./configure --prefix="$HOME/ffmpeg_build" --disable-shared $ make $ make install $ make distclean
现在,是时候从源代码安装的ffmpeg。
$ cd ~/ffmpeg_sources $ wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 $ tar xjvf ffmpeg-snapshot.tar.bz2 $ cd ffmpeg $ PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" $ export PKG_CONFIG_PATH $ ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" \ --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --extra-libs="-ldl" --enable-gpl \ --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus \ --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab $ make $ make install $ make distclean $ hash -r
注意 :如果你没有安装特定的编码器,确保从上面' 的./configure'命令删除'-enable-encoder_name',使安装没有任何问题进行。
在RHEL,CentOS和Fedora上
为了让一切简单为大家,我们不打算从源代码编译FFmpeg的这个时候,但我们将使RPMForge软件库提供一切必要的包进行安装。
# yum install glibc gcc gcc-c++ autoconf automake libtool git make nasm pkgconfig SDL-devel \ a52dec a52dec-devel alsa-lib-devel faac faac-devel faad2 faad2-devel freetype-devel giflib gsm gsm-devel \ imlib2 imlib2-devel lame lame-devel libICE-devel libSM-devel libX11-devel libXau-devel libXdmcp-devel \ libXext-devel libXrandr-devel libXrender-devel libXt-devel libogg libvorbis vorbis-tools mesa-libGL-devel \ mesa-libGLU-devel xorg-x11-proto-devel zlib-devel libtheora theora-tools ncurses-devel libdc1394 libdc1394-devel \ amrnb-devel amrwb-devel opencore-amr-devel
接下来,安装ffmpeg软件包。
# yum install ffmpeg ffmpeg-devel
有很多编码器,你可以安装,但这篇文章的目的我不打算安装所有的,但你可以安装他们使用以下官方指南。
结论
在第一部分中,我们根据FFmpeg多媒体框架更新了读者的最新消息,并向他们展示了如何在他们的Linux机器上安装它们。 下一部分将完全关于学习如何使用这个领先的多媒体框架中的惊人的工具。
更新 :本FFmpeg的系列的第2部分被发布,其示出了一些有用的ffmpeg命令行使用,以执行各种音频,视频和图像变换程序。