## START: Set by rpmautospec ## (rpmautospec version 0.7.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # See rhbz#2332382: gstreamer1-svt-av1 subpackage should not be built anymore # as it is now directly maintained by the GStreamer project since 1.24.0. %bcond gst_plugin %[0%{?rhel}] # cpuinfo is only available for %%{x86_64} %%{arm64} on Fedora %ifarch %{x86_64} %{arm64} %bcond unbundled_cpuinfo 1 %endif %global _description %{expand: The Scalable Video Technology for AV1 Encoder (SVT-AV1 Encoder) is an AV1-compliant encoder library core. The SVT-AV1 development is a work-in-progress targeting performance levels applicable to both VOD and Live encoding / transcoding video applications.} Name: svt-av1 Version: 2.3.0 Release: %autorelease Summary: Scalable Video Technology for AV1 Encoder # Main library: BSD-3-Clause-Clear and AOMPL # https://gitlab.com/fedora/legal/fedora-license-data/-/issues/383 # Source/Lib/Common/Codec/EbHmCode.c: BSD # Source/App/EncApp/EbAppString.* # Source/Lib/Common/Codec/EbString.* # Source/Lib/Encoder/Codec/vector.*: MIT # Source/Lib/Common/ASM_SSE2/x86inc.asm: ISC # Source/App/DecApp/EbMD5Utility.*: PublicDomain # third_party/cpuinfo : BSD-2-Clause # third_party/fastfeat : BSD-3-Clause # third_party/safestringlib : MIT License: LicenseRef-BSD-3-Clause-Clear-WITH-AdditionRef-AOMPL-1.0 AND MIT AND ISC AND LicenseRef-Fedora-Public-Domain AND BSD-2-Clause URL: https://gitlab.com/AOMediaCodec/SVT-AV1 Source: %url/-/archive/v%{version}/SVT-AV1-v%{version}.tar.bz2 BuildRequires: cmake >= 3.16 BuildRequires: gcc >= 5.4.0 BuildRequires: gcc-c++ >= 5.4.0 BuildRequires: help2man BuildRequires: nasm >= 2.14 BuildRequires: ninja-build %if %{with unbundled_cpuinfo} BuildRequires: pkgconfig(libcpuinfo) %endif %if %{with gst_plugin} BuildRequires: meson BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-base-1.0) BuildRequires: pkgconfig(gstreamer-video-1.0) %endif Requires: %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %description %_description %package libs Summary: SVT-AV1 libraries %if ! %{with gst_plugin} Obsoletes: gstreamer1-%{name} < %{?epoch:%{epoch}:}%{version}-%{release} %endif %if %{without unbundled_cpuinfo} Provides: bundled(cpuinfo) = 0^20201129gita7e1076-1 %endif Provides: bundled(fastfeat) = 0^20191113git391d5e9-1 Provides: bundled(safestringlib) = 1.0.0-1 %description libs %_description This package contains SVT-AV1 libraries. %package devel Summary: Development files for SVT-AV1 Requires: %{name}-libs = %{?epoch:%{epoch}:}%{version}-%{release} Recommends: %{name}-devel-docs = %{?epoch:%{epoch}:}%{version}-%{release} %description devel %_description. This package contains the development files for SVT-AV1. %package devel-docs Summary: Development documentation for SVT-AV1 BuildArch: noarch %description devel-docs %_description. This package contains the documentation for development of SVT-AV1. %if %{with gst_plugin} %package -n gstreamer1-%{name} Summary: GStreamer 1.0 %{name}-based plug-in Requires: gstreamer1-plugins-base%{?_isa} %description -n gstreamer1-%{name} This package provides %{name}-based GStreamer plug-in. %endif %prep %autosetup -p1 -n SVT-AV1-v%{version} # Mitigate name collisions mv third_party/cpuinfo/LICENSE LICENSE.cpuinfo mv third_party/fastfeat/LICENSE LICENSE.fastfeat mv third_party/safestringlib/LICENSE LICENSE.safestringlib # Sanitize third_party # cpuinfo is only available for %%{x86_64} %%{arm64} on Fedora %if %{with unbundled_cpuinfo} rm -rfv third_party/cpuinfo %endif rm -rfv third_party/aom* rm -rfv third_party/googletest %if %{with gst_plugin} # Patch build gstreamer plugin sed -e "s|install: true,|install: true, include_directories : [ include_directories('../Source/API') ], link_args : '-lSvtAv1Enc',|" \ -e "/svtav1enc_dep =/d" -e 's|, svtav1enc_dep||' -e "s|svtav1enc_dep.found()|true|" -i gstreamer-plugin/meson.build %endif %build %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ %if %{with unbundled_cpuinfo} -DUSE_EXTERNAL_CPUINFO=ON \ %else -DUSE_EXTERNAL_CPUINFO=OFF \ %endif -DSVT_AV1_LTO=ON \ -DSVT_AV1_PGO=ON \ -G Ninja %cmake_build %if %{with gst_plugin} export LIBRARY_PATH="$LIBRARY_PATH:$(pwd)/Bin/RelWithDebInfo" pushd gstreamer-plugin %meson %meson_build popd %endif %install %cmake_install rm -rfv %{buildroot}%{_libdir}/*.{a,la} install -dm0755 %{buildroot}/%{_mandir}/man1 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{_libdir} help2man -N --help-option=--help --no-discard-stderr --version-string=%{version} %{buildroot}%{_bindir}/SvtAv1EncApp > %{buildroot}%{_mandir}/man1/SvtAv1EncApp.1 %if %{with gst_plugin} pushd gstreamer-plugin %meson_install popd %endif %files %{_bindir}/SvtAv1EncApp %{_mandir}/man1/SvtAv1EncApp.1* %files libs %license LICENSE.md PATENTS.md LICENSE.fastfeat LICENSE.safestringlib LICENSE.cpuinfo %doc CHANGELOG.md CONTRIBUTING.md README.md %{_libdir}/libSvtAv1Enc.so.2* %files devel %{_includedir}/svt-av1 %{_libdir}/libSvtAv1Enc.so %{_libdir}/pkgconfig/SvtAv1Enc.pc %files devel-docs %license LICENSE.md PATENTS.md LICENSE.fastfeat LICENSE.safestringlib LICENSE.cpuinfo %doc Docs %if %{with gst_plugin} %files -n gstreamer1-svt-av1 %license LICENSE.md PATENTS.md LICENSE.fastfeat LICENSE.safestringlib LICENSE.cpuinfo %{_libdir}/gstreamer-1.0/libgstsvtav1enc.so %endif %changelog ## START: Generated by rpmautospec * Sat Feb 08 2025 Robert-André Mauchin - 2.3.0-1 - Update to 2.3.0 * Sun Jan 19 2025 Fedora Release Engineering - 2.1.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Fri Jan 10 2025 Neal Gompa - 2.1.0-4 - Conditionally restore the gstreamer plugin for RHEL * Wed Dec 18 2024 Yaakov Selkowitz - 2.1.0-3 - Disable gstreamer plugin * Sat Jul 20 2024 Fedora Release Engineering - 2.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Sun May 26 2024 Robert-André Mauchin - 2.1.0-1 - Update to 2.1.0 * Sun May 26 2024 Nick Clifton - 1.4.1-6 - Replace use/dependency upon yasm with use/dependency upon nasm. * Sat Jan 27 2024 Fedora Release Engineering - 1.4.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Nov 13 2023 Miroslav Suchý - 1.4.1-4 - Migrate to SPDX license * Sat Jul 22 2023 Fedora Release Engineering - 1.4.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Fri Jan 06 2023 Dominik 'Rathann' Mierzejewski - 1.4.1-2 - build on non-x86_64 * Tue Dec 27 2022 Robert-André Mauchin - 1.4.1-1 - Update to 1.4.1 * Thu Oct 20 2022 Kalev Lember - 1.3.0-1 - Update to 1.3.0 * Sat Jul 23 2022 Fedora Release Engineering - 1.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Sun Jun 19 2022 Robert-André Mauchin - 1.1.0-1 - Update to 1.1.0 Close: rhbz#2057764 * Mon Jan 24 2022 Robert-André Mauchin - 0.9.0-1 - Update to 0.9.0 Close: rhbz#2043795 * Sat Jan 22 2022 Fedora Release Engineering - 0.8.7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Mon Aug 09 2021 Robert-André Mauchin - 0.8.7-2 - Move development docs to devel-docs package Close: rhbz#1990449 * Sun Jul 25 2021 Robert-André Mauchin - 0.8.7-1 - Update to 0.8.7 Close: rhbz#1983484 * Fri Jul 23 2021 Fedora Release Engineering - 0.8.6-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Wed Feb 17 21:30:29 CET 2021 Robert-André Mauchin - 0.8.6-4 - Use upstream patch to fix rhbz#1927739 * Wed Feb 17 18:28:38 CET 2021 Robert-André Mauchin - 0.8.6-3 - Add noexecstack - Fix: rhbz#1927739 * Wed Jan 27 2021 Fedora Release Engineering - 0.8.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Sat Dec 05 20:20:29 CET 2020 Robert-André Mauchin - 0.8.6-1 - Update to 0.8.6 - Close: rhbz#1902481 * Tue Nov 10 2020 Andreas Schneider - 0.8.5-2 - Add patch to fix building on modern Linux system * Tue Nov 10 11:38:19 CET 2020 Robert-André Mauchin - 0.8.5-1 - Update to 0.8.5 - Close: rhbz#1876641 * Sat Aug 01 2020 Fedora Release Engineering - 0.8.4-3 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jul 29 2020 Fedora Release Engineering - 0.8.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jun 30 18:53:17 CEST 2020 Robert-André Mauchin - 0.8.4-1 - Update to 0.8.4 (#1851799) * Fri Jun 19 18:36:37 CEST 2020 Robert-André Mauchin - 0.8.3-1 - Update to 0.8.3 * Sun Feb 02 22:33:18 CET 2020 Robert-André Mauchin - 0.8.1-1 - Update to 0.8.1 * Fri Jan 31 2020 Fedora Release Engineering - 0.8.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Mon Dec 23 00:16:09 CET 2019 Robert-André Mauchin - 0.8.0-1 - Release 0.8.0 (#1785814) * Thu Dec 05 23:08:19 CET 2019 Robert-André Mauchin - 0.7.5-1 - Release 0.7.5 (#1776119) * Thu Oct 10 18:51:11 CEST 2019 Robert-André Mauchin - 0.7.0-1 - Release 0.7.0 * Wed Sep 18 2019 Vasiliy Glazov - 0.6.0-3 - Added gstreamer plugin * Sat Jul 27 2019 Fedora Release Engineering - 0.6.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Fri Jul 05 18:37:55 CEST 2019 Robert-André Mauchin - 0.6.0-1 - Release 0.6.0 * Thu Jun 20 20:36:24 CEST 2019 Robert-André Mauchin - 0.5.0-1.20190620gitcc2ee45 - Initial release ## END: Generated by rpmautospec