ffmpeg7.1
Build times (auto-updated)
- x86_64: 7m50s (2026-09-24 14:29 UTC, MAKEFLAGS=-j6)
- aarch64: 54m9s (2026-09-24 15:23 UTC, remote, MAKEFLAGS=-j4)
Migrated 2026-09-24 from local-install/ (untracked, plain AUR clone)
to adapted/ffmpeg7.1 (git-tracked) – see that date’s entry below for
why. The install_only_packages line for it is gone.
Built x86_64 only, purely as a dependency: [[makemkv]]’s makemkv-oss
component (libffabi/src/ffabi.c) needs AVCodec struct fields
(ch_layouts, sample_fmts, supported_samplerates) that current
extra/ffmpeg (9.0.1) removed. ffmpeg4.4 doesn’t exist on the AUR;
ffmpeg7.1 was the closest available versioned build still old enough
to keep those fields.
Coinstallable by design, no RPATH hacking needed
This AUR package namespaces its headers under
/usr/include/ffmpeg7.1/ and its dev symlinks + pkgconfig under
/usr/lib/ffmpeg7.1/ (--incdir/--libdir in its configure call)
so it doesn’t clash with the main ffmpeg package’s own
/usr/include//usr/lib files. But the actual soname-versioned
runtime libraries (libavcodec.so.61 etc.) install straight into
the normal system libdir /usr/lib/ — since ffmpeg7.1 uses soname 61
and current extra/ffmpeg (9.0.1) uses soname 63, there’s no
collision, and any binary linked against ffmpeg7.1 finds its runtime
.so.61 via the normal ld.so cache with no RPATH or ld.so.conf.d
entry required. To link something against it at build time: -I
/usr/include/ffmpeg7.1 and -L/usr/lib/ffmpeg7.1 -lavcodec ... (or
PKG_CONFIG_PATH=/usr/lib/ffmpeg7.1/pkgconfig).
2026-08-14 build
Published x86_64 7.1.3-1 (ffmpeg7.1 + ffmpeg7.1-debug), clean
build (large dependency list, most already satisfied by the system’s
existing multimedia stack).
2026-08-27 rebuild (libbluray soname bump)
libbluray 1.5.0-1 landed in extra with soname bump
(libbluray.so=3), breaking the installed ffmpeg7.1 7.1.3-1 which
was linked against soname 2. AUR itself hadn’t bumped pkgver (still
7.1.3), so this was a packaging-only rebuild: pkgrel bumped
1 -> 1.1 (X.Y scheme per [[feedback_local_install_rebuilds]]), no
source/PKGBUILD content changes. Fresh clone + repo_release.sh,
clean x86_64-only build, published without incident. Old 7.1.3-1
archived normally.
2026-09-24: migrated to adapted/, aarch64 added
Needed a real local deviation (aarch64 added to arch=()) to unblock
[[makemkv]]’s aarch64 build – local-install/’s whole convention is
unmodified upstream PKGBUILDs (see
[[feedback_local_install_rebuilds]]), so this no longer fit there.
Moved the working tree from /data/INSTALL/ffmpeg7.1 (dropped its
nested .git, since adapted/ isn’t itself a submodule here) into
arch/adapted/ffmpeg7.1, removed the install_only_packages line.
Depended on [[svt-av1]] being built for aarch64 first (new
adapted/svt-av1, see its own memory file) – official
extra/svt-av1 never had an aarch64 build, and it’s this package’s
only genuinely-missing dependency on that arch (every other apparent
gap from pacman -Si was a false negative against a provides=
match: jack2 satisfies jack, libglvnd satisfies libgl, sdl2-compat
satisfies sdl2, libvpl satisfies onevpl).
pkgrel 1.1 -> 1.2. Built + published clean: x86_64 (refresh,
7m50s) and aarch64 (new, 54m9s on eurobuild14 with a temporary
MAKEFLAGS=-j4 override, reverted back to the standing -j1 right
after this session’s builds – see config/remote_build.conf).
Gotcha hit twice: eurobuild14’s local pacman db was stale right after
each of svt-av1’s and this package’s own publish – pacman -Si
<newly-published-pkg> returned nothing until a manual sudo pacman
-Sy on the board. Worth doing proactively before any remote build
that depends on something just published this same session.
i686 still not built for this package (arch=(x86_64 aarch64) only) –
not attempted, no immediate consumer needs it yet ([[makemkv]]’s own
i686 arch fails for exactly this reason, but that’s pending too).