是否可以让 FFmpeg 在 macOS 上使用硬件加速进行 HEVC 转码?

Mis*_*sha 8 ffmpeg h.265 macos

我有一台配备 Kaby Lake 处理器的 MacBook Pro,运行 macOS High Sierra (10.12)。是否有可能以某种方式设置 FFmpeg 以使用带有工具箱的 HEVC 硬件编码,而不是 libx265?

Den*_*gai 9

在 macOPS 上有 videotoolbox。

检查编码器选项:

ffmpeg -hide_banner -h encoder=hevc_videotoolbox
Run Code Online (Sandbox Code Playgroud)

输出:

Supported pixel formats: videotoolbox_vld nv12 yuv420p
hevc_videotoolbox AVOptions:
  -profile           <int>        E..V.... Profile (from 0 to 3) (default 0)
     main                         E..V.... Main Profile
     main10                       E..V.... Main10 Profile
  -allow_sw          <boolean>    E..V.... Allow software encoding (default false)
  -realtime          <boolean>    E..V.... Hint that encoding should happen in real-time if not faster (e.g. capturing from camera). (default false)
  -frames_before     <boolean>    E..V.... Other frames will come before the frames in this session. This helps smooth concatenation issues. (default false)
  -frames_after      <boolean>    E..V.... Other frames will come after the frames in this session. This helps smooth concatenation issues. (default false)
Run Code Online (Sandbox Code Playgroud)

如果你最近有一台 Mac,也许你可以用它来测试。

有关 videotoolbox 的更多信息:https : //developer.apple.com/documentation/videotoolbox

如您所见,它利用了 macOS 上可用的基于硬件的编码器,为跨多个抽象的视频编码提供统一的 API(英特尔在受支持的英特尔 IGP 上的 QuickSync 等)。

在此处获取构建:https : //evermeet.cx/ffmpeg/