乐趣区

关于ffmpeg:ffmpeg安装之mac安装

转发自白狼栈:查看原文

对于 ffmpeg 的装置,有的人可能要折腾很久,甚至折腾一个礼拜,究其原因,根本都是编译装置惹的祸。

咱们提供 4 种装置形式,最简单的莫过于 centos7 上的编译装置。

  1. ffmpeg 动态库下载安装
  2. 在 mac 上装置 ffmpeg
  3. 在 centos7 上编译装置 ffmpeg
  4. 应用 docker 装置 ffmpeg

大家能够依据本人的爱好抉择装置。

明天咱们来看一下如何在 mac 上装置 ffmpeg。

在 mac 上咱们有 3 种办法能够装置 ffmpeg。

第一种咱们在 ffmpeg 装置一文中曾经提到过了,间接下载动态库;

第二种是编译装置,不仅要装置 xcode,还要装置很多的依赖库,还是让咱们的 mac 省省心吧,疏忽;

第三种就是咱们明天要说的,通过 Homebrew 装置。

如果在此之前你通过 Homebrew 曾经装置过 ffmpeg,能够执行命令 brew uninstall ffmpeg 先进行卸载。

装置之前,咱们先看下 Homebrew 的版本,这取决于咱们采纳哪种形式装置。终端执行 brew -v

» brew -v 
Homebrew 1.8.3
Homebrew/homebrew-core (git revision 38eb; last commit 2018-11-19)

如果你的电脑显示 command not found,请先执行上面的命令装置 Homebrew。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

请留神,因为 Homebrew 的版本不同,咱们接下来又有两种不同的操作方法。

1、Homebrew 版本小于 2.0

此时能够先看下 Homebrew 反对哪些配置选项,而后抉择装置咱们须要的 options 即可。

» brew options ffmpeg 
--with-chromaprint
 Enable the Chromaprint audio fingerprinting library
--with-fdk-aac
 Enable the Fraunhofer FDK AAC library
--with-fontconfig
 Build with fontconfig support
  ..............................

装置的时候,相似上面这样,你能够自行抉择要装置哪些配置选项,这里倡议大家把下面所有的 option 都加上

brew install ffmpeg --with-chromaprint --with-fdk-aac --with-xxx ......
2、Homebrew 版本大于 2.0

如果你的 Homebrew 版本大于 2.0,通过 brew options ffmpeg,你会发现终端没有输入任何 options。这是怎么回事呢?

ffmpeg 官网说了“Since v2.0, Homebrew does not offer options for its core formulae anymore. Users who want to build ffmpeg with additional libraries (including non-free ones) need to use so-called taps from third party repositories. These repositories are not maintained by Homebrew.”,大略意思是说从 Homebrew2.0 开始,Homebrew 不再为其外围公式提供配置选项。所以想要扩大其余库的小伙伴须要抉择第三方的存储库 homebrew-ffmpeg。当然你也能够间接抉择 brew install ffmpeg,不带任何扩大库,然而这样装置的后果短少很多编解码库,略微简单的命令都执行不了。

首先执行 brew tap 命令

brew tap homebrew-ffmpeg/ffmpeg

而后再看下这个仓库反对的 options

brew options homebrew-ffmpeg/ffmpeg/ffmpeg

最初 install 的时候同样把这些 options 加上,相似上面这样

brew install homebrew-ffmpeg/ffmpeg/ffmpeg --with-chromaprint --with-fdk-aac --with-xxx ......

装置须要肯定的工夫,装置完之后间接在终端测试 ffmpeg 是否装置胜利

» ffmpeg -version
ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.10.44.4)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gpl --enable-libmp3lame --enable-libopus --enable-libsnappy --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-chromaprint --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libgme --enable-libgsm --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-librsvg --enable-librtmp --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtesseract --enable-libtwolame --enable-libvidstab --enable-libwavpack --enable-libwebp --enable-libzmq --enable-opencl --enable-openssl --enable-videotoolbox --enable-libopenjpeg --disable-decoder=jpeg2000 --extra-cflags=-I/usr/local/Cellar/openjpeg/2.3.0/include/openjpeg-2.3 --enable-nonfree
  libavutil      56\. 22.100 / 56\. 22.100
  libavcodec     58\. 35.100 / 58\. 35.100
  libavformat    58\. 20.100 / 58\. 20.100
  libavdevice    58\.  5.100 / 58\.  5.100
  libavfilter     7\. 40.101 /  7\. 40.101
  libavresample   4\.  0\.  0 /  4\.  0\.  0
  libswscale      5\.  3.100 /  5\.  3.100
  libswresample   3\.  3.100 /  3\.  3.100
  libpostproc    55\.  3.100 / 55\.  3.100

如果你用的仓库是 homebrew-ffmpeg/ffmpeg/ffmpeg,版本应该也是 4.x 的,惟一的不同可能多了几个 options。

然而无论下面哪种状况,你都应该至多指定配置选项 option,因为咱们前面针对 ffmpeg 的操作会有些简单。

退出移动版