* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2017-10-11 21:23 Patrice Clement
0 siblings, 0 replies; 7+ messages in thread
From: Patrice Clement @ 2017-10-11 21:23 UTC (permalink / raw
To: gentoo-commits
commit: 82e3d3b953257976714cc144dcd960471caa42a7
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 9 02:16:21 2017 +0000
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Wed Oct 11 21:04:18 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82e3d3b9
media-video/obs-studio: add a patch to fix a crash related to net-misc/curl.
Upstream Pull Request: https://github.com/jp9000/obs-studio/pull/1038
Closes: https://bugs.gentoo.org/633596
Closes: https://github.com/gentoo/gentoo/pull/564
Package-Manager: Portage-2.3.11, Repoman-2.3.3
.../files/obs-studio-20.0.1-fix-curl-crash.patch | 46 ++++++++
media-video/obs-studio/obs-studio-20.0.1-r1.ebuild | 121 +++++++++++++++++++++
2 files changed, 167 insertions(+)
diff --git a/media-video/obs-studio/files/obs-studio-20.0.1-fix-curl-crash.patch b/media-video/obs-studio/files/obs-studio-20.0.1-fix-curl-crash.patch
new file mode 100644
index 00000000000..178bb2e6715
--- /dev/null
+++ b/media-video/obs-studio/files/obs-studio-20.0.1-fix-curl-crash.patch
@@ -0,0 +1,46 @@
+From 379137d039e8db4a4f5f4dd8b56aaa21600fe962 Mon Sep 17 00:00:00 2001
+From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
+Date: Tue, 19 Sep 2017 15:33:55 +0200
+Subject: [PATCH] file-updater: fix crash due to network timeout
+
+If there is no network connection, OBS crashes after 5 minutes idling
+with following crash:
+
+*** longjmp causes uninitialized stack frame ***: obs terminated
+======= Backtrace: =========
+/lib64/libc.so.6(+0x6f1e3)[0x7f8f95f901e3]
+/lib64/libc.so.6(__fortify_fail+0x37)[0x7f8f96018ba7]
+/lib64/libc.so.6(+0xf7add)[0x7f8f96018add]
+/lib64/libc.so.6(__longjmp_chk+0x29)[0x7f8f96018a39]
+/usr/lib64/libcurl.so.4(+0xa5d5)[0x7f8f979b75d5]
+/lib64/libpthread.so.0(+0x10e30)[0x7f8f962cae30]
+/lib64/libc.so.6(__poll+0x2d)[0x7f8f95fff46d]
+/usr/lib64/libglib-2.0.so.0(+0x4a64c)[0x7f8f91b5564c]
+/usr/lib64/libglib-2.0.so.0(g_main_context_iteration+0x2c)[0x7f8f91b5575c]
+/usr/lib64/libQt5Core.so.5(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x5f)[0x7f8f9706c1ff]
+/usr/lib64/libQt5Core.so.5(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xfa)[0x7f8f9701defa]
+/usr/lib64/libQt5Core.so.5(_ZN16QCoreApplication4execEv+0x9c)[0x7f8f970258fc]
+obs(main+0x5ac)[0x4773dc]
+/lib64/libc.so.6(__libc_start_main+0xf0)[0x7f8f95f41700]
+obs(_start+0x29)[0x478389]
+
+Internet search [1] revealed that this is a libcurl bug that can be worked
+around by asking curl not to install signal handlers.
+
+[1] https://stackoverflow.com/a/10755612
+---
+ deps/file-updater/file-updater/file-updater.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/deps/file-updater/file-updater/file-updater.c b/deps/file-updater/file-updater/file-updater.c
+index ec639aeee..b8d649e05 100644
+--- a/deps/file-updater/file-updater/file-updater.c
++++ b/deps/file-updater/file-updater/file-updater.c
+@@ -117,6 +117,7 @@ static bool do_http_request(struct update_info *info, const char *url,
+ curl_easy_setopt(info->curl, CURLOPT_WRITEFUNCTION, http_write);
+ curl_easy_setopt(info->curl, CURLOPT_WRITEDATA, info);
+ curl_easy_setopt(info->curl, CURLOPT_FAILONERROR, true);
++ curl_easy_setopt(info->curl, CURLOPT_NOSIGNAL, 1);
+
+ if (!info->remote_url) {
+ // We only care about headers from the main package file
diff --git a/media-video/obs-studio/obs-studio-20.0.1-r1.ebuild b/media-video/obs-studio/obs-studio-20.0.1-r1.ebuild
new file mode 100644
index 00000000000..d8c5d14af74
--- /dev/null
+++ b/media-video/obs-studio/obs-studio-20.0.1-r1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils gnome2-utils
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/jp9000/obs-studio.git"
+ EGIT_SUBMODULES=()
+else
+ SRC_URI="https://github.com/jp9000/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Software for Recording and Streaming Live Video Content"
+HOMEPAGE="https://obsproject.com"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+alsa fdk imagemagick jack pulseaudio truetype v4l"
+
+COMMON_DEPEND="
+ >=dev-libs/jansson-2.5
+ dev-qt/qtcore:5
+ dev-qt/qtdeclarative:5
+ dev-qt/qtgui:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtquickcontrols:5
+ dev-qt/qtsql:5
+ dev-qt/qttest:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ media-video/ffmpeg:=[x264]
+ net-misc/curl
+ x11-libs/libXcomposite
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ alsa? ( media-libs/alsa-lib )
+ fdk? ( media-libs/fdk-aac:= )
+ imagemagick? ( media-gfx/imagemagick:= )
+ jack? ( virtual/jack )
+ pulseaudio? ( media-sound/pulseaudio )
+ truetype? (
+ media-libs/fontconfig
+ media-libs/freetype
+ )
+ v4l? ( media-libs/libv4l )
+"
+DEPEND="${COMMON_DEPEND}
+ imagemagick? (
+ || (
+ <media-gfx/imagemagick-7
+ (
+ >=media-gfx/imagemagick-7
+ >=dev-util/cmake-3.9
+ )
+ )
+ )
+"
+RDEPEND="${COMMON_DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-20.0.1-fix-curl-crash.patch"
+ "${FILESDIR}/${PN}-ImageMagick-header-path.patch"
+)
+
+CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
+
+src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DDISABLE_ALSA=$(usex !alsa)
+ -DDISABLE_FREETYPE=$(usex !truetype)
+ -DDISABLE_JACK=$(usex !jack)
+ -DDISABLE_LIBFDK=$(usex !fdk)
+ -DDISABLE_PULSEAUDIO=$(usex !pulseaudio)
+ -DDISABLE_V4L2=$(usex !v4l)
+ -DLIBOBS_PREFER_IMAGEMAGICK=$(usex imagemagick)
+ -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
+ -DOBS_VERSION_OVERRIDE=${PV}
+ -DUNIX_STRUCTURE=1
+ )
+ cmake-utils_src_configure
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+
+ if ! use alsa && ! use pulseaudio; then
+ elog
+ elog "For the audio capture features to be available,"
+ elog "either the 'alsa' or the 'pulseaudio' USE-flag needs to"
+ elog "be enabled."
+ elog
+ fi
+
+ if ! has_version "sys-apps/dbus"; then
+ elog
+ elog "The 'sys-apps/dbus' package is not installed, but"
+ elog "could be used for disabling hibernating, screensaving,"
+ elog "and sleeping. Where it is not installed,"
+ elog "'xdg-screensaver reset' is used instead"
+ elog "(if 'x11-misc/xdg-utils' is installed)."
+ elog
+ fi
+
+ if ! has_version "media-libs/speex"; then
+ elog
+ elog "For the speexdsp-based noise suppression filter"
+ elog "to be available, the 'media-libs/speex' package needs"
+ elog "to be installed."
+ elog
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2018-07-13 9:36 Tony Vroon
0 siblings, 0 replies; 7+ messages in thread
From: Tony Vroon @ 2018-07-13 9:36 UTC (permalink / raw
To: gentoo-commits
commit: 6b776b26f210470caae41bfdaa53606f156697b5
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 9 01:19:49 2018 +0000
Commit: Tony Vroon <chainsaw <AT> gentoo <DOT> org>
CommitDate: Fri Jul 13 09:36:16 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b776b26
media-video/obs-studio: fix build with Qt 5.11
Upstream commit: https://github.com/obsproject/obs-studio/commit/4fd06b98
Closes: https://bugs.gentoo.org/660350
Package-Manager: Portage-2.3.41, Repoman-2.3.9
.../files/obs-studio-21.0.2-qt-5.11.0.patch | 28 ++++++++++++++++++++++
media-video/obs-studio/obs-studio-21.0.2.ebuild | 2 ++
2 files changed, 30 insertions(+)
diff --git a/media-video/obs-studio/files/obs-studio-21.0.2-qt-5.11.0.patch b/media-video/obs-studio/files/obs-studio-21.0.2-qt-5.11.0.patch
new file mode 100644
index 00000000000..6eb7f7c3ca8
--- /dev/null
+++ b/media-video/obs-studio/files/obs-studio-21.0.2-qt-5.11.0.patch
@@ -0,0 +1,28 @@
+From 4fd06b9825465ae5eb2a9b862cdb89098f655f14 Mon Sep 17 00:00:00 2001
+From: Jimi Huotari <chiitoo@gentoo.org>
+Date: Sat, 17 Mar 2018 18:16:39 +0200
+Subject: [PATCH] frontend-tools: Include 'QAction' to fix build against Qt
+ 5.11
+
+Some headers are no longer unconditionally included, leading to
+build failures.
+
+http://code.qt.io/cgit/qt/qtbase.git/commit/?id=748836dae80a7d11901f3f0630168829076d11a8
+http://code.qt.io/cgit/qt/qtbase.git/commit/?id=000c76ada5cc21479fc479be16a7507fed6490f8
+http://code.qt.io/cgit/qt/qtbase.git/commit/?id=058474884c2505a8a00d4c59b4922bfcd3597c2f
+---
+ UI/frontend-plugins/frontend-tools/scripts.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/UI/frontend-plugins/frontend-tools/scripts.cpp b/UI/frontend-plugins/frontend-tools/scripts.cpp
+index d923dcf610..364757e48b 100644
+--- a/UI/frontend-plugins/frontend-tools/scripts.cpp
++++ b/UI/frontend-plugins/frontend-tools/scripts.cpp
+@@ -12,6 +12,7 @@
+ #include <QFont>
+ #include <QDialogButtonBox>
+ #include <QResizeEvent>
++#include <QAction>
+
+ #include <obs.hpp>
+ #include <obs-module.h>
diff --git a/media-video/obs-studio/obs-studio-21.0.2.ebuild b/media-video/obs-studio/obs-studio-21.0.2.ebuild
index db4647c07d1..a8842b169dc 100644
--- a/media-video/obs-studio/obs-studio-21.0.2.ebuild
+++ b/media-video/obs-studio/obs-studio-21.0.2.ebuild
@@ -55,6 +55,8 @@ COMMON_DEPEND="
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
+PATCHES="${FILESDIR}/${PN}-21.0.2-qt-5.11.0.patch"
+
CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
src_configure() {
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2018-07-13 9:36 Tony Vroon
0 siblings, 0 replies; 7+ messages in thread
From: Tony Vroon @ 2018-07-13 9:36 UTC (permalink / raw
To: gentoo-commits
commit: 56c84c9c9473e7651089b5d1fd0e64a542f71e69
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 17 22:29:00 2018 +0000
Commit: Tony Vroon <chainsaw <AT> gentoo <DOT> org>
CommitDate: Fri Jul 13 09:36:15 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56c84c9c
media-video/obs-studio: add support for scripting
Scripting support for Lua and Python 3 is enabled by automagic, if
the required libraries are found. This commit adds USE-flags and
a patch that give the user control on whether or not to do so.
Closes: https://bugs.gentoo.org/656956
Package-Manager: Portage-2.3.41, Repoman-2.3.9
Closes: https://github.com/gentoo/gentoo/pull/9151
Closes: https://bugs.gentoo.org/656956
.../obs-studio-21.1.2-use-less-automagic.patch | 167 +++++++++++++++++++++
media-video/obs-studio/metadata.xml | 4 +-
media-video/obs-studio/obs-studio-9999.ebuild | 26 +++-
3 files changed, 193 insertions(+), 4 deletions(-)
diff --git a/media-video/obs-studio/files/obs-studio-21.1.2-use-less-automagic.patch b/media-video/obs-studio/files/obs-studio-21.1.2-use-less-automagic.patch
new file mode 100644
index 00000000000..2c28c8e080d
--- /dev/null
+++ b/media-video/obs-studio/files/obs-studio-21.1.2-use-less-automagic.patch
@@ -0,0 +1,167 @@
+From eee6541153cfb6788ee088181781793de100e54c Mon Sep 17 00:00:00 2001
+From: Jimi Huotari <chiitoo@gentoo.org>
+Date: Mon, 9 Jul 2018 02:20:10 +0300
+Subject: [PATCH 1/2] deps/obs-scripting: Use less automagic for Lua/Python
+ detection
+
+This adds build-time options for disabling the Lua and/or Python
+scripting support in cases where users do not wish to build
+it, but have the required libraries installed.
+---
+ deps/obs-scripting/CMakeLists.txt | 73 +++++++++++++++++++------------
+ 1 file changed, 45 insertions(+), 28 deletions(-)
+
+diff --git a/deps/obs-scripting/CMakeLists.txt b/deps/obs-scripting/CMakeLists.txt
+index 835c1b30..46412779 100644
+--- a/deps/obs-scripting/CMakeLists.txt
++++ b/deps/obs-scripting/CMakeLists.txt
+@@ -1,6 +1,7 @@
+ cmake_minimum_required(VERSION 2.8)
+
+ if(NOT ENABLE_SCRIPTING)
++ message(STATUS "Scripting plugin disabled")
+ return()
+ endif()
+
+@@ -11,44 +12,60 @@ if(MSVC)
+ w32-pthreads)
+ endif()
+
+-find_package(Luajit QUIET)
+-find_package(PythonDeps QUIET)
+-find_package(SwigDeps QUIET 2)
++option(DISABLE_LUA "Disable Lua scripting support" OFF)
++option(DISABLE_PYTHON "Disable Python scripting support" OFF)
+
+ set(COMPILE_PYTHON FALSE CACHE BOOL "" FORCE)
+ set(COMPILE_LUA FALSE CACHE BOOL "" FORCE)
+
+-if(NOT SWIG_FOUND)
+- message(STATUS "Scripting: SWIG not found; scripting disabled")
+- return()
+-endif()
++if(NOT DISABLE_LUA)
++ find_package(Luajit QUIET)
+
+-if(NOT PYTHONLIBS_FOUND AND NOT LUAJIT_FOUND)
+- message(STATUS "Scripting: Neither Python 3 nor Luajit was found; scripting plugin disabled")
+- return()
+-endif()
+-
+-if(NOT LUAJIT_FOUND)
+- message(STATUS "Scripting: Luajit not found; Luajit support disabled")
++ if(NOT DISABLE_LUA AND NOT LUAJIT_FOUND)
++ message(STATUS "Luajit support not found.")
++ set(LUAJIT_FOUND FALSE)
++ else()
++ message(STATUS "Scripting: Luajit supported")
++ set(COMPILE_LUA TRUE CACHE BOOL "" FORCE)
++ endif()
+ else()
+- message(STATUS "Scripting: Luajit supported")
+- set(COMPILE_LUA TRUE CACHE BOOL "" FORCE)
++ message(STATUS "Scripting: Luajit support disabled")
++ set(LUAJIT_FOUND FALSE)
+ endif()
+
+-if(NOT PYTHONLIBS_FOUND)
+- message(STATUS "Scripting: Python 3 not found; Python support disabled")
++if(NOT DISABLE_PYTHON)
++ find_package(PythonDeps QUIET)
++
++ if(NOT DISABLE_PYTHON AND NOT PYTHONLIBS_FOUND)
++ message(STATUS "Python support not found.")
++ set(PYTHON_FOUND FALSE)
++ set(PYTHONLIBS_FOUND FALSE)
++ else()
++ message(STATUS "Scripting: Python 3 supported")
++ set(PYTHON_FOUND TRUE)
++ set(COMPILE_PYTHON TRUE CACHE BOOL "" FORCE)
++
++ get_filename_component(PYTHON_LIB "${PYTHON_LIBRARIES}" NAME)
++ string(REGEX REPLACE "\\.[^.]*$" "" PYTHON_LIB ${PYTHON_LIB})
++
++ if(WIN32)
++ string(REGEX REPLACE "_d" "" PYTHON_LIB "${PYTHON_LIB}")
++ endif()
++ endif()
++else()
++ message(STATUS "Scripting: Python 3 support disabled")
+ set(PYTHON_FOUND FALSE)
+ set(PYTHONLIBS_FOUND FALSE)
+-else()
+- message(STATUS "Scripting: Python 3 supported")
+- set(PYTHON_FOUND TRUE)
+- set(COMPILE_PYTHON TRUE CACHE BOOL "" FORCE)
+-
+- get_filename_component(PYTHON_LIB "${PYTHON_LIBRARIES}" NAME)
+- string(REGEX REPLACE "\\.[^.]*$" "" PYTHON_LIB ${PYTHON_LIB})
+- if(WIN32)
+- string(REGEX REPLACE "_d" "" PYTHON_LIB "${PYTHON_LIB}")
+- endif()
++endif()
++
++find_package(SwigDeps QUIET 2)
++
++if(NOT SWIG_FOUND)
++ message(STATUS "Scripting: SWIG not found; scripting disabled")
++endif()
++
++if(NOT PYTHONLIBS_FOUND AND NOT LUAJIT_FOUND)
++ message(STATUS "Scripting: Neither Python 3 nor Luajit was found; scripting plugin disabled")
+ endif()
+
+ set(SCRIPTING_ENABLED ON CACHE BOOL "Interal global cmake variable" FORCE)
+--
+2.18.0
+
+From 79006adaf2b93ed4ddc07ff236a9ed1fcd09e47f Mon Sep 17 00:00:00 2001
+From: Jimi Huotari <chiitoo@gentoo.org>
+Date: Wed, 11 Jul 2018 02:08:51 +0300
+Subject: [PATCH 2/2] obs-filters: Use less automagic for SpeexDSP detection
+
+This adds a build-time option for disabling the SpeexDSP-based
+Noise Suppression filter support in cases where users do not
+wish to build it, but have the required library installed.
+---
+ plugins/obs-filters/CMakeLists.txt | 24 +++++++++++++++++-------
+ 1 file changed, 17 insertions(+), 7 deletions(-)
+
+diff --git a/plugins/obs-filters/CMakeLists.txt b/plugins/obs-filters/CMakeLists.txt
+index ec4289cc..4d862b0a 100644
+--- a/plugins/obs-filters/CMakeLists.txt
++++ b/plugins/obs-filters/CMakeLists.txt
+@@ -1,13 +1,23 @@
+ project(obs-filters)
+
+-find_package(Libspeexdsp QUIET)
+-if(LIBSPEEXDSP_FOUND)
+- set(obs-filters_LIBSPEEXDSP_SOURCES
+- noise-suppress-filter.c)
+- set(obs-filters_LIBSPEEXDSP_LIBRARIES
+- ${LIBSPEEXDSP_LIBRARIES})
++option(DISABLE_SPEEXDSP "Disable building of the SpeexDSP-based Noise Suppression filter" OFF)
++
++if(DISABLE_SPEEXDSP)
++ message(STATUS "SpeexDSP support disabled")
++ set(LIBSPEEXDSP_FOUND FALSE)
+ else()
+- message(STATUS "Speexdsp library not found, speexdsp filters disabled")
++ find_package(Libspeexdsp QUIET)
++
++ if(NOT LIBSPEEXDSP_FOUND)
++ message(STATUS "SpeexDSP support not found")
++ set(LIBSPEEXDSP_FOUND FALSE)
++ else()
++ message(STATUS "SpeexDSP supported")
++ set(obs-filters_LIBSPEEXDSP_SOURCES
++ noise-suppress-filter.c)
++ set(obs-filters_LIBSPEEXDSP_LIBRARIES
++ ${LIBSPEEXDSP_LIBRARIES})
++ endif()
+ endif()
+
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/obs-filters-config.h.in"
+--
+2.18.0
+
diff --git a/media-video/obs-studio/metadata.xml b/media-video/obs-studio/metadata.xml
index 27ed2bccb4c..20792bdd8ba 100644
--- a/media-video/obs-studio/metadata.xml
+++ b/media-video/obs-studio/metadata.xml
@@ -14,7 +14,9 @@
<use>
<flag name="fdk">Enable libfdk support for AAC encoding.</flag>
<flag name="imagemagick">Use ImageMagick for image loading instead of FFmpeg.</flag>
- <flag name="nvenc">Enable NVENC encoding for nVidia video cards</flag>
+ <flag name="luajit">Build support for scripting via Luajit.</flag>
+ <flag name="nvenc">Enable NVENC encoding for nVidia video cards.</flag>
+ <flag name="python">Build support for scripting via Python 3.</flag>
</use>
<upstream>
<remote-id type="github">jp9000/obs-studio</remote-id>
diff --git a/media-video/obs-studio/obs-studio-9999.ebuild b/media-video/obs-studio/obs-studio-9999.ebuild
index e030ae7b1d7..b1dee2913b2 100644
--- a/media-video/obs-studio/obs-studio-9999.ebuild
+++ b/media-video/obs-studio/obs-studio-9999.ebuild
@@ -3,9 +3,10 @@
EAPI=6
+PYTHON_COMPAT=( python{3_4,3_5,3_6} )
CMAKE_MIN_VERSION=3.9.6
-inherit cmake-utils gnome2-utils
+inherit cmake-utils gnome2-utils python-any-r1
if [[ ${PV} == *9999 ]]; then
inherit git-r3
@@ -21,7 +22,7 @@ HOMEPAGE="https://obsproject.com"
LICENSE="GPL-2"
SLOT="0"
-IUSE="+alsa fdk imagemagick jack pulseaudio truetype v4l"
+IUSE="+alsa fdk imagemagick jack luajit nvenc pulseaudio python truetype v4l"
COMMON_DEPEND="
>=dev-libs/jansson-2.5
@@ -44,16 +45,24 @@ COMMON_DEPEND="
fdk? ( media-libs/fdk-aac:= )
imagemagick? ( media-gfx/imagemagick:= )
jack? ( virtual/jack )
+ luajit? ( dev-lang/luajit:2 )
+ nvenc? ( media-video/ffmpeg:=[nvenc] )
pulseaudio? ( media-sound/pulseaudio )
+ python? ( ${PYTHON_DEPS} )
truetype? (
media-libs/fontconfig
media-libs/freetype
)
v4l? ( media-libs/libv4l )
"
-DEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+ luajit? ( dev-lang/swig )
+ python? ( dev-lang/swig )
+"
RDEPEND="${COMMON_DEPEND}"
+PATCHES="${FILESDIR}/${PN}-21.1.2-use-less-automagic.patch"
+
CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
src_configure() {
@@ -69,6 +78,17 @@ src_configure() {
-DOBS_MULTIARCH_SUFFIX=${libdir#lib}
-DUNIX_STRUCTURE=1
)
+
+ if use luajit || use python; then
+ mycmakeargs+=(
+ -DDISABLE_LUA=$(usex !luajit)
+ -DDISABLE_PYTHON=$(usex !python)
+ -DENABLE_SCRIPTING=yes
+ )
+ else
+ mycmakeargs+=( -DENABLE_SCRIPTING=no )
+ fi
+
cmake-utils_src_configure
}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2018-12-16 16:16 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2018-12-16 16:16 UTC (permalink / raw
To: gentoo-commits
commit: 08c20ef7ae4d7408162732528c3edbae45a69637
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 12 13:32:51 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Dec 16 16:13:19 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08c20ef7
media-video/obs-studio: fix build with USE="fdk"
Upstream: https://github.com/obsproject/obs-studio/commit/cf73fa6d
Closes: https://bugs.gentoo.org/672430
Signed-off-by: Jimi Huotari <chiitoo <AT> gentoo.org>
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../files/obs-studio-22.0.3-fdk-build-fix.patch | 52 ++++++++++++++++++++++
media-video/obs-studio/obs-studio-22.0.3.ebuild | 5 ++-
2 files changed, 56 insertions(+), 1 deletion(-)
diff --git a/media-video/obs-studio/files/obs-studio-22.0.3-fdk-build-fix.patch b/media-video/obs-studio/files/obs-studio-22.0.3-fdk-build-fix.patch
new file mode 100644
index 00000000000..73329cf8040
--- /dev/null
+++ b/media-video/obs-studio/files/obs-studio-22.0.3-fdk-build-fix.patch
@@ -0,0 +1,52 @@
+From 5cf2b5fbf925412620e2a40552d6348203851cb3 Mon Sep 17 00:00:00 2001
+From: pkviet <pkv.stream@gmail.com>
+Date: Thu, 29 Nov 2018 21:10:45 +0100
+Subject: [PATCH] obs-libfdk: Compatibility fix for new API
+
+fdk-aac v2.0.0 (aacenc 4.0.0) changes the AACENC_InfoStruct:
+the encoderDelay parameter is replaced by two, nDelay and
+nDelayCore. This patch checks the lib version and adjust the parameter
+accordingly.
+---
+ plugins/obs-libfdk/obs-libfdk.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/plugins/obs-libfdk/obs-libfdk.c b/plugins/obs-libfdk/obs-libfdk.c
+index d6eb496184..94b139de57 100644
+--- a/plugins/obs-libfdk/obs-libfdk.c
++++ b/plugins/obs-libfdk/obs-libfdk.c
+@@ -9,7 +9,6 @@
+
+ #include <fdk-aac/aacenc_lib.h>
+
+-
+ static const char *libfdk_get_error(AACENC_ERROR err)
+ {
+ switch(err) {
+@@ -224,7 +223,7 @@ static bool libfdk_encode(void *data, struct encoder_frame *frame,
+ void *in_ptr;
+ void *out_ptr;
+ AACENC_ERROR err;
+-
++ int64_t encoderDelay;
+
+ in_ptr = frame->data[0];
+ in_size = enc->frame_size_bytes;
+@@ -261,10 +260,13 @@ static bool libfdk_encode(void *data, struct encoder_frame *frame,
+ }
+
+ *received_packet = true;
+-
+- packet->pts = enc->total_samples -
+- enc->info.encoderDelay; // TODO: Just a guess, find out if that's actualy right
+- packet->dts = enc->total_samples - enc->info.encoderDelay;
++#if (AACENCODER_LIB_VL0 >= 4)
++ encoderDelay= enc->info.nDelay;
++#else
++ encoderDelay= enc->info.encoderDelay;
++#endif
++ packet->pts = enc->total_samples - encoderDelay;
++ packet->dts = enc->total_samples - encoderDelay;
+ packet->data = enc->packet_buffer;
+ packet->size = out_args.numOutBytes;
+ packet->type = OBS_ENCODER_AUDIO;
diff --git a/media-video/obs-studio/obs-studio-22.0.3.ebuild b/media-video/obs-studio/obs-studio-22.0.3.ebuild
index ba4f33009b6..c15bd0ab071 100644
--- a/media-video/obs-studio/obs-studio-22.0.3.ebuild
+++ b/media-video/obs-studio/obs-studio-22.0.3.ebuild
@@ -67,7 +67,10 @@ DEPEND="${COMMON_DEPEND}
"
RDEPEND="${COMMON_DEPEND}"
-PATCHES=( "${FILESDIR}/${PN}-21.1.2-use-less-automagic.patch" )
+PATCHES=(
+ "${FILESDIR}/${PN}-21.1.2-use-less-automagic.patch"
+ "${FILESDIR}/${PN}-22.0.3-fdk-build-fix.patch" # bug 672430
+)
CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2021-01-31 15:16 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2021-01-31 15:16 UTC (permalink / raw
To: gentoo-commits
commit: d071aba9e0ce3f910469fd95ba391456ae23235a
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 31 14:15:40 2021 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jan 31 15:01:55 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d071aba9
media-video/obs-studio: add version 26.1.2
Closes: https://bugs.gentoo.org/745996
Closes: https://bugs.gentoo.org/761939
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Jimi Huotari <chiitoo <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/18883
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-video/obs-studio/Manifest | 1 +
.../files/obs-studio-26.1.2-fix-alsa-crash.patch | 30 ++++
media-video/obs-studio/obs-studio-26.1.2.ebuild | 155 +++++++++++++++++++++
3 files changed, 186 insertions(+)
diff --git a/media-video/obs-studio/Manifest b/media-video/obs-studio/Manifest
index aa70deb5fcb..fb9bdc10f87 100644
--- a/media-video/obs-studio/Manifest
+++ b/media-video/obs-studio/Manifest
@@ -1 +1,2 @@
DIST obs-studio-25.0.8.tar.gz 9531713 BLAKE2B 4775ca8305e1beee4d926eff728351b699ca4d52f66e53409dbcfe1f73699df0286fadc0c138cb76b8eb73e70a143719e46f030b6d15d43629bdcbf23bdb88af SHA512 a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08
+DIST obs-studio-26.1.2.tar.gz 16624899 BLAKE2B 655a6c71d3a0ae6ae1fc2d166a148002bb17d6eaec06d5633a10fdbfe7f42e073526ede83cd36ad21c440debe870b41b43724caa00633733f1e196d918304adc SHA512 cd95fbf587f7edfe415cae75299d65c1d771bb118649fb839ae43d77145d87725c23df3360aa7b8c35ab8b62e5ec7983a8b02f8b102caa78f768eb58b4263417
diff --git a/media-video/obs-studio/files/obs-studio-26.1.2-fix-alsa-crash.patch b/media-video/obs-studio/files/obs-studio-26.1.2-fix-alsa-crash.patch
new file mode 100644
index 00000000000..2e52926feba
--- /dev/null
+++ b/media-video/obs-studio/files/obs-studio-26.1.2-fix-alsa-crash.patch
@@ -0,0 +1,30 @@
+From 41367bb2b4732507248f2b3c2e43e2aa46c5ef2a Mon Sep 17 00:00:00 2001
+From: Jimi Huotari <chiitoo@gentoo.org>
+Date: Wed, 30 Dec 2020 03:14:34 +0200
+Subject: [PATCH] UI: Fix crash when no audio backends are available
+
+This commit prevents a crash in, for example, Linux configurations
+where PulseAudio is disabled, which leads into 'mod' being 'null',
+which in turn leads into a segmentation fault when an ALSA source
+is selected.
+
+Closes https://github.com/obsproject/obs-studio/issues/3485
+---
+ UI/context-bar-controls.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/UI/context-bar-controls.cpp b/UI/context-bar-controls.cpp
+index 9dff8979a2..9ef850b6d1 100644
+--- a/UI/context-bar-controls.cpp
++++ b/UI/context-bar-controls.cpp
+@@ -179,6 +179,10 @@ void AudioCaptureToolbar::Init()
+
+ obs_module_t *mod =
+ get_os_module("win-wasapi", "mac-capture", "linux-pulseaudio");
++ if (!mod) {
++ return;
++ }
++
+ const char *device_str =
+ get_os_text(mod, "Device", "CoreAudio.Device", "Device");
+ ui->deviceLabel->setText(device_str);
diff --git a/media-video/obs-studio/obs-studio-26.1.2.ebuild b/media-video/obs-studio/obs-studio-26.1.2.ebuild
new file mode 100644
index 00000000000..9833f5fb6b6
--- /dev/null
+++ b/media-video/obs-studio/obs-studio-26.1.2.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
+LUA_COMPAT=( luajit )
+# Does not work with 3.8+ https://bugs.gentoo.org/754006
+PYTHON_COMPAT=( python3_7 )
+
+inherit cmake lua-single python-single-r1 xdg-utils
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git"
+ EGIT_SUBMODULES=()
+else
+ SRC_URI="https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Software for Recording and Streaming Live Video Content"
+HOMEPAGE="https://obsproject.com"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+alsa fdk imagemagick jack lua nvenc pulseaudio python speex +ssl truetype v4l vlc"
+REQUIRED_USE="
+ lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+BDEPEND="
+ lua? ( dev-lang/swig )
+ python? ( dev-lang/swig )
+"
+DEPEND="
+ >=dev-libs/jansson-2.5
+ dev-qt/qtcore:5
+ dev-qt/qtdeclarative:5
+ dev-qt/qtgui:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtquickcontrols:5
+ dev-qt/qtsql:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ media-libs/x264:=
+ media-video/ffmpeg:=[x264]
+ net-misc/curl
+ sys-apps/dbus
+ sys-libs/zlib
+ virtual/udev
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXfixes
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libxcb
+ alsa? ( media-libs/alsa-lib )
+ fdk? ( media-libs/fdk-aac:= )
+ imagemagick? ( media-gfx/imagemagick:= )
+ jack? ( virtual/jack )
+ lua? ( ${LUA_DEPS} )
+ nvenc? ( >=media-video/ffmpeg-4[video_cards_nvidia] )
+ pulseaudio? ( media-sound/pulseaudio )
+ python? ( ${PYTHON_DEPS} )
+ speex? ( media-libs/speexdsp )
+ ssl? ( net-libs/mbedtls:= )
+ truetype? (
+ media-libs/fontconfig
+ media-libs/freetype
+ )
+ v4l? ( media-libs/libv4l )
+ vlc? ( media-video/vlc:= )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-26.1.2-fix-alsa-crash.patch" )
+
+pkg_setup() {
+ use lua && lua-single_pkg_setup
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DDISABLE_ALSA=$(usex !alsa)
+ -DDISABLE_FREETYPE=$(usex !truetype)
+ -DDISABLE_JACK=$(usex !jack)
+ -DDISABLE_LIBFDK=$(usex !fdk)
+ -DDISABLE_PULSEAUDIO=$(usex !pulseaudio)
+ -DDISABLE_SPEEXDSP=$(usex !speex)
+ -DDISABLE_V4L2=$(usex !v4l)
+ -DDISABLE_VLC=$(usex !vlc)
+ -DLIBOBS_PREFER_IMAGEMAGICK=$(usex imagemagick)
+ -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
+ -DUNIX_STRUCTURE=1
+ -DWITH_RTMPS=$(usex ssl)
+ )
+
+ if [[ ${PV} != *9999 ]]; then
+ mycmakeargs+=(
+ -DOBS_VERSION_OVERRIDE=${PV}
+ )
+ fi
+
+ if use lua || use python; then
+ mycmakeargs+=(
+ -DDISABLE_LUA=$(usex !lua)
+ -DDISABLE_PYTHON=$(usex !python)
+ -DENABLE_SCRIPTING=yes
+ )
+ else
+ mycmakeargs+=( -DENABLE_SCRIPTING=no )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ #external plugins may need some things not installed by default, install them here
+ insinto /usr/include/obs/UI/obs-frontend-api
+ doins UI/obs-frontend-api/obs-frontend-api.h
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+
+ if ! use alsa && ! use pulseaudio; then
+ elog
+ elog "For the audio capture features to be available,"
+ elog "either the 'alsa' or the 'pulseaudio' USE-flag needs to"
+ elog "be enabled."
+ elog
+ fi
+
+ if ! has_version "sys-apps/dbus"; then
+ elog
+ elog "The 'sys-apps/dbus' package is not installed, but"
+ elog "could be used for disabling hibernating, screensaving,"
+ elog "and sleeping. Where it is not installed,"
+ elog "'xdg-screensaver reset' is used instead"
+ elog "(if 'x11-misc/xdg-utils' is installed)."
+ elog
+ fi
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2021-07-01 16:57 Ionen Wolkens
0 siblings, 0 replies; 7+ messages in thread
From: Ionen Wolkens @ 2021-07-01 16:57 UTC (permalink / raw
To: gentoo-commits
commit: 2c4e606350f81335053fc77a81bc9790379adcb9
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 1 04:56:24 2021 +0000
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Jul 1 16:54:42 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c4e6063
media-video/obs-studio: tidy with small fixes
Finishing the last few bits from previous PR.
- python3_10 compat
- migrate to xdg eclass
- drop USE=imagemagick, broken and upstream has deprecated it
- add missing cups for CEF, and alsa-lib if USE=-alsa
- merge duplicate pkg_postinst() that's been there for a long time
- scrubbed python patch, moved pull request ref to it
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
.../files/obs-studio-26.1.2-python-3.8.patch | 12 +---
media-video/obs-studio/obs-studio-27.0.1.ebuild | 80 +++++++++++-----------
2 files changed, 42 insertions(+), 50 deletions(-)
diff --git a/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch b/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch
index c4709c65468..d9e328ea4ef 100644
--- a/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch
+++ b/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch
@@ -1,15 +1,9 @@
-From 413fbe27ee68881f60265f0f2dd670ce42ca220e Mon Sep 17 00:00:00 2001
+https://bugs.gentoo.org/754006
+
+https://github.com/obsproject/obs-studio/pull/3335
From: Matt Gajownik <matt@obsproject.com>
Date: Tue, 25 Aug 2020 19:28:26 +1000
Subject: [PATCH] libobs/util: Fix loading Python binary modules on *nix
-
-Fixes #2222
----
- libobs/util/platform-nix.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/libobs/util/platform-nix.c b/libobs/util/platform-nix.c
-index 26800d52f7c..997b62db1a3 100644
--- a/libobs/util/platform-nix.c
+++ b/libobs/util/platform-nix.c
@@ -71,7 +71,8 @@ void *os_dlopen(const char *path)
diff --git a/media-video/obs-studio/obs-studio-27.0.1.ebuild b/media-video/obs-studio/obs-studio-27.0.1.ebuild
index 3ce88e1927c..56839893506 100644
--- a/media-video/obs-studio/obs-studio-27.0.1.ebuild
+++ b/media-video/obs-studio/obs-studio-27.0.1.ebuild
@@ -5,17 +5,17 @@ EAPI=7
CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
LUA_COMPAT=( luajit )
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit xdg cmake lua-single python-single-r1
OBS_BROWSER_COMMIT="f1a61c5a2579e5673765c31a47c2053d4b502d4b"
CEF_DIR="cef_binary_4280_linux64"
-inherit cmake lua-single python-single-r1 xdg-utils
-
-if [[ ${PV} == *9999 ]]; then
+if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git"
- EGIT_SUBMODULES=( "plugins/obs-browser" )
+ EGIT_SUBMODULES=( plugins/obs-browser )
else
SRC_URI="https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" browser? ( https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz )"
@@ -28,7 +28,10 @@ HOMEPAGE="https://obsproject.com"
LICENSE="GPL-2"
SLOT="0"
-IUSE="+alsa browser decklink fdk imagemagick jack lua nvenc pipewire pulseaudio python speex +ssl truetype v4l vlc wayland"
+IUSE="
+ +alsa browser decklink fdk jack lua nvenc pipewire
+ pulseaudio python speex +ssl truetype v4l vlc wayland
+"
REQUIRED_USE="
browser? ( || ( alsa pulseaudio ) )
lua? ( ${LUA_REQUIRED_USE} )
@@ -40,7 +43,7 @@ BDEPEND="
python? ( dev-lang/swig )
"
DEPEND="
- >=dev-libs/jansson-2.5
+ dev-libs/jansson
dev-qt/qtcore:5
dev-qt/qtdeclarative:5
dev-qt/qtgui:5[wayland?]
@@ -56,14 +59,14 @@ DEPEND="
media-video/ffmpeg:=[x264]
net-misc/curl
sys-apps/dbus
- sys-libs/zlib
+ sys-libs/zlib:=
virtual/udev
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
- x11-libs/libxcb
+ x11-libs/libxcb:=
alsa? ( media-libs/alsa-lib )
browser? (
app-accessibility/at-spi2-atk
@@ -72,21 +75,22 @@ DEPEND="
dev-libs/glib
dev-libs/nspr
dev-libs/nss
+ media-libs/alsa-lib
media-libs/fontconfig
+ net-print/cups
+ x11-libs/libXScrnSaver
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
- x11-libs/libXScrnSaver
x11-libs/libXtst
)
fdk? ( media-libs/fdk-aac:= )
- imagemagick? ( media-gfx/imagemagick:= )
jack? ( virtual/jack )
lua? ( ${LUA_DEPS} )
nvenc? ( >=media-video/ffmpeg-4[video_cards_nvidia] )
- pipewire? ( media-video/pipewire )
+ pipewire? ( media-video/pipewire:= )
pulseaudio? ( media-sound/pulseaudio )
python? ( ${PYTHON_DEPS} )
speex? ( media-libs/speexdsp )
@@ -102,15 +106,17 @@ DEPEND="
RDEPEND="${DEPEND}"
QA_PREBUILT="
- /usr/lib*/obs-plugins/chrome-sandbox
- /usr/lib*/obs-plugins/libcef.so
- /usr/lib*/obs-plugins/libEGL.so
- /usr/lib*/obs-plugins/libGLESv2.so
- /usr/lib*/obs-plugins/swiftshader/libEGL.so
- /usr/lib*/obs-plugins/swiftshader/libGLESv2.so
+ usr/lib*/obs-plugins/chrome-sandbox
+ usr/lib*/obs-plugins/libEGL.so
+ usr/lib*/obs-plugins/libGLESv2.so
+ usr/lib*/obs-plugins/libcef.so
+ usr/lib*/obs-plugins/swiftshader/libEGL.so
+ usr/lib*/obs-plugins/swiftshader/libGLESv2.so
"
-PATCHES=( "${FILESDIR}/${PN}-26.1.2-python-3.8.patch" ) # https://github.com/obsproject/obs-studio/pull/3335
+PATCHES=(
+ "${FILESDIR}/${PN}-26.1.2-python-3.8.patch"
+)
pkg_setup() {
use lua && lua-single_pkg_setup
@@ -119,19 +125,19 @@ pkg_setup() {
src_unpack() {
default
- if [[ ${PV} != *9999 ]]; then
- if use browser; then
- rm -d "${P}/plugins/obs-browser" || die
- mv "obs-browser-${OBS_BROWSER_COMMIT}" "${P}/plugins/obs-browser" || die
- fi
- else
+
+ if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
+ elif use browser; then
+ rm -d ${P}/plugins/obs-browser || die
+ mv obs-browser-${OBS_BROWSER_COMMIT} ${P}/plugins/obs-browser || die
fi
}
src_configure() {
local libdir=$(get_libdir)
local mycmakeargs=(
+ $(usex browser -DCEF_ROOT_DIR=../${CEF_DIR} '')
-DBUILD_BROWSER=$(usex browser)
-DBUILD_VST=no
-DENABLE_WAYLAND=$(usex wayland)
@@ -145,24 +151,21 @@ src_configure() {
-DDISABLE_SPEEXDSP=$(usex !speex)
-DDISABLE_V4L2=$(usex !v4l)
-DDISABLE_VLC=$(usex !vlc)
- -DLIBOBS_PREFER_IMAGEMAGICK=$(usex imagemagick)
-DOBS_MULTIARCH_SUFFIX=${libdir#lib}
-DUNIX_STRUCTURE=1
-DWITH_RTMPS=$(usex ssl)
+
+ # deprecated and currently cause issues
+ # https://github.com/obsproject/obs-studio/pull/4560#issuecomment-826345608
+ -DLIBOBS_PREFER_IMAGEMAGICK=no
)
- if [[ ${PV} != *9999 ]]; then
+ if [[ ${PV} != 9999 ]]; then
mycmakeargs+=(
-DOBS_VERSION_OVERRIDE=${PV}
)
fi
- if use browser; then
- mycmakeargs+=(
- -DCEF_ROOT_DIR="../${CEF_DIR}"
- )
- fi
-
if use lua || use python; then
mycmakeargs+=(
-DDISABLE_LUA=$(usex !lua)
@@ -178,13 +181,14 @@ src_configure() {
src_install() {
cmake_src_install
- #external plugins may need some things not installed by default, install them here
+
+ # external plugins may need some things not installed by default, install them here
insinto /usr/include/obs/UI/obs-frontend-api
doins UI/obs-frontend-api/obs-frontend-api.h
}
pkg_postinst() {
- xdg_icon_cache_update
+ xdg_pkg_postinst
if ! use alsa && ! use pulseaudio; then
elog
@@ -203,9 +207,7 @@ pkg_postinst() {
elog "(if 'x11-misc/xdg-utils' is installed)."
elog
fi
-}
-pkg_postinst() {
if use python; then
ewarn "This ebuild applies a patch that is not yet accepted upstream,"
ewarn "and while it fixes Python support at least to some extent, it"
@@ -214,7 +216,3 @@ pkg_postinst() {
ewarn "Please report any such issues to the Gentoo maintainer."
fi
}
-
-pkg_postrm() {
- xdg_icon_cache_update
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/
@ 2022-04-01 19:43 Ionen Wolkens
0 siblings, 0 replies; 7+ messages in thread
From: Ionen Wolkens @ 2022-04-01 19:43 UTC (permalink / raw
To: gentoo-commits
commit: 7dcedc667ad80443fc894f4f8aee62ec44785fa0
Author: Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 1 18:24:03 2022 +0000
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri Apr 1 19:42:51 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7dcedc66
media-video/obs-studio: remove version 27.1.3
Also remove no longer needed patches.
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Jimi Huotari <chiitoo <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/24853
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
media-video/obs-studio/Manifest | 3 -
.../files/obs-studio-26.1.2-python-3.8.patch | 18 --
.../files/obs-studio-27.1.3-ffmpeg-5.0.patch | 314 ---------------------
media-video/obs-studio/obs-studio-27.1.3-r2.ebuild | 214 --------------
4 files changed, 549 deletions(-)
diff --git a/media-video/obs-studio/Manifest b/media-video/obs-studio/Manifest
index e6d41f708a76..86c897e4d5f3 100644
--- a/media-video/obs-studio/Manifest
+++ b/media-video/obs-studio/Manifest
@@ -1,7 +1,4 @@
-DIST cef_binary_4280_linux64.tar.bz2 79740715 BLAKE2B c648a9a4205094450f9eae407e98cbc3da2b7cd81b3c19c4f52cfa3efcca01dce40528018996c65f026eb97520d78040165d1906b0d19236a86e76ec39c58c26 SHA512 060a5a8716a75b4b96dfb6ac28c132e22b93107915d680311c1b9d4fd12c7712a9e3497338eac6d2b9f4e74f2dc005a75d195c597bba049e4731fe3724f519ba
DIST cef_binary_4638_linux64.tar.bz2 104578246 BLAKE2B 13ee05d4a2fbf27290506297416b298c786954450c19183b493d13aa691db409c22b30870fbc55adf814ff30142a666eb8b172f16ccc48e6cf01135c72e5d6d6 SHA512 2eb01151e07adf332affce36a659c6e87da1fbc403c65db7e7c53472ff418df6cd04300a7c6ebc8789c094926429cc70d829e556e5de3127da230f8258fabe49
DIST obs-browser-915761778ec1eae99e740ad4bf63b40db3142ee2.tar.gz 100021 BLAKE2B d72df588aaeaf199c6ea5a7e419bb4792ef8b4c4237e700f75064d96caaec83ed2be2ea4ab34ba31e30a87ec6cbf1f267dd7b100c3a6cfec36e46b2eca8c4b2e SHA512 3ab6118a9509054ea4e8aed14dade7f374495ba25fcb5295a3ef7ed29e6e3305b0ae2f12ba2c0d27fcd6886822c98ab44a48fa9a4b66ae0507ab2bf1001157cb
-DIST obs-browser-aee43000bd994022cd73e32dc50938ab777d4a06.tar.gz 89603 BLAKE2B a51b92f829ecb7055dcf969d6d5bdc4632b51288f0bc7e2ab66fda087da608869ddffccda83aa925f049c79e745a6f67e70ec72303184b970f5009fe37b34054 SHA512 8159ca02b5c30d2733ce8e566f21d6b77d6b7beabd0a5898049ee83b0b4d720b967fc55fcf876cd772fdaa12ca08163a0f8cabf249a9b3b6eb56b7666d1192c7
-DIST obs-studio-27.1.3.tar.gz 15994678 BLAKE2B 5544a1ecdb04dca7f6422936ea5499a206b4beb8e5332605c18cd72a91ce73aa74ff06c49a106931822c1c413ee94d383942f173a71f2b21168a00495b4e301f SHA512 04c11c79e3b091aa9ea8fc6674c9fbcaa1c924fe049f68e9be63f63724c31305d6e4fb33aecdd4d0095d20013e2ee188983f6938b175257368d2260681c2fb39
DIST obs-studio-27.2.3.tar.gz 16383685 BLAKE2B 76802ba67dcebccabd9b2a1f09f505a4aea83887b445093c51a2c7a49fbaa064549b6212bd1b2f3200674a78349b2de4bfa54d14871c76be248cd62139d98a56 SHA512 c34e850e1a83e55aed952611257446a39d7ba4456b94f74d91c85d09d77361af2f76848f7d3f3d8ba7ae76c926129adad555e2f54d632658832596d0f2696a3c
DIST obs-studio-27.2.4.tar.gz 16385399 BLAKE2B 00c05ecd055d707b7132ca4b20e1c4946b682c0f79f1477167ae55aba3ec367c97b05aac190b07260f936e68f79f2d58e19dcc0602f70408f4c056eb733a6fdd SHA512 575341dd3d9240b21881517a16d01ca11f833e08b40ca7990f0360b4cd1076e8217a9bb8dddf174eca5429e6eadaadb6cfdbd61d24e0eb13ebeaa7f29cfad8bf
diff --git a/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch b/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch
deleted file mode 100644
index d9e328ea4efb..000000000000
--- a/media-video/obs-studio/files/obs-studio-26.1.2-python-3.8.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-https://bugs.gentoo.org/754006
-
-https://github.com/obsproject/obs-studio/pull/3335
-From: Matt Gajownik <matt@obsproject.com>
-Date: Tue, 25 Aug 2020 19:28:26 +1000
-Subject: [PATCH] libobs/util: Fix loading Python binary modules on *nix
---- a/libobs/util/platform-nix.c
-+++ b/libobs/util/platform-nix.c
-@@ -71,7 +71,8 @@ void *os_dlopen(const char *path)
- #ifdef __APPLE__
- void *res = dlopen(dylib_name.array, RTLD_LAZY | RTLD_FIRST);
- #else
-- void *res = dlopen(dylib_name.array, RTLD_LAZY);
-+ void *res = dlopen(dylib_name.array,
-+ RTLD_LAZY | RTLD_DEEPBIND | RTLD_GLOBAL);
- #endif
- if (!res)
- blog(LOG_ERROR, "os_dlopen(%s->%s): %s\n", path,
diff --git a/media-video/obs-studio/files/obs-studio-27.1.3-ffmpeg-5.0.patch b/media-video/obs-studio/files/obs-studio-27.1.3-ffmpeg-5.0.patch
deleted file mode 100644
index a529dca715a9..000000000000
--- a/media-video/obs-studio/files/obs-studio-27.1.3-ffmpeg-5.0.patch
+++ /dev/null
@@ -1,314 +0,0 @@
-# https://git.exherbo.org/media.git/commit/?id=10c891cb37f4f7e42e95a00b27a5d4636266353e
-# https://git.exherbo.org/media.git/commit/?id=e888c31724357431dbd0e73014ca87a552850d45
-
-From 08547a1696fa381d0bda18aed57b9f87a6b1b334 Mon Sep 17 00:00:00 2001
-From: Ryan Foster <RytoEX@gmail.com>
-Date: Sat, 6 Nov 2021 18:57:35 -0400
-Subject: [PATCH] obs-ffmpeg: Include avcodec header for AVCodecContext
-
-FFmpeg commit e67e02d15672 [1] drops avcodec.h from avformat.h includes.
-Therefore we need to include it explicitly.
-
-[1]: https://github.com/FFmpeg/FFmpeg/commit/e67e02d15672a87da1b0566e197a1e19dc7e1e33
- lavf/avformat.h: drop the avcodec.h include
----
- plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c | 1 +
- plugins/obs-ffmpeg/obs-ffmpeg-formats.h | 2 ++
- plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c | 1 +
- plugins/obs-ffmpeg/obs-ffmpeg-output.h | 1 +
- 4 files changed, 5 insertions(+)
-
-diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-index 1c160ced4b1f..e4c6cdb9fa2f 100644
---- a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-+++ b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-@@ -27,6 +27,7 @@
- #include "ffmpeg-mux.h"
-
- #include <util/dstr.h>
-+#include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
-
- #define ANSI_COLOR_RED "\x1b[0;91m"
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-formats.h b/plugins/obs-ffmpeg/obs-ffmpeg-formats.h
-index 62e3866d037a..b40ef37293b4 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-formats.h
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-formats.h
-@@ -1,5 +1,7 @@
- #pragma once
-
-+#include <libavcodec/avcodec.h>
-+
- static inline int64_t rescale_ts(int64_t val, AVCodecContext *context,
- AVRational new_base)
- {
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c b/plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c
-index f2d93d2def89..e66010ce5f9c 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c
-@@ -24,6 +24,7 @@
-
- #include <libavutil/opt.h>
- #include <libavutil/pixdesc.h>
-+#include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
-
- #include "obs-ffmpeg-formats.h"
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-output.h b/plugins/obs-ffmpeg/obs-ffmpeg-output.h
-index 99f4dcd13b44..72d89dfacc4c 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-output.h
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-output.h
-@@ -2,6 +2,7 @@
-
- #include <libavutil/opt.h>
- #include <libavutil/pixdesc.h>
-+#include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
- #include <libswscale/swscale.h>
-
-From abf1d609d29196921df8f09ab6e07340b7cf9660 Mon Sep 17 00:00:00 2001
-From: Ryan Foster <RytoEX@gmail.com>
-Date: Sat, 6 Nov 2021 18:58:05 -0400
-Subject: [PATCH] obs-ffmpeg: Include channel_layout.h
-
-avcodec.h stopped including channel_layout.h per FFmpeg commit
-1be3d8a0cb77 [1]. avformat.h stopped including avcodec.h per FFmpeg
-commit e67e02d15672 [2]. As a result, we need to explicitly include
-avutil/channel_layout.h when needed. Fixes compilation error against
-FFmpeg later than the two mentioned commits.
-
-[1]: https://github.com/FFmpeg/FFmpeg/commit/1be3d8a0cb77f8d34c1f39b47bf5328fe10c82d7
-[2]: https://github.com/FFmpeg/FFmpeg/commit/e67e02d15672a87da1b0566e197a1e19dc7e1e33
----
- plugins/obs-ffmpeg/obs-ffmpeg-audio-encoders.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-audio-encoders.c b/plugins/obs-ffmpeg/obs-ffmpeg-audio-encoders.c
-index 2e3899464362..cbcb9ac31bcb 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-audio-encoders.c
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-audio-encoders.c
-@@ -21,6 +21,7 @@
- #include <util/dstr.h>
- #include <obs-module.h>
-
-+#include <libavutil/channel_layout.h>
- #include <libavutil/opt.h>
- #include <libavformat/avformat.h>
-
-From ce734366bc0b95ff91930f463e7ebe528cf8eabf Mon Sep 17 00:00:00 2001
-From: Ryan Foster <RytoEX@gmail.com>
-Date: Sat, 6 Nov 2021 18:58:36 -0400
-Subject: [PATCH] obs-ffmpeg: Respect AVFormatContext and AVOutputFormat
- constness
-
-AVFormatContext::oformat was made const on April 27, 2021 [1]. If we
-respect the constness of AVOutputFormat and do not cast results from
-FFmpeg functions to non-const, we cannot modify the results after the
-fact. Our choices are either to cast them to non-const (and presumably
-have them implicitly casted back to const on later function calls), or
-only try to modify the results in versions of FFmpeg where these are not
-expected to be const.
-
-Instead of relying on casts, we can set the encoder values in the
-ffmpeg_cfg struct, which are later passed to new_stream.
-
-Also modifies deps/media-playback. Removes compiler warnings.
-Some avformat functions return const AV(In/Out)putFormat per [1], so
-ifdef as needed.
-
-[1]: https://github.com/FFmpeg/FFmpeg/commit/56450a0ee4fdda160f4039fc2ae33edfd27765c9
- lavf 59.0.100 avformat.h
- avformat: Constify the API wrt AV(In|Out)putFormat
-
- Also constify AVProbeData.
----
- deps/media-playback/media-playback/media.c | 4 ++++
- plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c | 10 ++++++++++
- plugins/obs-ffmpeg/obs-ffmpeg-output.c | 19 ++++++++++++++++++-
- 3 files changed, 32 insertions(+), 1 deletion(-)
-
-diff --git a/deps/media-playback/media-playback/media.c b/deps/media-playback/media-playback/media.c
-index 9041b62e9cdd..a09b58ed5d10 100644
---- a/deps/media-playback/media-playback/media.c
-+++ b/deps/media-playback/media-playback/media.c
-@@ -608,7 +608,11 @@ static int interrupt_callback(void *data)
-
- static bool init_avformat(mp_media_t *m)
- {
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- AVInputFormat *format = NULL;
-+#else
-+ const AVInputFormat *format = NULL;
-+#endif
-
- if (m->format_name && *m->format_name) {
- format = av_find_input_format(m->format_name);
-diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-index e4c6cdb9fa2f..ffce3ee33eec 100644
---- a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-+++ b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-@@ -565,7 +565,11 @@ static inline bool ffmpeg_mux_get_extra_data(struct ffmpeg_mux *ffm)
-
- static inline int open_output_file(struct ffmpeg_mux *ffm)
- {
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- AVOutputFormat *format = ffm->output->oformat;
-+#else
-+ const AVOutputFormat *format = ffm->output->oformat;
-+#endif
- int ret;
-
- if ((format->flags & AVFMT_NOFILE) == 0) {
-@@ -631,7 +635,11 @@ static bool ffmpeg_mux_is_network(struct ffmpeg_mux *ffm)
-
- static int ffmpeg_mux_init_context(struct ffmpeg_mux *ffm)
- {
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- AVOutputFormat *output_format;
-+#else
-+ const AVOutputFormat *output_format;
-+#endif
- int ret;
- bool is_http = false;
- is_http = (strncmp(ffm->params.file, HTTP_PROTO,
-@@ -665,8 +673,10 @@ static int ffmpeg_mux_init_context(struct ffmpeg_mux *ffm)
- return FFM_ERROR;
- }
-
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- ffm->output->oformat->video_codec = AV_CODEC_ID_NONE;
- ffm->output->oformat->audio_codec = AV_CODEC_ID_NONE;
-+#endif
-
- if (!init_streams(ffm)) {
- free_avformat(ffm);
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-output.c b/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-index 6bc1637b1796..7447e952b9c2 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-@@ -543,6 +543,7 @@ static enum AVCodecID get_codec_id(const char *name, int id)
- return codec->id;
- }
-
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- static void set_encoder_ids(struct ffmpeg_data *data)
- {
- data->output->oformat->video_codec = get_codec_id(
-@@ -551,6 +552,7 @@ static void set_encoder_ids(struct ffmpeg_data *data)
- data->output->oformat->audio_codec = get_codec_id(
- data->config.audio_encoder, data->config.audio_encoder_id);
- }
-+#endif
-
- bool ffmpeg_data_init(struct ffmpeg_data *data, struct ffmpeg_cfg *config)
- {
-@@ -570,7 +572,13 @@ bool ffmpeg_data_init(struct ffmpeg_data *data, struct ffmpeg_cfg *config)
-
- is_rtmp = (astrcmpi_n(config->url, "rtmp://", 7) == 0);
-
-- AVOutputFormat *output_format = av_guess_format(
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
-+ AVOutputFormat *output_format;
-+#else
-+ const AVOutputFormat *output_format;
-+#endif
-+
-+ output_format = av_guess_format(
- is_rtmp ? "flv" : data->config.format_name, data->config.url,
- is_rtmp ? NULL : data->config.format_mime_type);
-
-@@ -596,6 +604,7 @@ bool ffmpeg_data_init(struct ffmpeg_data *data, struct ffmpeg_cfg *config)
- goto fail;
- }
-
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(59, 0, 100)
- if (is_rtmp) {
- data->output->oformat->video_codec = AV_CODEC_ID_H264;
- data->output->oformat->audio_codec = AV_CODEC_ID_AAC;
-@@ -603,6 +612,14 @@ bool ffmpeg_data_init(struct ffmpeg_data *data, struct ffmpeg_cfg *config)
- if (data->config.format_name)
- set_encoder_ids(data);
- }
-+#else
-+ if (is_rtmp) {
-+ data->config.audio_encoder = "aac";
-+ data->config.audio_encoder_id = AV_CODEC_ID_AAC;
-+ data->config.video_encoder = "libx264";
-+ data->config.video_encoder_id = AV_CODEC_ID_H264;
-+ }
-+#endif
-
- if (!init_streams(data))
- goto fail;
-
-From d78971b4db34d5fffbd11d2acabf37a65e11cd58 Mon Sep 17 00:00:00 2001
-From: pkv <pkv@obsproject.com>
-Date: Fri, 17 Dec 2021 20:52:11 +0100
-Subject: [PATCH] obs-ffmpeg: Further FFmpeg deprecations fixes for FFmpeg 4.4+
-
-avcodec.h stopped including channel_layout.h per FFmpeg commit
-1be3d8a0cb77 [1]. Fixes compilation error on macOS against
-FFmpeg later than the mentioned commit.
-[1] https://github.com/FFmpeg/FFmpeg/commit/1be3d8a0cb77f8d34c1f39b47bf5328fe10c82d7
----
- plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c | 1 +
- plugins/obs-ffmpeg/obs-ffmpeg-output.c | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-index c07e22abe266..db26cb425ce5 100644
---- a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-+++ b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c
-@@ -29,6 +29,7 @@
- #include <util/dstr.h>
- #include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
-+#include <libavutil/channel_layout.h>
-
- #define ANSI_COLOR_RED "\x1b[0;91m"
- #define ANSI_COLOR_MAGENTA "\x1b[0;95m"
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-output.c b/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-index d3637ebbb59b..7d1f12a60393 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-output.c
-@@ -25,6 +25,7 @@
- #include "obs-ffmpeg-output.h"
- #include "obs-ffmpeg-formats.h"
- #include "obs-ffmpeg-compat.h"
-+#include <libavutil/channel_layout.h>
-
- struct ffmpeg_output {
- obs_output_t *output;
-
-From c398ac9739a82bc95632eef9544dd0fb5bc5f0cf Mon Sep 17 00:00:00 2001
-From: pkv <pkv@obsproject.com>
-Date: Sat, 6 Nov 2021 18:59:37 -0400
-Subject: [PATCH] obs-ffmpeg: Fix NVENC old codec naming removed in FFmpeg
-
-Per FFmpeg commit 337f777f378c [1], FFmpeg removed nvenc_h264_encoder
-and nvenc_hevc_encoder after deprecation in FFmpeg commit 888a5c794778
-[2]. The names to be used are ff_h264_nvenc_encoder and
-ff_hevc_nvenc_encoder. So we must allow alternative search of codec as
-h264_nvenc or nvenc_h264 in obs-ffmpeg.c.
-
-[1]: https://github.com/FFmpeg/FFmpeg/commit/337f777f378cfcc0d6f0d01fb7125905e8b0da55
-[2]: https://github.com/FFmpeg/FFmpeg/commit/888a5c794778a2f2aad22e9b4a3952dff92b11fa
----
- plugins/obs-ffmpeg/obs-ffmpeg.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg.c b/plugins/obs-ffmpeg/obs-ffmpeg.c
-index 7330b2273544..399c5bfa64b6 100644
---- a/plugins/obs-ffmpeg/obs-ffmpeg.c
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg.c
-@@ -180,7 +180,9 @@ static bool nvenc_supported(void)
- bool success = false;
-
- if (!nvenc) {
-- goto cleanup;
-+ nvenc = avcodec_find_encoder_by_name("h264_nvenc");
-+ if (!nvenc)
-+ goto cleanup;
- }
-
- #if defined(_WIN32)
diff --git a/media-video/obs-studio/obs-studio-27.1.3-r2.ebuild b/media-video/obs-studio/obs-studio-27.1.3-r2.ebuild
deleted file mode 100644
index a018ce0e7966..000000000000
--- a/media-video/obs-studio/obs-studio-27.1.3-r2.ebuild
+++ /dev/null
@@ -1,214 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
-LUA_COMPAT=( luajit )
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit cmake lua-single python-single-r1 xdg
-
-OBS_BROWSER_COMMIT="aee43000bd994022cd73e32dc50938ab777d4a06"
-CEF_DIR="cef_binary_4280_linux64"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git"
- EGIT_SUBMODULES=( plugins/obs-browser )
-else
- SRC_URI="https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- SRC_URI+=" browser? ( https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz )"
- KEYWORDS="~amd64 ~ppc64 ~x86"
-fi
-SRC_URI+=" browser? ( https://cdn-fastly.obsproject.com/downloads/${CEF_DIR}.tar.bz2 )"
-
-DESCRIPTION="Software for Recording and Streaming Live Video Content"
-HOMEPAGE="https://obsproject.com"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="
- +alsa browser decklink fdk jack lua nvenc pipewire
- pulseaudio python speex +ssl truetype v4l vlc wayland
-"
-REQUIRED_USE="
- browser? ( || ( alsa pulseaudio ) )
- lua? ( ${LUA_REQUIRED_USE} )
- python? ( ${PYTHON_REQUIRED_USE} )
-"
-
-BDEPEND="
- lua? ( dev-lang/swig )
- python? ( dev-lang/swig )
-"
-DEPEND="
- dev-libs/glib:2
- dev-libs/jansson:=
- dev-qt/qtcore:5
- dev-qt/qtdeclarative:5
- dev-qt/qtgui:5[wayland?]
- dev-qt/qtmultimedia:5
- dev-qt/qtnetwork:5
- dev-qt/qtquickcontrols:5
- dev-qt/qtsql:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtx11extras:5
- dev-qt/qtxml:5
- media-libs/libglvnd
- media-libs/x264:=
- media-video/ffmpeg:=[nvenc?,x264]
- net-misc/curl
- sys-apps/dbus
- sys-libs/zlib:=
- virtual/udev
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb:=
- alsa? ( media-libs/alsa-lib )
- browser? (
- app-accessibility/at-spi2-atk
- app-accessibility/at-spi2-core:2
- dev-libs/atk
- dev-libs/expat
- dev-libs/glib
- dev-libs/nspr
- dev-libs/nss
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/mesa[gbm(+)]
- net-print/cups
- x11-libs/libdrm
- x11-libs/libXScrnSaver
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )
- fdk? ( media-libs/fdk-aac:= )
- jack? ( virtual/jack )
- lua? ( ${LUA_DEPS} )
- pipewire? ( media-video/pipewire:= )
- pulseaudio? ( media-sound/pulseaudio )
- python? ( ${PYTHON_DEPS} )
- speex? ( media-libs/speexdsp )
- ssl? ( net-libs/mbedtls:= )
- truetype? (
- media-libs/fontconfig
- media-libs/freetype
- )
- v4l? ( media-libs/libv4l )
- vlc? ( media-video/vlc:= )
- wayland? ( dev-libs/wayland )
-"
-RDEPEND="${DEPEND}"
-
-QA_PREBUILT="
- usr/lib*/obs-plugins/chrome-sandbox
- usr/lib*/obs-plugins/libEGL.so
- usr/lib*/obs-plugins/libGLESv2.so
- usr/lib*/obs-plugins/libcef.so
- usr/lib*/obs-plugins/swiftshader/libEGL.so
- usr/lib*/obs-plugins/swiftshader/libGLESv2.so
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-26.1.2-python-3.8.patch"
- "${FILESDIR}/${PN}-27.1.3-ffmpeg-5.0.patch"
-)
-
-pkg_setup() {
- use lua && lua-single_pkg_setup
- use python && python-single-r1_pkg_setup
-}
-
-src_unpack() {
- default
-
- if [[ ${PV} == 9999 ]]; then
- git-r3_src_unpack
- elif use browser; then
- rm -d ${P}/plugins/obs-browser || die
- mv obs-browser-${OBS_BROWSER_COMMIT} ${P}/plugins/obs-browser || die
- fi
-}
-
-src_configure() {
- local libdir=$(get_libdir)
- local mycmakeargs=(
- $(usev browser -DCEF_ROOT_DIR=../${CEF_DIR})
- -DBUILD_BROWSER=$(usex browser)
- -DBUILD_VST=no
- -DENABLE_WAYLAND=$(usex wayland)
- -DDISABLE_ALSA=$(usex !alsa)
- -DDISABLE_DECKLINK=$(usex !decklink)
- -DDISABLE_FREETYPE=$(usex !truetype)
- -DDISABLE_JACK=$(usex !jack)
- -DDISABLE_LIBFDK=$(usex !fdk)
- -DENABLE_PIPEWIRE=$(usex pipewire)
- -DDISABLE_PULSEAUDIO=$(usex !pulseaudio)
- $(cmake_use_find_package pulseaudio PulseAudio)
- -DDISABLE_SPEEXDSP=$(usex !speex)
- -DDISABLE_V4L2=$(usex !v4l)
- -DDISABLE_VLC=$(usex !vlc)
- -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
- -DUNIX_STRUCTURE=1
- -DWITH_RTMPS=$(usex ssl)
-
- # deprecated and currently cause issues
- # https://github.com/obsproject/obs-studio/pull/4560#issuecomment-826345608
- -DLIBOBS_PREFER_IMAGEMAGICK=no
- )
-
- if [[ ${PV} != 9999 ]]; then
- mycmakeargs+=(
- -DOBS_VERSION_OVERRIDE=${PV}
- )
- fi
-
- if use lua || use python; then
- mycmakeargs+=(
- -DDISABLE_LUA=$(usex !lua)
- -DDISABLE_PYTHON=$(usex !python)
- -DENABLE_SCRIPTING=yes
- )
- else
- mycmakeargs+=( -DENABLE_SCRIPTING=no )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # external plugins may need some things not installed by default, install them here
- insinto /usr/include/obs/UI/obs-frontend-api
- doins UI/obs-frontend-api/obs-frontend-api.h
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- if ! use alsa && ! use pulseaudio; then
- elog
- elog "For the audio capture features to be available,"
- elog "either the 'alsa' or the 'pulseaudio' USE-flag needs to"
- elog "be enabled."
- elog
- fi
-
- if use python; then
- ewarn "This ebuild applies a patch that is not yet accepted upstream,"
- ewarn "and while it fixes Python support at least to some extent, it"
- ewarn "may cause other issues."
- ewarn ""
- ewarn "Please report any such issues to the Gentoo maintainer."
- fi
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-04-01 19:43 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-11 21:23 [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/files/, media-video/obs-studio/ Patrice Clement
-- strict thread matches above, loose matches on Subject: below --
2018-07-13 9:36 Tony Vroon
2018-07-13 9:36 Tony Vroon
2018-12-16 16:16 Andreas Sturmlechner
2021-01-31 15:16 Andreas Sturmlechner
2021-07-01 16:57 Ionen Wolkens
2022-04-01 19:43 Ionen Wolkens
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox