You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
147 lines
4.3 KiB
147 lines
4.3 KiB
%global commit0 8f41503605e6e55b34945e49cba864697e1ca683
|
|
%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
|
|
%global commitdate0 20190403
|
|
|
|
Name: vmaf
|
|
Version: 1.3.14
|
|
Release: 2.%{commitdate0}git%{shortcommit0}%{?dist}
|
|
Summary: Video Multi-Method Assessment Fusion
|
|
|
|
License: ASL 2.0
|
|
URL: https://github.com/netflix/vmaf/
|
|
Source0: %{url}/archive/%{commit0}/%{name}-%{shortcommit0}.tar.gz
|
|
Patch0: 0001-Use-PREFIX-and-LIBDIR-build-variable-instead-of-cust.patch
|
|
Patch1: 0002-Unbundle-pugixml.patch
|
|
Patch3: 0004-Use-better-FLAGS-for-ptools.patch
|
|
Patch4: 0005-Switch-pugixml-include.patch
|
|
Patch5: 0006-Switch-to-shared-library-for-libvmaf.patch
|
|
Patch6: 0007-Unbundle-libsvm.patch
|
|
Patch7: 0008-Add-pugixml-LIBS.patch
|
|
Patch8: 0009-Avoid-x86cpudetection-code-when-not-relevant.patch
|
|
Patch9: 0010-Fix-libvmaf.pc-to-use-Libs.private-for-pthread-m.patch
|
|
|
|
# This project relies on AVX
|
|
ExclusiveArch: x86_64
|
|
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libsvm-devel
|
|
BuildRequires: pugixml-devel
|
|
|
|
# Enforce our own build version for library
|
|
Requires: libvmaf%{?_isa} = %{version}-%{release}
|
|
# Upstream only provides a static library
|
|
# Packages using libvmaf must Requires this:
|
|
#%%{?libvmaf_version:Requires: libvmaf%%{?_isa} = %%{libvmaf_version}}
|
|
|
|
|
|
%description
|
|
VMAF is a perceptual video quality assessment algorithm developed by
|
|
Netflix. VMAF Development Kit (VDK) is a software package that contains
|
|
the VMAF algorithm implementation, as well as a set of tools that allows
|
|
a user to train and test a custom VMAF model. For an overview, read this
|
|
tech blog post, or this slide deck.
|
|
|
|
https://github.com/Netflix/vmaf/blob/master/resource/doc/VMAF_ICIP17.pdf
|
|
|
|
|
|
%package -n libvmaf
|
|
Summary: Library for %{name}
|
|
#Some repo provides it
|
|
Provides: %{name}-static = %{version}-%{release}
|
|
Obsoletes: %{name}-static < %{version}-%{release}
|
|
|
|
%description -n libvmaf
|
|
Library for %{name}.
|
|
|
|
%package -n libvmaf-devel
|
|
Summary: Development files for %{name}
|
|
Requires: libvmaf%{?_isa} = %{version}-%{release}
|
|
#Some repo provides it
|
|
Provides: %{name}-devel = %{version}-%{release}
|
|
Obsoletes: %{name}-devel < %{version}-%{release}
|
|
|
|
%description -n libvmaf-devel
|
|
The %{name}-devel package contains libraries and header files for
|
|
developing applications that use %{name}.
|
|
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{name}-%{commit0}
|
|
# Unbundle
|
|
rm -rf wrapper/src/pugixml
|
|
rm -rf libsvm
|
|
|
|
# Tweak libvmaf.pc
|
|
sed -i -e 's|/usr/local|%{_prefix}|g' wrapper/libvmaf.pc
|
|
sed -i -e 's|/usr/lib|%{_libdir}|g' wrapper/libvmaf.pc
|
|
|
|
|
|
%build
|
|
%ifarch i686
|
|
export ASM_CFLAGS="-msse -msse2 -mavx"
|
|
%endif
|
|
%make_build CFLAGS_COMMON="%{optflags} ${ASM_CFLAGS} -fPIC" LDFLAGS="%{__global_ldflags}" V=1
|
|
|
|
|
|
%install
|
|
%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
|
|
|
mv %{buildroot}%{_libdir}/libvmaf.so \
|
|
%{buildroot}%{_libdir}/libvmaf.so.0.0.0
|
|
ln -s libvmaf.so.0.0.0 \
|
|
%{buildroot}%{_libdir}/libvmaf.so.0
|
|
ln -s libvmaf.so.0 \
|
|
%{buildroot}%{_libdir}/libvmaf.so
|
|
|
|
# Install vmafossexec
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
install -pm 0755 wrapper/vmafossexec \
|
|
%{buildroot}%{_bindir}
|
|
|
|
#RPM Macros support
|
|
mkdir -p %{buildroot}%{rpmmacrodir}
|
|
cat > %{buildroot}%{rpmmacrodir}/macros.%{name} << EOF
|
|
# libvmaf RPM Macros
|
|
%libvmaf_version %{version}
|
|
EOF
|
|
touch -r LICENSE %{buildroot}%{rpmmacrodir}/macros.%{name}
|
|
|
|
|
|
%ldconfig_scriptlets -n libvmaf
|
|
|
|
|
|
%files
|
|
%doc FAQ.md NOTICE.md README.md
|
|
%{_bindir}/vmafossexec
|
|
%{_datadir}/model/
|
|
|
|
%files -n libvmaf
|
|
%doc CHANGELOG.md
|
|
%license LICENSE
|
|
%{_libdir}/*.so.*
|
|
|
|
%files -n libvmaf-devel
|
|
%doc CONTRIBUTING.md
|
|
%{rpmmacrodir}/macros.%{name}
|
|
%{_includedir}/libvmaf.h
|
|
%{_libdir}/*.so
|
|
%{_libdir}/pkgconfig/libvmaf.pc
|
|
|
|
|
|
%changelog
|
|
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.14-2.20190403git8f41503
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
|
* Sat Apr 06 2019 Nicolas Chauvet <kwizart@gmail.com> - 1.3.14-1.20190403git8f415036
|
|
- Update to 1.13.4
|
|
- Rebase patches
|
|
|
|
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.9-2.20180914gita654f6f
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
* Fri Sep 21 2018 Nicolas Chauvet <kwizart@gmail.com> - 1.3.9-0.20180914gita654f6f
|
|
- Update to 1.3.9 up to 20180914
|
|
|
|
* Sat Apr 07 2018 Nicolas Chauvet <kwizart@gmail.com> - 1.3.3-1.20180407git510e257
|
|
- Initial spec file
|