FFmpeg 安装教程
2017-12-08 10:34 浏览(3077

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

之前一直没找到官方的安装教程,都是自己下载源码安装,结果导出都是错误。这里先贴一个官网的安装教程(服务器是Centos)https://trac.ffmpeg.org/wiki/CompilationGuide/Centos 。但是安装后还是有错,所以这里记录一下自己的安装过程



目录定义

/usr/local/src/ffmpeg_sources           下载安装包路径

/root/ffmpeg_build                            构建和函数库目录

/root/bin                                            安装函数库后的执行目录



安装依赖库

yum install autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel
cd cd /usr/local/src/
mkdir ffmpeg_sources
cd ffmpeg_sources



NASM 安装

$HOME 为用户目录 ,echo $HOME 查看位置

curl -O -L http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.bz2
tar xjvf nasm-2.13.01.tar.bz2
cd nasm-2.13.01
./autogen.sh
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make && make install



Yasm 安装

cd ..
curl -O -L 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



libx264 安装

H.264 视频编码器

ffmpeg 编译时要加上参数 --enable-gpl --enable-libx264

cd ..
git clone --depth 1 http://git.videolan.org/git/x264
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make && make install

有可能会出现这样的错误

Found no assembler
Minimum version is nasm-2.13
If you really want to compile without asm, configure with --disable-asm.

请安装对应版本或更高版本的 nasm



libx265 安装

H.265/HEVC 视频编码器

ffmpeg 编译时要加上参数 --enable-gpl --enable-libx265

cd ..
hg clone https://bitbucket.org/multicoreware/x265
cd x265/build/linux/
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
make && make install



libfdk_aac 安装

AAC 音频编码器

ffmpeg 编译时要加上参数 --enable-libfdk_aac (和 --enable-nonfree 若你加了 –enable-gpl 参数的话)

cd /usr/local/src/ffmpeg_sources/
git clone --depth 1 https://github.com/mstorsjo/fdk-aac
cd fdk-aac
autoreconf -fiv
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make && make install



libmp3lame 安装

mp3 音频编码器

ffmpeg 编译时要加上参数 --enable-libmp3lame

cd ..
curl -O -L http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar xzvf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm
make && make install

注:最新版是 3.100,但是 ffmpeg 编译时会错误 ERROR: libmp3lame >= 3.98.3 not found

因为 3.100 < 3.98.3,这个版本号真是醉了,只好下载 3.99.5,地址 https://sourceforge.net/projects/lame/files/lame/

但在我的服务器上,安装了3.99.5还是一直报这个错误,不知道为什么

/root/bin/lame --help
LAME 64bits version 3.99.5 (http://lame.sf.net)

在编译 ffmpeg 之前,修改 ffmpeg  的 configure 文件,/usr/local/src/ffmpeg_sources/ffmpeg/configure

找到 enabled libmp3lame ,在它后面加上 -lm,

enabled libmp3lame        && require "libmp3lame >= 3.98.3" lame/lame.h lame_set_VBR_quality -lmp3lame -lm



libopus 安装

Opus 音频解码器和编码器

ffmpeg 编译时要加上参数 --enable-libopus

cd ..
curl -O -L https://archive.mozilla.org/pub/opus/opus-1.2.tar.gz
tar xzvf opus-1.2.tar.gz
cd opus-1.2
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make && make install



libogg 安装

比特流库,需要 libtheora 和 libvorbis

cd ..
curl -O -L http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz
tar xzvf libogg-1.3.2.tar.gz
cd libogg-1.3.2
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make && make install



libvorbis 安装

Vorbis 音频编码器,需要 libogg

ffmpeg 编译时要加上参数 --enable-libvorbis

cd ..
curl -O -L http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz
tar xzvf libvorbis-1.3.5.tar.gz
cd libvorbis-1.3.5
./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared
make && make install



libvpx 安装

VP8/VP9 编码器和解码器

ffmpeg 编译时要加上参数 --enable-libvpx

https://chromium.googlesource.com/webm/libvpx.git 访问不了,你懂的,还好我在github 上找到了 https://github.com/webmproject/libvpx.git

cd ..
git clone --depth 1 https://github.com/webmproject/libvpx.git
cd libvpx
./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm
make && make install



FFmpeg 安装

cd ..
curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
  --prefix="$HOME/ffmpeg_build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/ffmpeg_build/include" \
  --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
  --extra-libs=-lpthread \
  --bindir="$HOME/bin" \
  --enable-gpl \
  --enable-libfdk_aac \
  --enable-libfreetype \
  --enable-libmp3lame \
  --enable-libopus \
  --enable-libvorbis \
  --enable-libvpx \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree
make
make install

若报错 ERROR: libmp3lame >= 3.98.3 not found

请看 libmp3lame 安装

安装完成,测试一下。我在 /mnt/hgfs/www/test 目录下放了个视频 1080.mp4 ,使用 ffmpeg 提取视频中图像

cd /mnt/hgfs/www/test
ffmpeg -ss 00:00:10  -i 1080.mp4 -f mjpeg -r 1 -vframes 1 -an sample.jpg

若提示 ffmpeg 命令不存在,就将 /root/bin/ 下面的文件复制一份到 /usr/local/bin/

cp -i /root/bin/ffmpeg /usr/local/bin/ffmpeg
cp -i /root/bin/ffprobe /usr/local/bin/ffprobe
....


提取的图片 sample.jpg


评论(2)

ssbaoer89

8-9 14:33 0 回复

ssbaoer89

"机会是留给有准备的人,掌握好时时彩投注技巧,投注的时候就可以游刃有余了,下面介绍五个方法以供参考。
第一招,统计指标数据。要善于对上期中奖号码进行各项专用指标统计计算,求出奇偶比、区间比、大小比、质合比、和值、平均和、间隔和、个号出球频次、出球尾数等重要指标值。建立图表并及时记录整理,以供选号分析时使用。第二招,解读走势规律。要把握上期、再上期开奖号表现特征。尽可能完全解读以下各种阶段性走势规律:冷热球分布、伴侣数情况、不走模式、必走格式、连号、斜连号、重叠码、擦边趋势方向、偏态性、旺区、空档等。第三招,学习借鉴经验。 学习所有大奖获得者的经验,借鉴彩评名家的荐号。彩票的规律层出不穷,不少先进的方法都是大家在摸索中悟出的,因此借鉴别人的经验很重要。第四招,圈定最佳出号。通过阶段性杀号法、趋势分析法缩小备选号码,找出下期可能出号的大致范围,再通过各种过滤的方法进行缩水,圈定出最佳出号。这样,既保证了选号的准确性,又节省了不少资金。第五招,科学组合投注。将所选出的最可能出球,根据数字相克性、排斥性等特点,分别进行组合。使用投注软件和选号工具里提供的聪明组合、胆拖投注等方法,有条件的彩友可以采取复式包号、联盟买彩等投注方式。
这个倍率就很好算了,我们制定一个每一期都能赚钱的倍率 即每次都翻2倍再+1来购买(2n+1),这样能保证每一期都能多赚1元钱,演示一下:第一次花1元钱买小,中了则是2元,减去本金1元钱就盈利1元;第二次花3元,中了6元减去本金4元则盈利2元 第三次花7元,盈利3元;第四次花15元盈利4元……就这样保证只要过一期就会多1元钱,买了十期,就赚了10元,甚至第一次就花10元的话,那第十期就赚了100元,投的越多赚的越多,想想是不是很开心 好,回到现实我们来看下倍率,以我曾经发现的连续开小十六次为例,必须要购买第十七次才能赢,从一到第十七次的倍率分别为,看好的单选买成组选,看好的组选买成单选。得到的体会是,在相当看好的单选时,千万别想忘了买一点组选举个例子,100期号码,个位数字已经连续开大5次了,那么继续开大可能不可能?连续开7个可能不可能?8个9个呢?这都是有可能的 [url=https://1680380.com/view/shishicai_cq/ssc_index.html]重庆时时彩[/url] 现在我假设这一百期号码里连续开5个大有5次,连续开6个大有2次,连续开7个大有1次,连续开8个大有1次,连续开9个大有1次 [url=https://1680380.com/view/xingyft/pk10kai.html]幸运飞艇[/url] 现在我们把开7个大8个大9个大的都去掉,假设只能连续开6个大,那么你会发现,这一百期号码里,一共连续开大5个以上的有7次,其中只有2次继续开了大,那么5个大之后再开大的概率确实会小很多,但是,这仅仅针对的是开大5个之后第六次是否还会开大的结果,事实上还会有7个,8个,9个,如果你把这些概率和第6次加到一起,这时你会发现 [url=https://1680380.com/view/PK10/pk10kai.html]北京pk10[/url] 一共有10次开大5个以上,其中继续开大的有5次,转开小的也有5次,那么其实概率就是50%"""

8-9 14:32 0 回复
发布评论
回复X
聊天室(0