Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Backports:SLE-15:Update
QtAV
QtAV.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File QtAV.spec of Package QtAV
# # spec file for package QtAV # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define sover 1 %define src_name QtAV %define Qt_name %{src_name} %define ffmpeg_includedir -I%(pkg-config --variable=includedir libavutil) Name: QtAV Version: 1.12.0 Release: 0 Summary: Qt multimedia framework License: LGPL-2.1+ and GPL-3.0 Group: Productivity/Multimedia/Other Url: http://qtav.org/ Source0: QtAV-%{version}.tar.xz Patch1: fix-linking.patch Patch2: disable_cuda.patch BuildRequires: ImageMagick BuildRequires: dos2unix BuildRequires: hicolor-icon-theme BuildRequires: kf5-filesystem BuildRequires: portaudio-devel BuildRequires: update-desktop-files BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5OpenGL) BuildRequires: pkgconfig(Qt5Qml) BuildRequires: pkgconfig(Qt5Quick) BuildRequires: pkgconfig(Qt5Sql) BuildRequires: pkgconfig(Qt5Svg) BuildRequires: pkgconfig(Qt5Widgets) BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(libass) BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavdevice) BuildRequires: pkgconfig(libavfilter) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavresample) BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(libpulse) >= 1.0 BuildRequires: pkgconfig(libswresample) BuildRequires: pkgconfig(libswscale) BuildRequires: pkgconfig(libva) BuildRequires: pkgconfig(openal) BuildRequires: pkgconfig(xv) Requires: %{Qt_name}-players = %{version} %description QtAV is a multimedia playback library based on Qt and FFmpeg. It can help facilitate writing a player application. Features include: * Hardware decoding suppprt: DXVA2, VAAPI, VDA, CedarX, CUDA * OpenGL and ES2 support for Hi10P and other 16-bit YUV videos * Real time preview * Video capture in RGB and YUV format * OSD and custom filters * Subtitles * Transform video using GraphicsItemRenderer. (rotate, shear, etc) * Playing frame by frame (currently support forward playing) * Playback speed control * Variant streams: locale file, http, rtsp, etc. * Audio channel, tracks and external audio tracks * Dynamically change render engine when playing * Multiple video outputs for 1 player * Region of interest(ROI), i.e. video cropping * Video eq: brightness, contrast, saturation, hue * QML support as a plugin. Most playback APIs are compatible with QtMultiMedia module %package -n lib%{Qt_name}%{sover} Summary: Qt multimedia framework library Group: System/Libraries %description -n lib%{Qt_name}%{sover} QtAV is a multimedia playback library based on Qt and FFmpeg. This package contains the QtAV library. %package -n lib%{Qt_name}Widgets%{sover} Summary: QtAV Widgets module Group: System/Libraries %description -n lib%{Qt_name}Widgets%{sover} QtAV is a multimedia playback library based on Qt and FFmpeg. This package contains a set of widgets to play media. %package -n %{Qt_name}-qml Summary: QtAV QML module Group: Productivity/Multimedia/Other %description -n %{Qt_name}-qml QtAV is a multimedia playback library based on Qt and FFmpeg. This package contains the QtAV QML module for Qt declarative. %package -n %{Qt_name}-players Summary: QtAV/QML players Group: Productivity/Multimedia/Video/Players Requires: %{Qt_name}-qml = %{version} Requires: libQt5Svg5 Requires: libqt5-qtquickcontrols %description -n %{Qt_name}-players QtAV is a multimedia playback library based on Qt and FFmpeg. This package contains the QtAV based players. %package -n %{Qt_name}-devel Summary: QtAV development files Group: Development/Libraries/C and C++ Requires: lib%{Qt_name}Widgets%{sover} = %{version} Requires: libQt5OpenGL-devel %description -n %{Qt_name}-devel QtAV is a multimedia playback library based on Qt and FFmpeg. This package contains the header development files for building some QtAV applications using QtAV headers. %prep %setup -q -n %{src_name}-%{version} %patch1 -p1 %patch2 -p1 # Fix incorrect sRGB profile for f in $(find . -type f -name \*.png); do convert $f -strip $f done BUILD_TIME=$(LC_ALL=C date -ur %{_sourcedir}/%{Qt_name}.changes +'%H:%M') BUILD_DATE=$(LC_ALL=C date -ur %{_sourcedir}/%{Qt_name}.changes +'%b %d %Y') grep -rl '__TIME__' . | xargs --verbose --no-run-if-empty \ sed -i "s/__TIME__/\"$BUILD_TIME\"/" grep -rl '__DATE__' . | xargs --verbose --no-run-if-empty \ sed -i "s/__DATE__/\"$BUILD_DATE\"/" find . -type f -name \*.pro | while read FILE; do echo "QMAKE_CXXFLAGS_RELEASE += %{ffmpeg_includedir}" >> "$FILE"; done %build mkdir build pushd build %qmake5 "CONFIG+=no_rpath recheck" ../%{Qt_name}.pro %make_jobs PREFIX=%{_prefix} popd %install pushd build %qmake5_install popd install -d %{buildroot}%{_bindir} install -d %{buildroot}%{_datadir}/icons/hicolor/scalable/apps ln -s %{_libqt5_bindir}/Player %{buildroot}%{_bindir}/Player ln -s %{_libqt5_bindir}/QMLPlayer %{buildroot}%{_bindir}/QMLPlayer find %{buildroot} -name \*.a -exec rm {} \; printf 'lib%{Qt_name}%{sover}\n lib%{Qt_name}Widgets%{sover}\n' > %{_sourcedir}/baselibs.conf # Duplicate files rm -rf %{buildroot}%{_datadir}/doc %post -n lib%{Qt_name}%{sover} -p /sbin/ldconfig %postun -n lib%{Qt_name}%{sover} -p /sbin/ldconfig %post -n lib%{Qt_name}Widgets%{sover} -p /sbin/ldconfig %postun -n lib%{Qt_name}Widgets%{sover} -p /sbin/ldconfig %post -n %{Qt_name}-players %desktop_database_post %postun -n %{Qt_name}-players %desktop_database_postun %files %defattr(-,root,root) %doc Changelog gpl-3.0* lgpl-2.1* README* %files -n lib%{Qt_name}%{sover} %defattr(-,root,root) %{_libqt5_libdir}/lib%{Qt_name}.so.* %files -n lib%{Qt_name}Widgets%{sover} %defattr(-,root,root) %{_libqt5_libdir}/lib%{Qt_name}Widgets.so.* %files -n %{Qt_name}-qml %defattr(-,root,root) %dir %{_kf5_qmldir}/%{Qt_name} %{_kf5_qmldir}/%{Qt_name}/Video.qml %{_kf5_qmldir}/%{Qt_name}/libQmlAV.so %{_kf5_qmldir}/%{Qt_name}/plugins.qmltypes %{_kf5_qmldir}/%{Qt_name}/qmldir %files -n %{Qt_name}-players %defattr(-,root,root) %{_bindir}/Player %{_bindir}/QMLPlayer %{_libqt5_bindir}/Player %{_libqt5_bindir}/QMLPlayer %{_datadir}/applications/QMLPlayer.desktop %{_datadir}/applications/Player.desktop %{_datadir}/icons/hicolor/scalable/apps/%{Qt_name}.svg %files -n %{Qt_name}-devel %defattr(-,root,root) %{_libqt5_libdir}/lib%{Qt_name}.so %{_libqt5_libdir}/lib%{Qt_name}.prl %{_libqt5_libdir}/lib%{Qt_name}Widgets.so %{_libqt5_libdir}/lib%{Qt_name}Widgets.prl %{_libqt5_archdatadir}/mkspecs/features/av.prf %{_libqt5_archdatadir}/mkspecs/features/avwidgets.prf %{_kf5_mkspecsdir}/qt_lib_av.pri %{_kf5_mkspecsdir}/qt_lib_av_private.pri %{_kf5_mkspecsdir}/qt_lib_avwidgets.pri %{_kf5_mkspecsdir}/qt_lib_avwidgets_private.pri %{_libqt5_includedir}/QtAV %{_libqt5_includedir}/QtAVWidgets %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor