Shotcut Encoders: h264_nvenc vs h264_qsv vs h264_vaapi

Sep 22, 2026

A Shotcut hardware encoder name is two pieces glued together: the codec in front of the underscore, and the hardware backend behind it. So h264_nvenc is H.264 encoded by NVIDIA's encoder, h264_qsv is the same codec through Intel Quick Sync, and h264_vaapi is the same codec through the Linux VAAPI stack.

That much is easy. The part that trips people up is that Shotcut's official documentation explains two of those backends and leaves the rest scattered across the release notes — so searching the User Guide for "qsv" or "amf" comes up short even though those encoders are real and shipping. This page puts the naming rule and the backend list in one place, with the official source for each line.

The naming rule, as the User Guide states it

The Shotcut User Guide (June, 2026) lists the encoders like this:

h264_vaapi -- H.264 encoding using VAAPI
hevc_vaapi -- HEVC (H.265) encoding using VAAPI
av1_vaapi -- AV1 encoding using VAAPI (if supported)
h264_nvenc
hevc_nvenc

And it spells out the two suffixes directly:

"_vaapi -- Linux VAAPI backend"

"_nvenc -- NVIDIA hardware encoder"

with one sentence of context for each: "NVENC is NVIDIA's proprietary hardware encoder." and "VAAPI (Video Acceleration API) is commonly used on Linux systems."

So the prefix is the codech264, hevc, av1 — and the suffix is the silicon and API doing the work. Once you know that, a name you have never seen before still parses: hevc_qsv is HEVC on Intel Quick Sync, av1_amf is AV1 on AMD.

Every suffix, and where Shotcut documents it

The User Guide's section on common hardware encoder types explains VAAPI and NVENC. The remaining backend names appear in Shotcut's release notes instead, which is why they are hard to find:

SuffixBackendOfficial source
_nvencNVIDIA hardware encoderUser Guide, Hardware Encoding
_vaapiLinux VAAPI backendUser Guide, Hardware Encoding
_qsvIntel Quick Sync VideoRelease notes 20.07.11 and 23.05.07
_amfAMDRelease notes 24.02.29 and 25.12.30
_mfWindows on ArmRelease notes 25.01.25
_videotool, _toolboxmacOSRelease notes 26.2.26 and 24.08.29

The release note wording, verbatim and with versions attached, because these are records of what changed in a given build rather than statements about today:

  • As of Release 20.07.11: "Fixed Quick Sync Video hardware encoder (h264_qsv or hevc_qsv with Quality-based VBR) not working on Windows on older Intel chips."
  • As of Release 23.05.07: "Added support for Intel (“qsv”) AV1 and VP9 hardware encoders on Windows including 10-bit for AV1."
  • As of Release 24.02.29: "Added support for AMD AV1 hardware encoder on Windows (av1_amf) and Linux (av1_vaapi)."
  • As of Release 25.01.25: "Added Export hardware encoding for Windows on Arm CPUs (h264_mf and hevc_mf codecs)."
  • As of Release 26.2.26: "Fixed choosing Export > Codec > h264_videotool on macOS not reliably setting B frames to 0."
  • As of Release 24.08.29: "Fixed the hevc_toolbox hardware video encoder fails detection on some Intel Macs."

Two things worth noticing. First, the AMD note is the cleanest illustration of the naming rule in the whole archive: the same AV1 feature is av1_amf on Windows and av1_vaapi on Linux, because the suffix tracks the API, not the vendor. Second, the macOS names are not spelled consistently across the notes — h264_videotool in one, hevc_toolbox in another. Match what your build actually shows rather than assuming a pattern.

For Linux specifically, Release 22.01.30 records: "Improved compatibility of VA-API hardware encoding on Linux, particularly on Wayland."

Why the encoder you want is not in the list

This is the single most useful sentence in the Hardware Encoding section, and it answers most "why is it greyed out" questions:

"Unchecked options mean: The encoder exists in Shotcut But is not available on your system"

An unchecked box is not a disabled feature. Shotcut "automatically scans the system and lists all hardware encoders it can access on the current operating system," and the guide lists what availability depends on: "Your GPU vendor (Intel, AMD, NVIDIA)", "Installed drivers", "Operating system support", "Enabled APIs (VAAPI, NVENC, etc.)".

For NVENC the guide is even more explicit — those entries "appear only if: An NVIDIA GPU is present Proper NVIDIA drivers are installed", and "If unchecked, it usually means no NVIDIA GPU is detected." The Quick Start table adds the blunt version: "If nothing is detected then your graphics card is not compatible."

