#
# Conditional build:
%bcond_without static_libs # static libraries
-#
-%define gstapi 1.4
-#
+%bcond_with api # GST VA-API libraries API [no longer exported as of 1.6.0]
+
+%define gstapi 1.6
+%define gst_ver 1.12.0
+%define gstpb_ver 1.12.0
+%define gstpd_ver 1.12.0
Summary: GStreamer plugin to support Video Acceleration API
Summary(pl.UTF-8): Wtyczka GStreamera obsługująca Video Acceleration API
Name: gstreamer-vaapi
-Version: 0.6.0
+Version: 1.12.2
Release: 1
License: LGPL v2.1+
Group: Libraries
-Source0: http://www.freedesktop.org/software/vaapi/releases/gstreamer-vaapi/%{name}-%{version}.tar.bz2
-# Source0-md5: c8d8ba19d7d18d9e7bd455f73bb5daf2
-Patch0: %{name}-link.patch
-URL: http://www.freedesktop.org/wiki/Software/vaapi/
+Source0: https://gstreamer.freedesktop.org/src/gstreamer-vaapi/%{name}-%{version}.tar.xz
+# Source0-md5: bea015f33696a15ad9575fb71af862ed
+URL: https://gstreamer.freedesktop.org/
BuildRequires: Mesa-libEGL-devel
BuildRequires: Mesa-libGL-devel
BuildRequires: Mesa-libGLES-devel
-BuildRequires: autoconf >= 2.66
-BuildRequires: automake >= 1:1.11
+BuildRequires: autoconf >= 2.69
+BuildRequires: automake >= 1:1.14
BuildRequires: glib2-devel >= 1:2.32.0
-BuildRequires: gstreamer-devel >= 1.4.0
-BuildRequires: gstreamer-plugins-bad-devel >= 1.4.0
-BuildRequires: gstreamer-plugins-base-devel >= 1.4.0
+BuildRequires: gstreamer-devel >= %{gst_ver}
+# gstreamer-gl (optional), gstreamer-codecparsers
+BuildRequires: gstreamer-plugins-bad-devel >= %{gstpd_ver}
+BuildRequires: gstreamer-plugins-base-devel >= %{gstpb_ver}
BuildRequires: gtk-doc >= 1.12
BuildRequires: libdrm-devel
BuildRequires: libtool >= 2:2.2
-BuildRequires: libva-devel >= 1.2.0
+BuildRequires: libva-devel >= 1.6.0
BuildRequires: libva-drm-devel >= 1.1.0
-BuildRequires: libva-glx-devel >= 1.0.9
BuildRequires: libva-wayland-devel >= 1.1.0
BuildRequires: libva-x11-devel >= 1.0.3
BuildRequires: pkgconfig
# libva API versions
-BuildRequires: pkgconfig(libva) >= 0.34.0
+BuildRequires: pkgconfig(libva) >= 0.38.0
BuildRequires: pkgconfig(libva-drm) >= 0.33.0
-BuildRequires: pkgconfig(libva-glx) >= 0.32.0
BuildRequires: pkgconfig(libva-wayland) >= 0.33.0
BuildRequires: pkgconfig(libva-x11) >= 0.31.0
BuildRequires: udev-devel
-BuildRequires: wayland-devel >= 1.0.0
+BuildRequires: wayland-devel >= 1.0.2
+BuildRequires: tar >= 1:1.22
+BuildRequires: udev-devel
BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXrandr-devel
BuildRequires: xorg-lib-libXrender-devel
+BuildRequires: xz
+%ifarch %{ix86} %{x8664} x32
+BuildRequires: yasm
+%endif
Requires: glib2 >= 1:2.32.0
-Requires: gstreamer >= 1.0.0
-Requires: gstreamer-plugins-bad >= 1.4.0
-Requires: gstreamer-plugins-base >= 1.4.0
-Requires: libva >= 1.2.0
+Requires: gstreamer >= %{gst_ver}
+Requires: gstreamer-plugins-bad >= %{gstpd_ver}
+Requires: gstreamer-plugins-base >= %{gstpb_ver}
+Requires: libva >= 1.6.0
Requires: wayland >= 1.0.0
+%if %{without api}
+Obsoletes: gstreamer-vaapi-devel < %{version}
+Obsoletes: gstreamer-vaapi-static < %{version}
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl.UTF-8): Pliki nagłówkowe bibliotek VA-API GStreamera
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: gstreamer-devel >= 1.4.0
-Requires: gstreamer-plugins-base-devel >= 1.4.0
-Requires: libva-devel >= 1.2.0
+Requires: gstreamer-devel >= %{gst_ver}
+Requires: gstreamer-plugins-base-devel >= %{gstpb_ver}
+Requires: libva-devel >= 1.6.0
Requires: libva-drm-devel >= 1.1.0
-Requires: libva-glx-devel >= 1.0.9
Requires: libva-wayland-devel >= 1.1.0
Requires: libva-x11-devel >= 1.0.3
%description static -l pl.UTF-8
Statyczne biblioteki VA-API GStreamera.
+%package apidocs
+Summary: GStreamer VA-API plugins documentation
+Summary(pl.UTF-8): Dokumentacja do wtyczek GStreamera VA-API
+Group: Documentation
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
+
+%description apidocs
+GStreamer VA-API plugins documentation.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja do wtyczek GStreamera VA-API.
+
%prep
%setup -q
-%patch0 -p1
%build
%{__libtoolize}
-%{__aclocal}
+%{__aclocal} -I m4 -I common/m4
%{__autoconf}
%{__autoheader}
%{__automake}
%configure \
--disable-silent-rules \
%{!?with_static_libs:--disable-static} \
- --with-gstreamer-api=%{gstapi}
+ --with-html-dir=%{_gtkdocdir}
%{__make}
# gstreamer module
%{__rm} $RPM_BUILD_ROOT%{_libdir}/gstreamer-1.0/libgst*.la
+%if %{with api}
# obsoleted by pkg-config
%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
+%if %{with api}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%endif
%files
%defattr(644,root,root,755)
%doc AUTHORS NEWS README
+%if %{with api}
%attr(755,root,root) %{_libdir}/libgstcodecparsers_vpx.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libgstcodecparsers_vpx.so.0
%attr(755,root,root) %{_libdir}/libgstvaapi-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-%{gstapi}.so.1
%attr(755,root,root) %{_libdir}/libgstvaapi-drm-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-drm-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-drm-%{gstapi}.so.1
%attr(755,root,root) %{_libdir}/libgstvaapi-egl-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-egl-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-egl-%{gstapi}.so.1
%attr(755,root,root) %{_libdir}/libgstvaapi-glx-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-glx-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-glx-%{gstapi}.so.1
%attr(755,root,root) %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.1
%attr(755,root,root) %{_libdir}/libgstvaapi-x11-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-x11-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-x11-%{gstapi}.so.1
+%endif
%attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstvaapi.so
-%attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstvaapi_parse.so
+%if %{with api}
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libgstcodecparsers_vpx.so
%{_libdir}/libgstvaapi-wayland-%{gstapi}.a
%{_libdir}/libgstvaapi-x11-%{gstapi}.a
%endif
+%endif
+
+%files apidocs
+%defattr(644,root,root,755)
+%{_gtkdocdir}/gstreamer-vaapi-plugins-1.0