Repository navigation
Ship ffmpeg with NVENC and NVDEC on aarch64 - #2074
Merged
Merged
Conversation
Arch Linux ARM's ffmpeg 2:9.0.2-2 with ffnvcodec-headers, --enable-nvenc and --enable-nvdec back. ALARM has left them out since 2018, so on the NVIDIA GB10 and N1x nothing that encodes through ffmpeg reaches NVENC: gpu-screen-recorder and omarchy screenrecord fail with "neither h264, hevc nor av1 are supported". Same sonames and symbols, so packages built against ALARM's ffmpeg use this one unchanged; NVENC and NVDEC load the driver at run time. aarch64 only, as 2:9.0.2-2.1, carried like aquamarine. Offered upstream as archlinuxarm/PKGBUILDs#2234; drop it once ALARM enables them. Not synced automatically: it follows ALARM's ffmpeg by hand until then. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ryanrhughes
enabled auto-merge (squash)
November 3, 2026 16:17
[Medium impact] The PR appears safe to merge; no actionable issues were found. SummaryAdds an aarch64-only
Acknowledged by Reviews (1) · Last reviewed commit: "Ship ffmpeg with NVENC and NVDEC on aarc..." · Reviewed by Greptile |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On aarch64, this ships Arch Linux ARM's
ffmpeg 2:9.0.2-2with NVIDIA's encoders and decoders enabled again, as2:9.0.2-2.1. It is carried the same way asaquamarine, and[omarchy]comes first in pacman.conf.Why:
ffnvcodec-headers,--enable-nvencand--enable-nvdecsince 2018 (28e86f7cb, f3e5cbe25; no reason given). That predates any aarch64 NVIDIA GPU.omarchy screenrecord, fails with "neither h264, hevc nor av1 are supported".The change against ALARM's PKGBUILD (72248ab7d):
ffnvcodec-headersadded to makedepends.--enable-nvdec --enable-nvenc.nvidia-utilsoptdepend.arch=(aarch64)andpkgrel=2.1..omarchy/package.jsonsets"sync": false: the recipe follows ALARM's ffmpeg by hand. A newer ALARM build replaces it, without NVENC, until the upstream PR lands.Upstream: archlinuxarm/PKGBUILDs#2234 makes the same change. Drop this carry once ALARM ships it.
Checked on a DGX Spark (GB10, nvidia-utils 615.78.08)
bin/build --package ffmpeg --arch aarch64buildsffmpeg-2:9.0.2-2.1-aarch64.pkg.tar.zst. Its libraries listh264_nvenc,hevc_nvencandav1_nvenc.*_cuviddecoders, 11*_cudafilters and the cuda hwaccel. The installed gpu-screen-recorder 6.1.6 records through the new libraries, including the full 6016x3384 screen (HEVC).tests/pinned-sources.sh,tests/package-metadata.shandtests/pkgname-unique.shpass.🤖 Generated with Claude Code