无法使用 FFMPEG 转码视频

Unable to use FFMPEG to transcode video

我在使用 nzbtomedia (https://github.com/clinton-hall/nzbToMedia/) 自动转码视频时遇到以下错误。

转码器 returned:b"Unknown encoder 'libx264'\n" 失败

如何安装此编码器?

树莓派 (Raspberry PI)

附加信息:

FFMPEG 版本

ffmpeg version N-96192-g2ff687c17f Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 8 (Raspbian 8.3.0-6+rpi1)
configuration: 
libavutil      56. 38.100 / 56. 38.100
libavcodec     58. 65.100 / 58. 65.100
libavformat    58. 35.101 / 58. 35.101
libavdevice    58.  9.101 / 58.  9.101
libavfilter     7. 69.101 /  7. 69.101
libswscale      5.  6.100 /  5.  6.100
libswresample   3.  6.100 /  3.  6.100

ffmpeg-编码器 | grep 264

ffmpeg version N-96192-g2ff687c17f Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8 (Raspbian 8.3.0-6+rpi1)
  configuration: 
  libavutil      56. 38.100 / 56. 38.100
  libavcodec     58. 65.100 / 58. 65.100
  libavformat    58. 35.101 / 58. 35.101
  libavdevice    58.  9.101 / 58.  9.101
  libavfilter     7. 69.101 /  7. 69.101
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
 V..... h264_v4l2m2m         V4L2 mem2mem H.264 encoder wrapper (codec h264)

似乎 Raspbian ffmpeg 包缺少 libx264 支持。我建议尝试更改 VCODEC nzbToMedia 配置以使用 "h264_v4l2m2m" 或安装支持 libx264 的 ffmpeg 版本。

这是讨论缺少 libx264 支持问题的论坛帖子https://www.raspberrypi.org/forums/viewtopic.php?t=184425

您似乎遵循了这个 ancient wiki guide,您在没有启用 libx264 的情况下编译了 ffmpeg。

我猜您正在使用 Raspbian Buster,官方存储库目前提供启用了 libx264 的 FFmpeg 4.1.4。所以卸载你编译的ffmpeg:

cd ~/ffmpeg
sudo make uninstall

然后从存储库安装 ffmpeg:

sudo apt install ffmpeg

现在当你 运行 ffmpeg 它应该在输出中显示 --enable-libx264

您可能还会看到 --enable-omx --enable-omx-rpi --enable-mmal 这将允许 decoding/encoding 的硬件:

  • H.264 编码 (-c:v h264_omx) & 解码 (-c:v h264_mmal)
  • MPEG-4 第 2 部分视频编码 (-c:v mpeg4_omx) 和解码 (-c:v mpeg4_mmal)
  • MPEG-2 视频解码 (-c:v mpeg2_mmal)
  • VC-1解码(-c:v vc1_mmal)