Name: ffmpeg Version: 7.1 Release: 1%{?dist} Summary: Digital VCR and streaming server License: LGPL-2.1-or-later AND GPL-2.0-or-later URL: https://ffmpeg.org Source0: https://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: make BuildRequires: pkgconfig BuildRequires: nasm BuildRequires: zlib-ng-compat-devel BuildRequires: bzip2-devel BuildRequires: libvpx-devel BuildRequires: lame-devel %description FFmpeg -- built as a real, moderately-featured library-only stack (no command-line programs/doc) specifically as a prerequisite for KPipeWire, which hard-requires libavcodec/libavutil/libavformat/ libavfilter/libswscale via unconditional REQUIRED pkg_check_modules() calls with no graceful degradation path. FFmpeg itself is confirmed entirely absent from Azure Linux's package repos (unlike GStreamer, which turned out to be available for Kamoso earlier this phase -- this is a genuine, verified gap, not an unchecked assumption). Enabled libvpx (VP8/VP9, real encode+decode, no patent/licensing issues, confirmed available) instead of chasing libx264 (GPL, confirmed NOT packaged here) for H.264 -- VP8/VP9 is a fully functional choice for PipeWire-based Wayland screen-recording pipelines. zlib/bzlib auto-detected and enabled since their -devel packages are present. No X11/SDL/ALSA/PulseAudio program-level integration needed since --disable-programs skips building the ffmpeg/ffplay/ffprobe binaries entirely -- only the shared libraries KPipeWire links against are built. %package devel Summary: Development package for FFmpeg Requires: %{name}%{?_isa} = %{version}-%{release} %description devel %{summary}. %prep %autosetup -p1 %build ./configure \ --prefix=%{_prefix} \ --libdir=%{_libdir} \ --incdir=%{_includedir} \ --shlibdir=%{_libdir} \ --enable-shared \ --disable-static \ --disable-programs \ --disable-doc \ --disable-debug \ --enable-libvpx \ --enable-libmp3lame \ --optflags="%{optflags}" %make_build %install %make_install %files %license COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 COPYING.LGPLv3 LICENSE.md %{_libdir}/libavcodec.so.* %{_libdir}/libavutil.so.* %{_libdir}/libavformat.so.* %{_libdir}/libavfilter.so.* %{_libdir}/libavdevice.so.* %{_libdir}/libswscale.so.* %{_libdir}/libswresample.so.* %files devel %{_includedir}/libavcodec/ %{_includedir}/libavutil/ %{_includedir}/libavformat/ %{_includedir}/libavfilter/ %{_includedir}/libavdevice/ %{_includedir}/libswscale/ %{_includedir}/libswresample/ %{_libdir}/libavcodec.so %{_libdir}/libavutil.so %{_libdir}/libavformat.so %{_libdir}/libavfilter.so %{_libdir}/libavdevice.so %{_libdir}/libswscale.so %{_libdir}/libswresample.so %{_libdir}/pkgconfig/libav*.pc %{_libdir}/pkgconfig/libsw*.pc %changelog * Sun Aug 30 2026 Smech - 7.1-1 - Real upstream source. Built specifically as a KPipeWire prerequisite after confirming FFmpeg is genuinely absent from this distro's repos (per explicit user instruction to pursue this rather than skip Spectacle). Library-only build (--disable-programs/--disable-doc) with libvpx (real VP8/VP9 codec) instead of the unavailable libx264. %%files is a first-pass estimate of standard FFmpeg library/header naming, not yet verified against a real build log -- FFmpeg's own build system doesn't use CMake/ECM like everything else this session, so this is the first classic autoconf-style ./configure package built in this repo; expect a real-error correction round.