Blog hardware-acceleration
VideoToolbox vs NVENC vs Quick Sync vs AMF (2026)
Hardware video encoders are 5–20× faster than software ffmpeg, with a small quality cost. What each one does, when to use it, and how Video Forge auto-picks.
Video Forge lights up the speed difference between software and hardware encoding very visibly. A 4K, two-minute clip encoding to 1080p H.265 with libx265 (software) takes about 7 minutes on an M2 Pro. With VideoToolbox (hardware), the same job finishes in 38 seconds. That’s the difference between watching a progress bar and grabbing another coffee.
This post is the practical comparison: what each hardware encoder is, how they differ, when to pick each one, and how to know which is active on your machine.
TL;DR
Four hardware encoders matter in 2026:
| Encoder | Vendor | Where it ships | Codecs |
|---|---|---|---|
| VideoToolbox | Apple | All Apple Silicon Macs (M1+) | H.264, H.265, ProRes |
| NVENC | NVIDIA | GeForce GTX 600+ / RTX / Quadro | H.264, H.265, AV1 (RTX 40+) |
| Quick Sync (QSV) | Intel | Intel CPUs (Sandy Bridge+, 2011) | H.264, H.265, AV1 (Arc) |
| AMF | AMD | RX 400+ GPUs and Ryzen APUs | H.264, H.265, AV1 (RDNA 3+) |
Speed: NVENC > VideoToolbox > Quick Sync > AMF. Quality at fixed bitrate: VideoToolbox ≈ NVENC > Quick Sync > AMF. Quality-per-watt: VideoToolbox wins by a wide margin.
Video Forge auto-detects which one is available on your machine at startup and defaults to it. You can pin a specific backend in Settings if you have preferences.
What hardware encoders actually do
Every modern CPU and GPU contains a dedicated silicon block whose only job is encoding/decoding video. It’s not the main CPU cores doing the work. The dedicated block has fewer tunable knobs than a software encoder like libx264, but it’s purpose-built for the operation, so it runs at many times the speed.
When you run an ffmpeg command with -c:v h264_videotoolbox, ffmpeg passes
the frames to the Media Engine on the Apple Silicon chip and reads back
encoded H.264 bitstream. The CPU cores are mostly idle during the encode
— they’re just shuffling buffers.
The trade-off is configurability. libx264 has roughly 50 tunable parameters
(-preset slow -tune film -profile high and dozens more). VideoToolbox has
five or six (-allow_sw 0 -realtime 0 -q:v 50). The hardware encoder
makes a lot of decisions for you. Sometimes those decisions are great;
sometimes they’re slightly worse than what a tuned software encode would
produce.
Apple VideoToolbox
Available on every Mac built since 2020 (when the M1 launched). Earlier Intel Macs have VideoToolbox too but the encoders there are slower and lower-quality than the dedicated Media Engine on Apple Silicon.
Strengths:
- Excellent quality on M2 and M3-generation chips. Apple’s H.265 encoder on M2 is competitive with libx265 at “medium” preset.
- Extremely energy-efficient. Battery-powered encoding is viable.
- Stable and well-documented. No driver versioning to worry about.
Weaknesses:
- No AV1 encoding (yet — likely arriving in M5 or M6).
- Limited control over advanced features (no PSNR tuning, no constrained encoding modes).
- B-frames are supported but the implementation is conservative compared to libx264.
ffmpeg flags:
# H.264
ffmpeg -i input.mov -c:v h264_videotoolbox -b:v 5M output.mp4
# H.265
ffmpeg -i input.mov -c:v hevc_videotoolbox -b:v 3M -tag:v hvc1 output.mp4
-tag:v hvc1 is the magic flag to make Apple’s H.265 in MP4 play in
QuickTime and Safari. Without it, you get a valid HEVC file that won’t
play on Apple devices. This is the same fix discussed in the MOV → MP4
post for files with hev1 tagging.
NVIDIA NVENC
Available on every NVIDIA GeForce GTX 600-series and newer (2012+). The current generation (RTX 40-series, Ada Lovelace architecture) is the fastest video encoder in the consumer market.
Strengths:
- Fastest in the field. 4K H.265 at 200+ fps on an RTX 4090.
- Excellent quality on RTX 30 and 40-series. The 7th-generation NVENC on Ada is competitive with libx265 at “fast” preset.
- AV1 encoding on RTX 40-series (the first consumer hardware AV1 encoder).
- Mature ffmpeg integration; well-documented flags.
Weaknesses:
- Locked to NVIDIA hardware (obviously).
- The first NVENC generation (Kepler/Maxwell) had visibly weaker quality than software. Anything from Turing (2018+) is fine.
- Per-card session limits on consumer cards (3 simultaneous encodes on GeForce; unlimited on Quadro/RTX A-series).
ffmpeg flags:
# H.265
ffmpeg -i input.mov -c:v hevc_nvenc -preset p7 -rc vbr \
-cq 22 -b:v 0 output.mp4
# AV1 (RTX 40+ only)
ffmpeg -i input.mov -c:v av1_nvenc -preset p7 -cq 28 output.mp4
-preset p7 is the slowest, highest-quality preset. p1 is the fastest.
NVENC presets are numbered, not named — they don’t correspond to libx264
preset names.
Intel Quick Sync (QSV)
Every Intel CPU since Sandy Bridge (2011) has Quick Sync. The implementation has improved enormously over 14 years; quality on a 13th-gen Core CPU is much better than on a 4th-gen.
Strengths:
- Ubiquity. Almost every Intel-based PC has it.
- Energy-efficient — uses the CPU’s iGPU silicon, not discrete GPU power.
- Excellent low-latency mode for streaming/screen capture.
- AV1 encoding on Intel Arc GPUs (A380 and up).
Weaknesses:
- Quality varies wildly across generations. 6th-gen and earlier are noticeably weaker. 11th-gen+ is genuinely good.
- ffmpeg integration is a bit fiddly compared to NVENC/VideoToolbox.
ffmpeg flags:
ffmpeg -hwaccel qsv -i input.mov -c:v hevc_qsv -global_quality 22 \
-preset slower output.mp4
AMD AMF / VCN
AMD’s video encoder, present in Radeon RX 400-series and newer (2016+), and Ryzen APUs. AMF stands for “Advanced Media Framework”; VCN is “Video Core Next,” the actual silicon.
Strengths:
- Available on every recent Radeon GPU.
- AV1 encoding on RX 7000-series (RDNA 3+).
- Improving quickly — RDNA 3 closed most of the gap with NVENC.
Weaknesses:
- Historically the weakest quality of the four. AMD’s encoder work lagged NVIDIA’s for years.
- Linux support has been patchier than NVIDIA’s.
- Fewer rate-control knobs than NVENC.
ffmpeg flags:
ffmpeg -i input.mov -c:v hevc_amf -quality quality \
-rc vbr_latency -b:v 4M output.mp4
Software encoders (for comparison)
These are the ffmpeg defaults — pure software, run on CPU cores:
- libx264 — H.264 encoder. Reference quality. Highly tunable. Slow.
- libx265 — H.265 encoder. Same lineage. 2 to 4× slower than libx264 at matching quality.
- libsvtav1 — AV1 encoder from Intel/Netflix. Fast for AV1 (still slow in absolute terms). The practical AV1 choice.
- libaom-av1 — reference AV1 encoder. Highest quality. Extremely slow.
- libvpx-vp9 — VP9 encoder. Slow. Almost no reason to use it outside YouTube ingestion.
Software encoding wins on quality-per-bit at unlimited time budget. Hardware wins on every other axis.
How Video Forge picks for you
At startup, Video Forge probes ffmpeg to see which encoders are available
and which actually function on the machine (the check is a tiny 1-second
encode of a generated test pattern). The list is cached. The detection
runs in src-tauri/src/ffmpeg/hwaccel.rs if you want to read the code.
When you click Convert with a destination selected, Video Forge picks the best available backend:
- Auto mode (default) — picks VideoToolbox on Mac arm64, NVENC on Windows + NVIDIA, Quick Sync on Windows + Intel, AMF on Windows + AMD, falls back to software if nothing else works.
- Forced mode — in Settings, you can pin a specific backend. Useful if you have an NVIDIA and Intel iGPU and want to always use NVENC.
You can verify which backend ran for a job by hovering the job in History — it shows the encoder name from the actual ffmpeg invocation.
Practical recommendations
- On a Mac: use VideoToolbox unless you specifically need AV1, in which case fall back to libsvtav1 in software.
- On a Windows PC with NVIDIA GPU: use NVENC. It’s the fastest and the quality is excellent.
- On a Windows PC without dedicated GPU: use Quick Sync if you’re on Intel (11th-gen or newer); fall back to libx264 software if quality matters more than speed.
- For long-term archive: use software libx265 or libsvtav1. The quality-per-byte difference adds up over terabytes. The H.264 vs H.265 vs AV1 comparison covers the actual size-vs-time math.
- For streaming or screen recording: hardware, every time. Low-latency modes shine here.
- For hitting an exact file size: hardware encoders can do two-pass encoding, but software encoders hit the target more reliably.
FAQ
What is hardware-accelerated video encoding? Hardware-accelerated video encoding uses dedicated silicon (the Media Engine in Apple Silicon, NVENC in NVIDIA GPUs, Quick Sync in Intel CPUs, AMF in AMD GPUs) to compress video, instead of using general-purpose CPU cores. The result is 5 to 20× faster encoding.
Does hardware encoding hurt quality? Slightly. At a fixed bitrate, hardware encodes are 5 to 15% worse than software in PSNR benchmarks. At a fixed quality target, hardware files are 10 to 25% larger. The speed-up is usually worth the trade.
Which hardware encoder is the best? For speed: NVIDIA NVENC on a 40-series. For quality-per-bit at speed: Apple VideoToolbox on M2+. Quick Sync is the most broadly available. AMF works but lags slightly.
Should I use software or hardware encoding? Hardware when speed matters or the encode is part of an iteration loop. Software when quality matters more than time and it’s the final delivery version.
Does Video Forge pick the right one automatically? Yes. On startup it detects available encoders. Auto-mode picks the best for your platform. You can pin a specific backend in Settings.
Video Forge auto-detects VideoToolbox, NVENC, Quick Sync, and AMF on launch and uses the right one for your machine. 10 free conversions, $5 lifetime.