Practically: on a Windows machine with an Intel CPU and no NVIDIA card, expect _qsv and not _nvenc. On Linux, expect _vaapi. The dialog is describing your hardware, not Shotcut's opinion. HandBrake users hit the same wall for the same reason — see why NVENC and QSV are greyed out in HandBrake.

What changes when you switch backends

Less than people expect, and not in the direction they expect. The guide's "Important nuance" box says it outright:

"Hardware encoding is usually less compression-efficient, not lower quality."

"The visual quality difference is often small or invisible; the difference is usually in bitrate efficiency, not obvious artifacts."

Which is why the same section warns that "File sizes may be larger at the same quality target" and "Advanced tuning options are limited", while still concluding: "For most practical use cases, quality remains very good."

So a bigger file out of h264_nvenc than out of software x264 is documented behaviour, not a misconfiguration. If that export now has to fit a platform cap, shrink it after the fact instead of fighting the encoder settings:

Try it right here

Runs in your browser. Your file is not uploaded anywhere.

Loading tool…

That runs entirely in your browser tab — the file is read from disk, re-encoded locally, and handed back, with nothing uploaded. If you would rather tune the export itself, the guide's own recommendation is to "Enable hardware encoding for: Long exports High-resolution video Preview or draft renders Laptop or low-power systems" and to "Prefer software encoding for: Maximum compression efficiency Archival-quality exports Advanced codec tuning". The same trade-off shows up in other editors — compare with hardware acceleration in DaVinci Resolve.

Three gotchas attached to the name

10-bit and h264_. Release 26.6.25 records the fix "10-bit H.264 encoder fails with hardware encoding on", and explains: "No H.264 hardware encoders support 10-bit; this change simply makes it use software encoding with x264." That limit is about H.264 specifically — earlier notes record 10-bit fixes for NVENC encoders (Release 24.01.28) and for "amf (AMD) and mf (Windows on Arm) hardware encoders" (Release 25.12.30).

av1_ prefixes exist, with caveats. The Export Basics section says hardware encoding "currently only supports the H.264 (aka AVC) and HEVC (aka H.265) codecs", while the Hardware Encoding section in the same guide lists "av1_vaapi -- AV1 encoding using VAAPI (if supported)" and "av1_nvenc (newer GPUs only)", and describes AV1 as having limited hardware support. The release notes above add AV1 encoders three separate times. Both passages are official; keep the qualifiers rather than reading the AV1 entries as a guarantee.

HDR ignores hardware encoders entirely. Release 26.6.25: "Export only embeds PQ HDR metadata for the libx265 and libsvtav1 video codecs and no hardware encoders."

FAQ

What does the _qsv suffix mean in Shotcut? Intel Quick Sync Video. Shotcut's release notes name h264_qsv and hevc_qsv (Release 20.07.11) and Intel qsv AV1 and VP9 encoders on Windows (Release 23.05.07). The User Guide's explanation of common hardware encoder types covers VAAPI and NVENC, so the _qsv name is documented in the release notes rather than there.

Is h264_nvenc better than h264_qsv or h264_vaapi? The official pages we could find do not compare the backends head to head — check the official documentation before assuming a ranking. What the guide does say applies to hardware encoding as a whole: "Hardware encoders prioritize speed and consistency", compression efficiency "may be slightly lower", and the recommended cases are long exports, high-resolution video, draft renders and low-power systems.

Why does h264_vaapi not appear on my Windows machine? The guide describes VAAPI as "commonly used on Linux systems", and an unchecked entry means the encoder exists in Shotcut but is not available on your system. Availability depends on GPU vendor, drivers, operating system support and enabled APIs.

Can I export 10-bit H.264 with a hardware encoder? Release 26.6.25 states that no H.264 hardware encoders support 10-bit, and that Shotcut falls back to software encoding with x264 in that case. The same limitation is not stated for HEVC or AV1 paths.

My hardware export is larger than the software one — is something wrong? No. The guide says file sizes may be larger at the same quality target, and frames the difference as bitrate efficiency rather than visible quality. Compress afterwards if you need a smaller file; see all Clapr tools or the video compressor.


All quotes above come from the Shotcut User Guide (June, 2026) and the official Shotcut release notes, read from the September 2026 snapshot. Release notes describe what changed in a specific version, not the current state — check the official documentation for anything you plan to rely on. More export walkthroughs live in the guides hub.

Clapr team

Clapr team

Shotcut Encoders: h264_nvenc vs h264_qsv vs h264_vaapi | Clapr Blog