【问题标题】:ffmpeg unable to find encoder libvpxffmpeg 找不到编码器 libvpx
【发布时间】:2012-06-15 17:37:30
【问题描述】:

当我跑步时

ffmpeg -y -i test.mov -threads 8 -f webm -aspect 16:9 -vcodec libvpx -deinterlace -g 120 -level 216 -profile 0 -qmax 42 -qmin 10 -rc_buf_aggressivity 0.95 -vb 2M -acodec libvorbis -aq 90 -ac 2 OUTPUT_FILE.webm

它返回一个错误说Unknown encoder 'libvpx'

我通过 macports 安装了 libvpx、libvorbis、libogg 和 ffmpeg

【问题讨论】:

  • 运行ffmpeg -v 并检查它是否使用--enable-libvpx 构建。很可能您需要不同的构建或自己编译。
  • 哦,没有libvpx,有没有用libvpx等构建的macport?

标签: ffmpeg libvpx


【解决方案1】:

由于所有依赖项,从源代码构建 ffmpeg 在 OS X 上是一场噩梦。您需要几天时间才能正确构建它。

不要打扰。

只需从 https://www.ffmpeg.org/download.html 下载静态二进制文件并将其复制到 /usr/local/bin 中

【讨论】:

  • 请务必将鼠标悬停在 Apple 徽标上以使页面显示 OSX 下载(我在进入页面时不知道这一点)。
  • 通过 Homebrew 无缝构建,带有选项 --with-libvpx--with-libvorbis。花了大约 5 分钟。
【解决方案2】:

您的 macports 配置不是使用 libvpx 构建的。尝试卸载 ffmpeg 并使用Homebrew 安装包而不是 macports:

brew install ffmpeg --with-libvpx

or

brew reinstall ffmpeg --with-libvpx

那么你的命令应该可以工作了。

【讨论】:

  • 我不知道为什么,但是当我只使用 libvpx 和 libvorbis 重新安装时,我仍然遇到 webm 错误。然而,当我做所有这些时,它奏效了。不确定哪个标志是修复。 brew reinstall ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-frei0r --with-libass --with-libvo-aacenc --with-libvorbis --with-libvpx --with-opencore-amr --with-openjpeg --with-opus --with-rtmpdump --with-speex --with-theora --with-tools
  • --with-libvorbis 也是需要的。 webm 需要 vorbis 进行音频压缩。如果您有来自 ffmpeg 的实验性编码器警告,也可以将 --with-theora 添加到编译器选项中。
  • 在 brew 中不再需要新的 ffmpeg 了!只需升级它:brew upgrade ffmpeg
【解决方案3】:

我不确定如何以及是否可以更改 Macports 上的默认配置。无论如何,您可以手动完成。

打开终端并 cd 到您的首选目录。在安装之前,请检查您是否安装了 ffmpeg,安装位置和版本。再次使用which ffmpegport uninstall ffmpegwhich ffmpeg 来验证 ffmpeg 是否已正确卸载。

从以下位置下载源代码:

git clone https://github.com/FFmpeg/FFmpeg ffmpeg

cd 到 ffmpeg 目录

cd ffmpeg

使用您的配置进行配置和制作,使用“./configure --help”获取有关可能配置的信息

./configure --extra-cflags=-I/opt/local/include --extra-ldflags=-L/opt/local/lib --enable-gpl --enable-version3 --enable-nonfree --enable-libvpx --enable-libvorbis

我建议添加额外的 c/ld 标志,因为 /opt/local/ 是默认的 macport 安装目录。

制作、安装ffmpeg

make
sudo make install

这些步骤中有很多后备,如果您有任何问题,请在 cmets 中询问。

【讨论】:

  • 这不是咆哮,而是为您的回答 +1。但是现在使用自制软件。它让您的生活变得如此轻松!
  • 真的。我自己使用自制软件进行本地开发,但对于我的生产/部署厨师脚本,我仍然手动编译 ffmpeg。
  • 如果您认为 configure 出错了,请确保您使用的是 Git 的最新版本。如果最新版本失败,请将问题报告给 ffmpeg-user@ffmpeg.org 邮件列表或 irc.freenode.net 上的 IRC #ffmpeg。包含 configure 生成的日志文件“config.log”,因为这将有助于解决问题。
  • 有道理。这个答案是 4 年前给出的,请关注 ./configure --help 以获得编译帮助或使用像 homebrew 这样的包生成器
猜你喜欢
  • 2013-10-27
  • 2021-03-01
  • 1970-01-01
  • 2011-04-13
  • 2020-02-04
  • 2012-07-24
  • 2017-08-24
  • 2014-05-25
  • 2014-11-23
相关资源
最近更新 更多