[packages/vvenc] - new
qboosh
qboosh at pld-linux.org
Sun Sep 15 17:11:50 CEST 2024
commit 52c280a2d83402c82e957e5bb04b4f3c1503772b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Sep 15 17:14:37 2024 +0200
- new
vvenc-pc.patch | 12 +++++++
vvenc.spec | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 122 insertions(+)
---
diff --git a/vvenc.spec b/vvenc.spec
new file mode 100644
index 0000000..a5f4366
--- /dev/null
+++ b/vvenc.spec
@@ -0,0 +1,110 @@
+#
+# Conditional build:
+%bcond_with sse4 # SSE4.1 (obligatory) and optionally AVX+ instructions
+#
+Summary: Fraunhofer Versatile Video Encoder (VVenC)
+Summary(pl.UTF-8): VVenC - koder obrazu Fraunhofer Versatile Video
+Name: vvenc
+Version: 1.12.0
+Release: 1
+License: BSD
+Group: Libraries
+#Source0Download: https://github.com/fraunhoferhhi/vvenc/releases
+Source0: https://github.com/fraunhoferhhi/vvenc/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: b0b0f7dde67b44f1e161d42a21717afe
+Patch0: %{name}-pc.patch
+URL: https://github.com/fraunhoferhhi/vvenc
+BuildRequires: cmake >= 3.13.0
+# C++14
+BuildRequires: libstdc++-devel >= 6:5
+BuildRequires: nlohmann-json-devel >= 3.10.2
+BuildRequires: rpmbuild(macros) >= 1.605
+%if %{with sse4}
+Requires: cpuinfo(sse4_1)
+%endif
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+VVenC, the Fraunhofer Versatile Video Encoder, is a fast and efficient
+software H.266/VVC encoder implementation with the following main
+features:
+- Easy to use encoder implementation with five predefined
+ quality/speed presets;
+- Perceptual optimization to improve subjective video quality, based
+ on the XPSNR visual model;
+- Extensive frame-level and task-based parallelization with very good
+ scaling;
+- Frame-level single-pass and two-pass rate control supporting
+ variable bit-rate (VBR) encoding.
+
+%description -l pl.UTF-8
+VVenC (Fraunhofer Versatile Video Encoder) to szybka i wydajna
+programowa implementacja kodera H.266/VVC o następujących cechach:
+- łatwa w użyciu implementacja kodera w pięcioma predefiniowanymi
+ ustawieniami jakości/prędkości
+- optymalizacja percepcyjna w celu poprawy subiektywnej jakości
+ obrazu, oparta na modelu wizualnym XPSNR
+- rozległy model na poziomie ramek, oparte na zadaniach zrównoleglenie
+ z bardzo dobrym skalowaniem
+- jedno- i dwuprzebiegowe sterowanie przepustowością na poziomie ramek
+ z obsługą kodowania o zmiennej przepustowości (VBR)
+
+%package devel
+Summary: Header files for VVenC library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki VVenC
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: libstdc++-devel >= 6:5
+
+%description devel
+Header files for VVenC library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki VVenC.
+
+%prep
+%setup -q
+%patch0 -p1
+
+%build
+install -d build
+cd build
+%cmake .. \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ %{!?with_sse4:-DVVENC_ENABLE_X86_SIMD=OFF} \
+ -DVVENC_ENABLE_THIRDPARTY_JSON=OFF \
+ -DVVENC_INSTALL_FULLFEATURE_APP=ON
+
+%{__make}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+install -d $RPM_BUILD_ROOT%{_bindir}
+install -p build/source/App/vvencFFapp/vvencFFapp $RPM_BUILD_ROOT%{_bindir}
+install -p build/source/App/vvencapp/vvencapp $RPM_BUILD_ROOT%{_bindir}
+cp -dp build/source/Lib/vvenc/libvvenc.so* $RPM_BUILD_ROOT%{_libdir}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc AUTHORS.md LICENSE.txt README.md
+%attr(755,root,root) %{_bindir}/vvencFFapp
+%attr(755,root,root) %{_bindir}/vvencapp
+%attr(755,root,root) %{_libdir}/libvvenc.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libvvenc.so.1.12
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libvvenc.so
+%{_libdir}/cmake/vvenc
+%{_includedir}/vvenc
+%{_pkgconfigdir}/libvvenc.pc
diff --git a/vvenc-pc.patch b/vvenc-pc.patch
new file mode 100644
index 0000000..4d4b734
--- /dev/null
+++ b/vvenc-pc.patch
@@ -0,0 +1,12 @@
+--- vvenc-1.12.0/pkgconfig/libvvenc.pc.in.orig 2024-06-27 12:27:31.000000000 +0200
++++ vvenc-1.12.0/pkgconfig/libvvenc.pc.in 2024-09-15 16:40:09.892604573 +0200
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_BINDIR@
+-libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
+-includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+ Name: libvvenc
+ Description: Fraunhofer Versatile Video Encoder (VVenC)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/vvenc.git/commitdiff/52c280a2d83402c82e957e5bb04b4f3c1503772b
More information about the pld-cvs-commit
mailing list