%define build_tainted 0 %if "%{distro_section}" == "tainted" %define build_tainted 1 %endif %global browser_version 2.21.1 %global websocket_version c11874eb17f6667a17336af78101b2a07f8836d2 %define vmajor %(echo %{version} | cut -d. -f1) Name: obs-studio Version: 29.1.3 Release: %mkrel 1 Summary: A recording/broadcasting program Group: Video/Utilities License: GPLv2+ URL: https://obsproject.com Source0: https://github.com/obsproject/obs-studio/archive/%{version}/%{name}-%{version}.tar.gz Source1: https://github.com/obsproject/obs-browser/archive/%{browser_version}/obs-browser-%{browser_version}.tar.gz Source2: https://github.com/obsproject/obs-websocket/archive/%{websocket_version}/obs-websocket-%{websocket_version}.tar.gz Patch1: obs-studio-linking.patch Patch2: obs-studio-make-x264-support-optional.patch Patch3: obs-studio-29.1.0-fix-size_t-32bit.patch ExclusiveArch: %{ix86} x86_64 BuildRequires: cmake BuildRequires: ffmpeg-devel BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(jack) BuildRequires: pkgconfig(jansson) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libpci) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libv4l2) BuildRequires: pkgconfig(libvlc) BuildRequires: pkgconfig(luajit) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(python3) BuildRequires: cmake(Qt6) BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6DBus) BuildRequires: cmake(Qt6Gui) BuildRequires: cmake(Qt6Svg) BuildRequires: cmake(Qt6OpenGL) BuildRequires: cmake(Qt6Network) BuildRequires: cmake(Qt6Widgets) BuildRequires: cmake(Qt6Xml) BuildRequires: pkgconfig(speexdsp) BuildRequires: pkgconfig(udev) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(x11-xcb) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xcomposite) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(zlib) BuildRequires: mbedtls-devel BuildRequires: swig # Tainted %if %{build_tainted} BuildRequires: pkgconfig(fdk-aac) BuildRequires: pkgconfig(x264) %endif # Tries to dlopen vlc lib Requires: libvlc %description Open Broadcaster Software is free and open source software for video recording and live streaming. %if %{build_tainted} This package is built with support for x264 and fdk-aac. %endif %prep %setup -q -n %{name}-%{version} -a1 -a2 %autopatch -p1 # make CMake happy rm -rf plugins/obs-{browser,websocket}/ ln -sf $PWD/obs-browser-%{browser_version} plugins/obs-browser ln -sf $PWD/obs-websocket-%{websocket_version} plugins/obs-websocket %build %cmake \ -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DCMAKE_SKIP_INSTALL_RPATH=ON \ -DUNIX_STRUCTURE=1 \ %if "%{_lib}" == "lib64" -DOBS_MULTIARCH_SUFFIX=64 \ %endif -DOBS_VERSION_OVERRIDE="%{version}" \ -DBUILD_BROWSER=OFF \ -DENABLE_WEBSOCKET=OFF \ -DENABLE_NEW_MPEGTS_OUTPUT=OFF \ %if %{build_tainted} -DENABLE_LIBX264=ON \ -DENABLE_LIBFDK=ON \ %endif -DENABLE_JACK=ON \ -DQT_VERSION=6 \ -DENABLE_AJA=OFF %cmake_build %install %cmake_install # We don't need (a priori) the devel files rm -rf %{buildroot}%{_libdir}/*.so rm -rf %{buildroot}%{_libdir}/cmake rm -rf %{buildroot}%{_libdir}/pkgconfig rm -rf %{buildroot}%{_includedir} %files %{_bindir}/obs %{_bindir}/obs-ffmpeg-mux %{_libdir}/libobs.so.0 %{_libdir}/libobs.so.%{vmajor} %{_libdir}/libobs-frontend-api.so.0 %{_libdir}/libobs-frontend-api.so.%{vmajor} %{_libdir}/libobs-opengl.so.1 %{_libdir}/libobs-opengl.so.%{vmajor} %{_libdir}/libobs-scripting.so.1 %{_libdir}/libobs-scripting.so.%{vmajor} %{_libdir}/obs-plugins/ %{_libdir}/obs-scripting/ %{_datadir}/applications/com.obsproject.Studio.desktop %{_metainfodir}/com.obsproject.Studio.appdata.xml %{_datadir}/obs/ %{_iconsdir}/hicolor/*/apps/com.obsproject.Studio.png %{_iconsdir}/hicolor/scalable/apps/com.obsproject.Studio.svg %changelog * Mon Jun 19 2023 kekepower <kekepower> 29.1.3-1.mga9 + Revision: 1962497 - Update to version 29.1.3 * Mon May 29 2023 kekepower <kekepower> 29.1.2-1.mga9.tainted + Revision: 1959655 - Update to version 29.1.2 * Tue May 16 2023 kekepower <kekepower> 29.1.1-1.mga9.tainted + Revision: 1957058 - Update to version 29.1.1 * Thu May 04 2023 ghibo <ghibo> 29.1.0-1.mga9.tainted + Revision: 1955856 - Rework Patch2. - Add Patch3 to fix 32bit build. - Update to release 29.1.0 - Rework Patch1, Patch2. - Update obs-browser to 2.21.1 - Fix files list. * Wed Mar 08 2023 daviddavid <daviddavid> 29.0.2-2.mga9.tainted + Revision: 1948400 - improve x264 fix as of previous commit r1907250: - make x264 support optional like libfdk to only build it on tainted section - really enable libfdk support on tainted section * Fri Feb 17 2023 kekepower <kekepower> 29.0.2-1.mga9.tainted + Revision: 1943806 - Update to version 29.0.2 + ghibo <ghibo> - Enable jack, as it's not enabled by default. - Add a fix to build on core/release without x264. * Sun Nov 13 2022 wally <wally> 28.1.2-2.mga9.tainted + Revision: 1906907 - require dlopened vlc lib * Sun Nov 13 2022 wally <wally> 28.1.2-1.mga9.tainted + Revision: 1906884 - new version 28.1.2 * Sun Apr 24 2022 wally <wally> 27.2.3-3.mga9.tainted + Revision: 1853033 - rebuild for x264 0.164 * Mon Apr 04 2022 umeabot <umeabot> 27.2.3-2.mga9.tainted + Revision: 1844057 - Mageia 9 Mass Rebuild * Tue Mar 15 2022 akien <akien> 27.2.3-1.mga9.tainted + Revision: 1793329 - Version 27.2.3 + mrambo3501 <mrambo3501> - rebuild for ffmpeg 5.0 * Tue Feb 15 2022 tmb <tmb> 27.1.3-2.mga9.tainted + Revision: 1775383 - rebuild for python 3.10 * Thu Feb 03 2022 akien <akien> 27.1.3-1.mga9.tainted + Revision: 1771346 - Version 27.1.3 - Add VST plugin - Now built exclusively in tainted, obs is not usable without x264 (mga#29982) * Tue Jan 11 2022 akien <akien> 26.1.2-5.mga9.tainted + Revision: 1767967 - Rebuild for mbedtls 2.28.0 * Tue May 25 2021 akien <akien> 26.1.2-4.mga9 + Revision: 1728210 - Rebuild for sndio 1.8.0 with fixed SONAME * Mon Apr 12 2021 kekepower <kekepower> 26.1.2-3.mga9 + Revision: 1715257 - Rebuild again for Python 3.9 * Thu Mar 18 2021 neoclust <neoclust> 26.1.2-2.mga9.tainted + Revision: 1704366 - Rebuild against python 3.9 * Tue Jan 26 2021 akien <akien> 26.1.2-1.mga8.tainted + Revision: 1673415 - Version 26.1.2 * Thu Dec 17 2020 umeabot <umeabot> 26.1.0-2.mga8.tainted + Revision: 1659141 - Rebuild for new Qt5 * Tue Dec 15 2020 kekepower <kekepower> 26.1.0-1.mga8 + Revision: 1657731 - Update to version 26.1.0 * Wed Oct 07 2020 kekepower <kekepower> 26.0.2-1.mga8 + Revision: 1632619 - Update to version 26.0.2 * Tue Oct 06 2020 kekepower <kekepower> 26.0.1-1.mga8.tainted + Revision: 1632437 - Update to version 26.0.1 * Wed Sep 30 2020 kekepower <kekepower> 26.0.0-1.mga8 + Revision: 1631257 - Update to version 26.0.0 - Rediffed Patch1 and Patch2 * Mon Jul 06 2020 daviddavid <daviddavid> 25.0.8-2.mga8.tainted + Revision: 1602646 - rebuild for new x264-0.157 * Mon Apr 27 2020 kekepower <kekepower> 25.0.8-1.mga8.tainted + Revision: 1572413 - Update to version 25.0.8 * Fri Apr 17 2020 kekepower <kekepower> 25.0.7-1.mga8.tainted + Revision: 1568504 - Update to version 25.0.7 * Tue Apr 14 2020 kekepower <kekepower> 25.0.6-1.mga8 + Revision: 1567365 - Update to version 25.0.6 * Fri Apr 10 2020 kekepower <kekepower> 25.0.5-1.mga8.tainted + Revision: 1566005 - Update to version 25.0.5 * Sun Apr 05 2020 kekepower <kekepower> 25.0.4-1.mga8.tainted + Revision: 1565014 - Update to version 25.0.4 * Tue Mar 24 2020 kekepower <kekepower> 25.0.3-1.mga8 + Revision: 1559534 - Update to version 25.0.3 * Sun Mar 22 2020 kekepower <kekepower> 25.0.2-1.mga8 + Revision: 1558991 - Update to version 25.0.2 o Fixed a crash when changing settings on Linux * Thu Mar 19 2020 kekepower <kekepower> 25.0.1-1.mga8.tainted + Revision: 1558041 - Update to version 25.0.1 * Wed Mar 18 2020 kekepower <kekepower> 25.0.0-1.mga8.tainted + Revision: 1557826 - Update to version 25.0.0 * Thu Feb 20 2020 umeabot <umeabot> 24.0.6-2.mga8.tainted + Revision: 1546438 - Mageia 8 Mass Rebuild * Mon Feb 03 2020 daviddavid <daviddavid> 24.0.6-1.mga8 + Revision: 1486514 - new version: 24.0.6 + wally <wally> - build with new cmake macros * Tue Dec 10 2019 daviddavid <daviddavid> 24.0.5-1.mga8 + Revision: 1465731 - new version: 24.0.5 * Tue Dec 10 2019 daviddavid <daviddavid> 24.0.4-1.mga8.tainted + Revision: 1465592 - new version: 24.0.4 * Sun Oct 13 2019 daviddavid <daviddavid> 24.0.3-1.mga8.tainted + Revision: 1452465 - new version: 24.0.3 * Sat Sep 21 2019 kekepower <kekepower> 24.0.1-1.mga8.tainted + Revision: 1444223 - Update to version 24.0.1 * Fri Sep 20 2019 daviddavid <daviddavid> 24.0.0-2.mga8.tainted + Revision: 1443977 - new version: 24.0.0 * Tue Sep 17 2019 daviddavid <daviddavid> 23.2.1-2.mga8 + Revision: 1442773 - rebuild for python3.8 * Sun Jun 30 2019 daviddavid <daviddavid> 23.2.1-1.mga8 + Revision: 1416396 - new version: 23.2.1 * Thu Apr 18 2019 daviddavid <daviddavid> 23.1.0-3.mga7.tainted + Revision: 1393235 - do not install unwanted pkgconfig file (this prevent pulling some devel stuff) * Thu Apr 18 2019 daviddavid <daviddavid> 23.1.0-2.mga7 + Revision: 1393126 - rebuild against current mesa - enable Libfdk plugin * Sat Apr 06 2019 kekepower <kekepower> 23.1.0-1.mga7 + Revision: 1386330 - Update to version 23.1.0 * Sun Mar 31 2019 kekepower <kekepower> 23.0.2-1.mga7.tainted + Revision: 1383680 - Update to version 23.0.2 * Sun Mar 31 2019 umeabot <umeabot> 21.1.2-6.mga7.tainted + Revision: 1383580 - Qt5 Rebuild * Wed Jan 09 2019 daviddavid <daviddavid> 21.1.2-5.mga7 + Revision: 1353106 - rebuild for new Python 3.7 * Sun Sep 23 2018 umeabot <umeabot> 21.1.2-4.mga7 + Revision: 1299827 - Mageia 7 Mass Rebuild * Mon Jun 11 2018 daviddavid <daviddavid> 21.1.2-3.mga7.tainted + Revision: 1236284 - fix soname of new libobs-scripting lib * Sun Jun 03 2018 daviddavid <daviddavid> 21.1.2-2.mga7.tainted + Revision: 1233833 - add upstream patch to fix build with new Qt5 >= 5.11.0 * Mon May 14 2018 akien <akien> 21.1.2-1.mga7.tainted + Revision: 1229433 - Version 21.1.2 - Adds scripting interface with deps on swig, python, lua * Thu Apr 26 2018 daviddavid <daviddavid> 20.1.3-2.mga7.tainted + Revision: 1222643 - rebuild for new ffmpeg 4.0 * Sat Dec 30 2017 akien <akien> 20.1.3-1.mga7.tainted + Revision: 1187778 - Version 20.1.3 * Sat Aug 26 2017 akien <akien> 20.0.1-1.mga7 + Revision: 1148007 - Version 20.0.1 * Sun Jun 25 2017 akien <akien> 19.0.3-1.mga6.tainted + Revision: 1108392 - Version 19.0.3 * Thu May 25 2017 akien <akien> 19.0.2-1.mga6.tainted + Revision: 1104587 - Version 19.0.2 * Fri May 05 2017 akien <akien> 18.0.2-1.mga6.tainted + Revision: 1099222 - Version 18.0.2 * Tue May 02 2017 akien <akien> 18.0.1-2.mga6 + Revision: 1098313 - Rebuild for ffmpeg 3.3 * Sat Mar 11 2017 akien <akien> 18.0.1-1.mga6.tainted + Revision: 1091878 - Version 18.0.1 * Fri Mar 10 2017 akien <akien> 18.0.0-3.mga6.tainted + Revision: 1091628 - Rebuild for v4l-utils 1.12.3 * Wed Mar 08 2017 akien <akien> 18.0.0-2.mga6.tainted + Revision: 1090227 - Rebuild for ffmpeg 3.2.4 * Thu Mar 02 2017 akien <akien> 18.0.0-1.mga6.tainted + Revision: 1088507 - Version 18.0.0 * Sat Jan 21 2017 akien <akien> 17.0.2-1.mga6.tainted + Revision: 1082560 - Version 17.0.2 * Wed Jan 18 2017 akien <akien> 17.0.1-1.mga6.tainted + Revision: 1082292 - Version 17.0.1 * Wed Dec 28 2016 akien <akien> 17.0.0-1.mga6.tainted + Revision: 1078459 - Version 17.0.0 * Thu Nov 24 2016 akien <akien> 0.16.6-1.mga6.tainted + Revision: 1069718 - Version 0.16.6 * Thu Nov 10 2016 akien <akien> 0.16.5-1.1.mga6.tainted + Revision: 1066262 - Rebuild for tainted * Thu Nov 10 2016 akien <akien> 0.16.5-1.mga6 + Revision: 1066176 - Version 0.16.5 * Thu Oct 06 2016 akien <akien> 0.16.2-2.2.mga6.tainted + Revision: 1059247 - Tainted rebuild (x264 support) * Thu Oct 06 2016 akien <akien> 0.16.2-2.1.mga6 + Revision: 1059246 - Fix soname of new libobs-frontend-api lib * Thu Oct 06 2016 akien <akien> 0.16.2-1.1.mga6.tainted + Revision: 1059150 - Tainted rebuild (x264 support) * Wed Oct 05 2016 akien <akien> 0.16.2-1.mga6 + Revision: 1059069 - Version 0.16.2 * Tue Sep 06 2016 akien <akien> 0.15.4-3.mga6.tainted + Revision: 1050234 - Rebuild for tainted * Tue Sep 06 2016 akien <akien> 0.15.4-2.mga6 + Revision: 1050217 - Rebuild for core * Mon Sep 05 2016 akien <akien> 0.15.4-1.mga6.tainted + Revision: 1050186 - Version 0.15.4 * Sat Jul 30 2016 pterjan <pterjan> 0.15.2-3.mga6.tainted + Revision: 1044029 - Restrict to x86, mmx is needed * Sat Jul 30 2016 tmb <tmb> 0.15.2-2.mga6.tainted + Revision: 1043926 - submit to tainted * Thu Jul 28 2016 akien <akien> 0.15.2-1.mga6 + Revision: 1043816 - Add libvlc BR for vlc plugin - Version 0.15.2 * Sun Jun 26 2016 akien <akien> 0.14.2-2.mga6 + Revision: 1037715 - Add message about x264 support * Sun Jun 26 2016 akien <akien> 0.14.2-1.mga6 + Revision: 1037708 - Enable build without x264 plugin (for Core) - Only require x264 for tainted build - imported package obs-studio