用途:在需要 GPU 加速时启用该技能,适用于编码速度关键(比 CPU 快 10-30 倍)、大批量视频处理、实时流媒体编码、服务器端大规模转码以及带 GPU 直通的 Docker 容器。GPU 编码以部分画质换取大幅提速,可用 -cq、-qp 或 -global_quality 控制质量。
主要能力:覆盖各平台编码器与解码器,如 NVIDIA 的 h264_nvenc、hevc_nvenc、av1_nvenc 与 h264_cuvid、hevc_cuvid;Intel QSV 的 h264_qsv、hevc_qsv、av1_qsv;AMD AMF 的 h264_amf、hevc_amf、av1_amf;Apple 的 h264_videotoolbox、hevc_videotoolbox;Linux VAAPI 的 h264_vaapi、hevc_vaapi、av1_vaapi;Vulkan 的 h264_vulkan、hevc_vulkan、av1_vulkan、ffv1_vulkan。检测命令如 ffmpeg -encoders | grep nvenc、ffmpeg -hwaccels,版本用 ffmpeg -version 查看。
使用方式:先检测可用后端,优先选厂商原生方案(NVIDIA 用 NVENC、Intel 用 QSV、AMD 用 AMF、Apple 用 VideoToolbox),跨平台可考虑 Vulkan。尽量构建全 GPU 管线:在 -i 前加 -hwaccel <api> 与 -hwaccel_output_format <api>,使用 GPU 侧滤镜(scale_cuda、scale_vulkan、vpp_qsv 等),再配对应硬件编码器。省略 -hwaccel_output_format 可能使吞吐下降最多 50%,因为解码帧会经 CPU 内存往返。质量调优涉及 -preset(NVENC p1-p7)、-cq/-qp/-global_quality、lookahead、spatial/temporal AQ;用 ffmpeg -benchmark 与 nvidia-smi dmon、intel_gpu_top 验证。
适用场景:低延迟直播、点播质量优先编码、批量并行编码、Docker GPU 直通转码。
限制:GPU 编码画质通常低于 CPU 的 libx264/libx265;各后端支持范围不同,如 AMF 无硬件解码、VideoToolbox 仅 macOS、VAAPI 仅 Linux;质量随 GPU 代际变化,需在目标硬件上实测;高分辨率内容需关注显存占用,并保持驱动更新。