summaryrefslogtreecommitdiff
path: root/media-video/obs-studio
diff options
context:
space:
mode:
Diffstat (limited to 'media-video/obs-studio')
-rw-r--r--media-video/obs-studio/Manifest18
-rw-r--r--media-video/obs-studio/metadata.xml3
-rw-r--r--media-video/obs-studio/obs-studio-30.1.2.ebuild270
-rw-r--r--media-video/obs-studio/obs-studio-30.2.0-r1.ebuild271
-rw-r--r--media-video/obs-studio/obs-studio-30.2.3.ebuild (renamed from media-video/obs-studio/obs-studio-30.2.1.ebuild)9
-rw-r--r--media-video/obs-studio/obs-studio-9999.ebuild40
6 files changed, 35 insertions, 576 deletions
diff --git a/media-video/obs-studio/Manifest b/media-video/obs-studio/Manifest
index a147e5c9830e..d510111b011a 100644
--- a/media-video/obs-studio/Manifest
+++ b/media-video/obs-studio/Manifest
@@ -1,15 +1,7 @@
DIST cef_binary_5060_linux_x86_64_v3.tar.xz 91352460 BLAKE2B 443f4b1bc638d3fe462fd8b8dd167e96f65aebb2b8de3616beac298449e2786c746f9a1fa4a0dbe2e3ef2d593139938e97538890d3ca3b74018b3afb9c7fc661 SHA512 1fbdf1d4ed117f3b8af20476c57502145d652b451ba8e0a544081403d292cc7a78642e9071b8f0283a19ef7ad507ef6e0d9df32b00afc51605ab74f650a7d755
-DIST obs-browser-2a2879b5a69f4a99cd7459d8595af46cdb23115c.tar.gz 112519 BLAKE2B 94b0e46d83865ff5b85ffa07c082a561ad14205512502976e555555449441a0f701d14445b97b2084d2e10bc9289dd51e28fcf7057cb4584e6ef025bfde93062 SHA512 5ad219dacf50a4187ff79ee8d5d3e2bcc978b6dd91396669e76c56af2af26424c74151b15d9185a87c06aeb694a0a2f5d80e66a6c18c60ce843009c6f97e9b3a
-DIST obs-browser-996b5a7bc43d912f1f4992e0032d4f263ac8b060.tar.gz 112416 BLAKE2B c82b5b55184130caaca0aad066ce1253c28206522e8d130cb3b940ee283c8a2dffc409a5d4774cad17535f958f52f4fe632a6b4462a18c10a4b5bbe02b60b4e9 SHA512 f6f7dbeb1d28b6c47663f36cb119cbc90a18c46fc6e81ca6db87e901ae4cee1fafd4a4a8c3f8cae94619d2f8f92baf1c52ca5c7df182f3df7521397638b0660d
-DIST obs-browser-c81851a1d7696c2d7ba319122eec387c1568ad44.tar.gz 112521 BLAKE2B 184d398941e8055c89f9a80664ce0b3a900fc0df75c5f45c30e3c80e7645c23052ab4ff6816169136c7d9ae4da7754ab0a64bc075a7ee9036effa64860c88f21 SHA512 78e09171d173ff756ce60f6ac1da201cc87ac317b3f5839632813a177b7eb126a376e8d194eb2b6d64a7cf0d1292640d6c216cfd4e82f71f54b44e8a85e86c49
-DIST obs-studio-30.1.2.tar.gz 16023853 BLAKE2B 8886b7c07240e5f83a37f046c0a68aad6432cfc7056959caa25c33dd9a830de44f27c821809116000f82939e1684222c1f8343bc83b362f0f3f3338923bbf196 SHA512 8d6102f3431c1c6c530f22b09612cb955c1877e5aba07aa0ba1d7b014471ebf9f0c1f8e898eb9373c64417455e75d8b9cf2ae4d9010b6a09330bac9f4e5aa01e
-DIST obs-studio-30.2.0.tar.gz 16122672 BLAKE2B 7c91c1a3691035fb3503ac25a22bad416de506488cb9bf2f4567b6048f40f4bd93ca17a92e92c535c9ead6e70b7610200b335d203978b47feee7e642310d86d2 SHA512 546374e0efbe9f23ecc2580d9d118e930afd576471b8931baa00cd4fbafe6bcba5f3a4b15769338860472aad616ccd2bd952bdef416acd85e637bbefd8c9d581
-DIST obs-studio-30.2.1.tar.gz 16150144 BLAKE2B 4e50f90af43ba785619bb90a793bbfe63e5d914d046c4da109883a3f21f98f9a55efd6600374046623e87f47733167236a2390b0ba90d4e9c7c310e24a4d5792 SHA512 d8bbe71305d3aac3d64db1d3c9bee0a849bffcad4ba1019c9028d69511a4c2ed341b878a3fd5818abda707fcecb2bc90c3f35a453d84317c782d24c299a15a13
+DIST obs-browser-c710222ec9d7ef9aa5d7099e9019d636e2c89f00.tar.gz 112527 BLAKE2B abfdd7cff3ec4479cc78d1f85a404ac48c2ebee1ba679a48e4e7abeb685ee08faa00059bda1cee2d5abf16b69ad0aa843898f612b3ee9d46f0950bd546aa6e44 SHA512 1ec2f48ce986c0d44cddf4332c8b58b8eb1fcb6a662504dd7ec580f9eb45b2a570542424d4c31ed6f96060746f21082661d43bf50b94469b4ef0c1f0b9190f7c
+DIST obs-studio-30.2.3.tar.gz 16150339 BLAKE2B b3ed65060881a731bd2e48d8b490cde4a0cf2886bfbdfb2f09536b4aae15c8230c6f6fc20eed3943b88c194b46509dca702d7e955b5b148b5f3577db410f0889 SHA512 1fea762b8fb4d5401516d9e547fe20db389633fb1abbdb52e4b9559ab6aaf3b9f4c25e055896b4063c6a693bfeb78e6463486b4c66e3994a6d1ceb0b7f65865f
DIST obs-websocket-0548c7798a323fe5296c150e13b898a5ee62fc1e.tar.gz 250611 BLAKE2B fefeab4a637528138152d6e1bd374d6e3f08e4a4e20698665adf4dd925e7831df5bdb1068e402def71b6e12e239db823dac2944e6549c00e914abca175d16fc0 SHA512 f24f520c4a08ad2b80d97c5dfba14421fcd48661d3b0fb694af5d11e063c711e7bf49a4baa95d9de8aff07b6fbbd4b4681ce10a4074506d98cf25c793cc2844d
-DIST obs-websocket-d2d4bfb3e78cf2b02c8e2f5dda1d805eda8d8f32.tar.gz 246888 BLAKE2B 6e06c85ee47cb088a50b9d5eae9a8d68441989c1f76fdcd7806d59597062af5eb36e1722600b1a8d544e5f11533985b9bac243f7ca1002eed616e2f5c11a9a3f SHA512 31d5e1817aab341e55cbc5c759f28509f442695afb90d08a235c07359a65d2c2d3dfae2bf9c8a5086db310bb127dc59945ebe23fb219fda7408ee82d05b43938
-DIST obs-websocket-f8bc7c4f593c7957ecdb45a24faaff3e95f24e8b.tar.gz 250582 BLAKE2B 13a93a00b8f7d3cc775641243ffb14b98490b2190386663a05621376dc9f70838005768039c236083e8767e1951378341a242df2fefdd74b7172090a4526a0d0 SHA512 38e02f346042d6c71bab6f0dc3c706953b996d0c8a92a3c0922b04955ea0152857005f924c5a0fccfaa64a6fef5b0dd597bce658c152be38081d1dc02ed2be19
-EBUILD obs-studio-30.1.2.ebuild 6640 BLAKE2B 241a80f92daea4928520509f91381bccc022afe21aa41ad71f011bc44f90460363912801f02a6073b7453d8d75d224e619c854756fdf22567a6a2388ccb7e8a6 SHA512 d529ac6361cbb04317d204fae7d8aad901bb0a90c656acee0d5bf61c3e880b15090edbf5679c51b53482cdfa9e77488a8e62703627df4eef102f8bdb7e5dcf73
-EBUILD obs-studio-30.2.0-r1.ebuild 6670 BLAKE2B 6b8704a9ef7239cc81c2cadf30a583d5e64b0bdf62c71a0012ce23df34473111c36932eb644bebda1a72166cea0efdbe74abe2a337a202dc6aa2cd5cf531e294 SHA512 d9196c6840df14e0193d8b2fa444b89d0533f8f53395905c2a1e7856a21e2047043216bb427318e34155009f4d5da6862c85b88e6ce5ad02f92885173179c41e
-EBUILD obs-studio-30.2.1.ebuild 6670 BLAKE2B 559a7e73d73288d74ee5fa2924e72dfcbcd9f031419c679918f6b942a839a57d905749bcea05f379054f79fcf40604f08562b3388a982454a59f362fa5b2786c SHA512 9f75229467b2edfe4b141ad6d184c8ec3d279ee3e1623716fe64374ae81be689e1158aad4a3de3cb872029cc5240ed315fabbd9adace18b9d28bfce59e03e56d
-EBUILD obs-studio-9999.ebuild 6670 BLAKE2B 559a7e73d73288d74ee5fa2924e72dfcbcd9f031419c679918f6b942a839a57d905749bcea05f379054f79fcf40604f08562b3388a982454a59f362fa5b2786c SHA512 9f75229467b2edfe4b141ad6d184c8ec3d279ee3e1623716fe64374ae81be689e1158aad4a3de3cb872029cc5240ed315fabbd9adace18b9d28bfce59e03e56d
-MISC metadata.xml 1470 BLAKE2B ce34216dcee69e90450a9cce810db3a494db1cafe6a8cd1029b0a749a7d69e0503fc5c5f6f298bebc2422e57f623ef63e17ac3814fd495e14c2b6e02bba1a9bd SHA512 0479dd3a4de659f8ce00b663129ca20ca31b837cd29bfca43bf7cca02d6762dabf0778c96c1b47d9814e3f6045c4793cc8f47f74d2a8940c8b2a1969ed69e895
+EBUILD obs-studio-30.2.3.ebuild 6742 BLAKE2B cabb4f8986f10f14d64832a730a09feebf0c53853c6dd2f332c4c0483f2104fc944edd005062a461bc7910198cb5b979dd206b08804ecb53cf82fa4bb48b2d0c SHA512 d9ab3126077d62a4bb626f2544a7a00063ae794743efffacef0c48b1d726e9e58db84927054a4ca926093dc2c5f76dc2fabef51f9cfcafbd8f9b327ce94622f9
+EBUILD obs-studio-9999.ebuild 6672 BLAKE2B 32d6aebe654c705471756d8c344a933771f7fd4773be99bfe50150265f9180e66e4f92cd628008c6291a18524d0242f43f9a4f96989802162fe330d22693a8f5 SHA512 3b2ef56554be1adbf839f804a74b5509c1f64f95b7fb87d13e26f47ab237f41a8584b426a1be93310938c6ef7545485750c83427dcccbb2f56489c6d8a688be3
+MISC metadata.xml 1533 BLAKE2B 7bc778d152d6854330f821d0712da81b54397a35118baf4ba61b3ce4eb7aff5a292d4e4c74c01992761c3cae15b367dcf85450080e920d35ffeb2ee06c74483b SHA512 3dbc5096e3203ec8350e75db78519a061270d52d441e159ab297147a729bda21016a26e15b5c0447dc4a835da59ee822da99265e4f8c3bea3a1e173b134c739c
diff --git a/media-video/obs-studio/metadata.xml b/media-video/obs-studio/metadata.xml
index 2e6e1d188e06..be051ff610c3 100644
--- a/media-video/obs-studio/metadata.xml
+++ b/media-video/obs-studio/metadata.xml
@@ -19,8 +19,9 @@
<flag name="pipewire">Build with PipeWire support.</flag>
<flag name="python">Build with scripting support for Python 3.</flag>
<flag name="qsv">Build with Intel Quick Sync Video support.</flag>
+ <flag name="sndio">Build with sndio support.</flag>
<flag name="speex">Build with Speex noise suppression filter support.</flag>
- <flag name="ssl">Build with TLS/SSL support for RTMPS connections.</flag>
+ <flag name="test-input">Build and install input sources used for testing.</flag>
<flag name="vlc">Build with VLC media source support.</flag>
<flag name="websocket">Build with WebSocket API support.</flag>
</use>
diff --git a/media-video/obs-studio/obs-studio-30.1.2.ebuild b/media-video/obs-studio/obs-studio-30.1.2.ebuild
deleted file mode 100644
index 6ddcf823b797..000000000000
--- a/media-video/obs-studio/obs-studio-30.1.2.ebuild
+++ /dev/null
@@ -1,270 +0,0 @@
-# Copyright 1999-2024 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_{9..12} )
-
-inherit cmake flag-o-matic lua-single optfeature python-single-r1 xdg
-
-CEF_DIR="cef_binary_5060_linux_x86_64"
-CEF_REVISION="_v3"
-OBS_BROWSER_COMMIT="996b5a7bc43d912f1f4992e0032d4f263ac8b060"
-OBS_WEBSOCKET_COMMIT="d2d4bfb3e78cf2b02c8e2f5dda1d805eda8d8f32"
-
-DESCRIPTION="Software for Recording and Streaming Live Video Content"
-HOMEPAGE="https://obsproject.com"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git"
- EGIT_SUBMODULES=(
- plugins/obs-browser
- plugins/obs-websocket
- )
-else
- SRC_URI="
- https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz
- https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz
- "
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-fi
-
-SRC_URI+=" browser? ( https://cdn-fastly.obsproject.com/downloads/${CEF_DIR}${CEF_REVISION}.tar.xz )"
-
-LICENSE="Boost-1.0 GPL-2+ MIT Unlicense"
-SLOT="0"
-IUSE="
- +alsa browser decklink fdk jack lua mpegts nvenc pipewire pulseaudio
- python qsv speex +ssl test truetype v4l vlc wayland websocket
-"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="
- browser? ( || ( alsa pulseaudio ) )
- lua? ( ${LUA_REQUIRED_USE} )
- python? ( ${PYTHON_REQUIRED_USE} )
-"
-
-BDEPEND="
- lua? ( dev-lang/swig )
- python? ( dev-lang/swig )
-"
-# media-video/ffmpeg[opus] required due to bug 909566
-DEPEND="
- dev-libs/glib:2
- dev-libs/jansson:=
- dev-qt/qtbase:6[network,widgets,xml(+)]
- dev-qt/qtsvg:6
- media-libs/libglvnd[X]
- media-libs/libva
- media-libs/rnnoise
- media-libs/x264:=
- media-video/ffmpeg:=[nvenc?,opus,x264]
- net-misc/curl
- sys-apps/dbus
- sys-apps/pciutils
- sys-apps/util-linux
- sys-libs/zlib:=
- x11-libs/libX11
- x11-libs/libxcb:=
- x11-libs/libXcomposite
- x11-libs/libXfixes
- x11-libs/libxkbcommon
- alsa? ( media-libs/alsa-lib )
- browser? (
- || (
- >=app-accessibility/at-spi2-core-2.46.0:2
- ( app-accessibility/at-spi2-atk dev-libs/atk )
- )
- dev-cpp/nlohmann_json
- dev-libs/expat
- dev-libs/glib
- dev-libs/nspr
- dev-libs/nss
- dev-libs/wayland
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/mesa[gbm(+)]
- net-print/cups
- x11-libs/cairo
- x11-libs/libdrm
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libxkbcommon
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXScrnSaver
- x11-libs/libxshmfence
- x11-libs/libXtst
- x11-libs/pango
- )
- fdk? ( media-libs/fdk-aac:= )
- jack? ( virtual/jack )
- lua? ( ${LUA_DEPS} )
- mpegts? (
- net-libs/librist
- net-libs/srt
- )
- pipewire? ( media-video/pipewire:= )
- pulseaudio? ( media-libs/libpulse )
- python? ( ${PYTHON_DEPS} )
- qsv? ( media-libs/libvpl )
- speex? ( media-libs/speexdsp )
- ssl? ( net-libs/mbedtls:= )
- test? ( dev-util/cmocka )
- truetype? (
- media-libs/fontconfig
- media-libs/freetype
- )
- v4l? (
- media-libs/libv4l
- virtual/udev
- )
- vlc? ( media-video/vlc:= )
- wayland? (
- dev-libs/wayland
- x11-libs/libxkbcommon
- )
- websocket? (
- dev-cpp/asio
- dev-cpp/nlohmann_json
- dev-cpp/websocketpp
- dev-libs/qr-code-generator
- )
-"
-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/libvk_swiftshader.so
- usr/lib*/obs-plugins/libvulkan.so.1
- usr/lib*/obs-plugins/swiftshader/libEGL.so
- usr/lib*/obs-plugins/swiftshader/libGLESv2.so
-"
-
-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
- else
- rm -d ${P}/plugins/obs-browser || die
- mv obs-browser-${OBS_BROWSER_COMMIT} ${P}/plugins/obs-browser || die
-
- rm -d ${P}/plugins/obs-websocket || die
- mv obs-websocket-${OBS_WEBSOCKET_COMMIT} ${P}/plugins/obs-websocket || die
- fi
-}
-
-src_prepare() {
- default
-
- sed -i '/-Werror$/d' "${WORKDIR}"/${P}/cmake/Modules/CompilerConfig.cmake || die
-
- # -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/867250
- # https://github.com/obsproject/obs-studio/issues/8988
- use wayland && filter-lto
-
- cmake_src_prepare
-}
-
-src_configure() {
- local libdir=$(get_libdir)
- local mycmakeargs=(
- $(usev browser -DCEF_ROOT_DIR=../${CEF_DIR})
- -DCALM_DEPRECATION=ON
- -DCCACHE_SUPPORT=OFF
- -DENABLE_ALSA=$(usex alsa)
- -DENABLE_AJA=OFF
- -DENABLE_BROWSER=$(usex browser)
- -DENABLE_DECKLINK=$(usex decklink)
- -DENABLE_FREETYPE=$(usex truetype)
- -DENABLE_JACK=$(usex jack)
- -DENABLE_LIBFDK=$(usex fdk)
- -DENABLE_NEW_MPEGTS_OUTPUT=$(usex mpegts)
- -DENABLE_PIPEWIRE=$(usex pipewire)
- -DENABLE_PULSEAUDIO=$(usex pulseaudio)
- -DENABLE_QSV11=$(usex qsv)
- -DENABLE_RNNOISE=ON
- -DENABLE_RTMPS=$(usex ssl ON OFF) # Needed for bug 880861
- -DENABLE_SPEEXDSP=$(usex speex)
- -DENABLE_UNIT_TESTS=$(usex test)
- -DENABLE_V4L2=$(usex v4l)
- -DENABLE_VLC=$(usex vlc)
- -DENABLE_VST=ON
- -DENABLE_WAYLAND=$(usex wayland)
- -DENABLE_WEBRTC=OFF # Requires libdatachannel.
- -DENABLE_WEBSOCKET=$(usex websocket)
- -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
- -DUNIX_STRUCTURE=1
- )
-
- if [[ ${PV} != 9999 ]]; then
- mycmakeargs+=(
- -DOBS_VERSION_OVERRIDE=${PV}
- )
- fi
-
- if use lua || use python; then
- mycmakeargs+=(
- -DENABLE_SCRIPTING_LUA=$(usex lua)
- -DENABLE_SCRIPTING_PYTHON=$(usex python)
- -DENABLE_SCRIPTING=ON
- )
- else
- mycmakeargs+=( -DENABLE_SCRIPTING=OFF )
- fi
-
- if use browser && use ssl; then
- mycmakeargs+=( -DENABLE_WHATSNEW=ON )
- else
- mycmakeargs+=( -DENABLE_WHATSNEW=OFF )
- 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 "at least one of the 'alsa' or 'pulseaudio' USE-flags needs to"
- elog "be enabled."
- elog
- fi
-
- if use v4l && has_version media-video/v4l2loopback; then
- elog
- elog "Depending on system configuration, the v4l2loopback kernel module"
- elog "may need to be loaded manually, and needs to be re-built after"
- elog "kernel changes."
- elog
- fi
-
- optfeature "VA-API hardware encoding" media-video/ffmpeg[vaapi]
- optfeature "virtual camera support" media-video/v4l2loopback
-}
diff --git a/media-video/obs-studio/obs-studio-30.2.0-r1.ebuild b/media-video/obs-studio/obs-studio-30.2.0-r1.ebuild
deleted file mode 100644
index c2bb6f445487..000000000000
--- a/media-video/obs-studio/obs-studio-30.2.0-r1.ebuild
+++ /dev/null
@@ -1,271 +0,0 @@
-# Copyright 1999-2024 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_{9..12} )
-
-inherit cmake flag-o-matic lua-single optfeature python-single-r1 xdg
-
-CEF_DIR="cef_binary_5060_linux_x86_64"
-CEF_REVISION="_v3"
-OBS_BROWSER_COMMIT="c81851a1d7696c2d7ba319122eec387c1568ad44"
-OBS_WEBSOCKET_COMMIT="f8bc7c4f593c7957ecdb45a24faaff3e95f24e8b"
-
-DESCRIPTION="Software for Recording and Streaming Live Video Content"
-HOMEPAGE="https://obsproject.com"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git"
- EGIT_SUBMODULES=(
- plugins/obs-browser
- plugins/obs-websocket
- )
-else
- SRC_URI="
- https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz
- https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz
- "
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-fi
-
-SRC_URI+=" browser? ( https://cdn-fastly.obsproject.com/downloads/${CEF_DIR}${CEF_REVISION}.tar.xz )"
-
-LICENSE="Boost-1.0 GPL-2+ MIT Unlicense"
-SLOT="0"
-IUSE="
- +alsa browser decklink fdk jack lua mpegts nvenc pipewire pulseaudio
- python qsv speex +ssl test truetype v4l vlc wayland websocket
-"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="
- browser? ( || ( alsa pulseaudio ) )
- lua? ( ${LUA_REQUIRED_USE} )
- python? ( ${PYTHON_REQUIRED_USE} )
-"
-
-BDEPEND="
- lua? ( dev-lang/swig )
- python? ( dev-lang/swig )
-"
-# media-video/ffmpeg[opus] required due to bug 909566
-DEPEND="
- dev-cpp/nlohmann_json
- dev-libs/glib:2
- dev-libs/jansson:=
- dev-libs/uthash
- dev-qt/qtbase:6[network,widgets,xml(+)]
- dev-qt/qtsvg:6
- media-libs/libglvnd[X]
- media-libs/libva
- media-libs/rnnoise
- media-libs/x264:=
- media-video/ffmpeg:=[nvenc?,opus,x264]
- net-misc/curl
- sys-apps/dbus
- sys-apps/pciutils
- sys-apps/util-linux
- sys-libs/zlib:=
- x11-libs/libX11
- x11-libs/libxcb:=
- x11-libs/libXcomposite
- x11-libs/libXfixes
- x11-libs/libxkbcommon
- alsa? ( media-libs/alsa-lib )
- browser? (
- || (
- >=app-accessibility/at-spi2-core-2.46.0:2
- ( app-accessibility/at-spi2-atk dev-libs/atk )
- )
- dev-libs/expat
- dev-libs/glib
- dev-libs/nspr
- dev-libs/nss
- dev-libs/wayland
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/mesa[gbm(+)]
- net-print/cups
- x11-libs/cairo
- x11-libs/libdrm
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libxkbcommon
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXScrnSaver
- x11-libs/libxshmfence
- x11-libs/libXtst
- x11-libs/pango
- )
- fdk? ( media-libs/fdk-aac:= )
- jack? ( virtual/jack )
- lua? ( ${LUA_DEPS} )
- mpegts? (
- net-libs/librist
- net-libs/srt
- )
- pipewire? ( media-video/pipewire:= )
- pulseaudio? ( media-libs/libpulse )
- python? ( ${PYTHON_DEPS} )
- qsv? ( media-libs/libvpl )
- speex? ( media-libs/speexdsp )
- ssl? ( net-libs/mbedtls:= )
- test? ( dev-util/cmocka )
- truetype? (
- media-libs/fontconfig
- media-libs/freetype
- )
- v4l? (
- media-libs/libv4l
- virtual/udev
- )
- vlc? ( media-video/vlc:= )
- wayland? (
- dev-libs/wayland
- x11-libs/libxkbcommon
- )
- websocket? (
- dev-cpp/asio
- dev-cpp/websocketpp
- dev-libs/qr-code-generator
- )
-"
-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/libvk_swiftshader.so
- usr/lib*/obs-plugins/libvulkan.so.1
- usr/lib*/obs-plugins/swiftshader/libEGL.so
- usr/lib*/obs-plugins/swiftshader/libGLESv2.so
-"
-
-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
- else
- rm -d ${P}/plugins/obs-browser || die
- mv obs-browser-${OBS_BROWSER_COMMIT} ${P}/plugins/obs-browser || die
-
- rm -d ${P}/plugins/obs-websocket || die
- mv obs-websocket-${OBS_WEBSOCKET_COMMIT} ${P}/plugins/obs-websocket || die
- fi
-}
-
-src_prepare() {
- default
-
- sed -i '/-Werror$/d' "${WORKDIR}"/${P}/cmake/Modules/CompilerConfig.cmake || die
-
- # -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/867250
- # https://github.com/obsproject/obs-studio/issues/8988
- use wayland && filter-lto
-
- cmake_src_prepare
-}
-
-src_configure() {
- local libdir=$(get_libdir)
- local mycmakeargs=(
- $(usev browser -DCEF_ROOT_DIR=../${CEF_DIR})
- -DCALM_DEPRECATION=ON
- -DCCACHE_SUPPORT=OFF
- -DENABLE_ALSA=$(usex alsa)
- -DENABLE_AJA=OFF
- -DENABLE_BROWSER=$(usex browser)
- -DENABLE_DECKLINK=$(usex decklink)
- -DENABLE_FREETYPE=$(usex truetype)
- -DENABLE_JACK=$(usex jack)
- -DENABLE_LIBFDK=$(usex fdk)
- -DENABLE_NATIVE_NVENC=$(usex nvenc)
- -DENABLE_NEW_MPEGTS_OUTPUT=$(usex mpegts)
- -DENABLE_PIPEWIRE=$(usex pipewire)
- -DENABLE_PULSEAUDIO=$(usex pulseaudio)
- -DENABLE_QSV11=$(usex qsv)
- -DENABLE_RNNOISE=ON
- -DENABLE_RTMPS=$(usex ssl ON OFF) # Needed for bug 880861
- -DENABLE_SPEEXDSP=$(usex speex)
- -DENABLE_UNIT_TESTS=$(usex test)
- -DENABLE_V4L2=$(usex v4l)
- -DENABLE_VLC=$(usex vlc)
- -DENABLE_VST=ON
- -DENABLE_WAYLAND=$(usex wayland)
- -DENABLE_WEBRTC=OFF # Requires libdatachannel.
- -DENABLE_WEBSOCKET=$(usex websocket)
- -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
- -DUNIX_STRUCTURE=1
- )
-
- if [[ ${PV} != 9999 ]]; then
- mycmakeargs+=(
- -DOBS_VERSION_OVERRIDE=${PV}
- )
- fi
-
- if use lua || use python; then
- mycmakeargs+=(
- -DENABLE_SCRIPTING_LUA=$(usex lua)
- -DENABLE_SCRIPTING_PYTHON=$(usex python)
- -DENABLE_SCRIPTING=ON
- )
- else
- mycmakeargs+=( -DENABLE_SCRIPTING=OFF )
- fi
-
- if use browser && use ssl; then
- mycmakeargs+=( -DENABLE_WHATSNEW=ON )
- else
- mycmakeargs+=( -DENABLE_WHATSNEW=OFF )
- 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 "at least one of the 'alsa' or 'pulseaudio' USE-flags needs to"
- elog "be enabled."
- elog
- fi
-
- if use v4l && has_version media-video/v4l2loopback; then
- elog
- elog "Depending on system configuration, the v4l2loopback kernel module"
- elog "may need to be loaded manually, and needs to be re-built after"
- elog "kernel changes."
- elog
- fi
-
- optfeature "VA-API hardware encoding" media-video/ffmpeg[vaapi]
- optfeature "virtual camera support" media-video/v4l2loopback
-}
diff --git a/media-video/obs-studio/obs-studio-30.2.1.ebuild b/media-video/obs-studio/obs-studio-30.2.3.ebuild
index d5800bb8e299..d0fc789c0edc 100644
--- a/media-video/obs-studio/obs-studio-30.2.1.ebuild
+++ b/media-video/obs-studio/obs-studio-30.2.3.ebuild
@@ -11,7 +11,7 @@ inherit cmake flag-o-matic lua-single optfeature python-single-r1 xdg
CEF_DIR="cef_binary_5060_linux_x86_64"
CEF_REVISION="_v3"
-OBS_BROWSER_COMMIT="2a2879b5a69f4a99cd7459d8595af46cdb23115c"
+OBS_BROWSER_COMMIT="c710222ec9d7ef9aa5d7099e9019d636e2c89f00"
OBS_WEBSOCKET_COMMIT="0548c7798a323fe5296c150e13b898a5ee62fc1e"
DESCRIPTION="Software for Recording and Streaming Live Video Content"
@@ -111,6 +111,7 @@ DEPEND="
net-libs/librist
net-libs/srt
)
+ nvenc? ( >=media-libs/nv-codec-headers-12 )
pipewire? ( media-video/pipewire:= )
pulseaudio? ( media-libs/libpulse )
python? ( ${PYTHON_DEPS} )
@@ -137,7 +138,9 @@ DEPEND="
dev-libs/qr-code-generator
)
"
-RDEPEND="${DEPEND}"
+RDEPEND="${DEPEND}
+ qsv? ( media-libs/intel-mediasdk )
+"
QA_PREBUILT="
usr/lib*/obs-plugins/chrome-sandbox
@@ -195,7 +198,7 @@ src_configure() {
-DENABLE_FREETYPE=$(usex truetype)
-DENABLE_JACK=$(usex jack)
-DENABLE_LIBFDK=$(usex fdk)
- -DENABLE_NATIVE_NVENC=$(usex nvenc)
+ -DENABLE_NATIVE_NVENC=OFF
-DENABLE_NEW_MPEGTS_OUTPUT=$(usex mpegts)
-DENABLE_PIPEWIRE=$(usex pipewire)
-DENABLE_PULSEAUDIO=$(usex pulseaudio)
diff --git a/media-video/obs-studio/obs-studio-9999.ebuild b/media-video/obs-studio/obs-studio-9999.ebuild
index d5800bb8e299..efd7033f58ab 100644
--- a/media-video/obs-studio/obs-studio-9999.ebuild
+++ b/media-video/obs-studio/obs-studio-9999.ebuild
@@ -5,13 +5,13 @@ EAPI=8
CMAKE_REMOVE_MODULES_LIST=( FindFreetype )
LUA_COMPAT=( luajit )
-PYTHON_COMPAT=( python3_{9..12} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit cmake flag-o-matic lua-single optfeature python-single-r1 xdg
CEF_DIR="cef_binary_5060_linux_x86_64"
CEF_REVISION="_v3"
-OBS_BROWSER_COMMIT="2a2879b5a69f4a99cd7459d8595af46cdb23115c"
+OBS_BROWSER_COMMIT="be9f1b646406d2250b402581b043f1558042d7f0"
OBS_WEBSOCKET_COMMIT="0548c7798a323fe5296c150e13b898a5ee62fc1e"
DESCRIPTION="Software for Recording and Streaming Live Video Content"
@@ -26,9 +26,12 @@ if [[ ${PV} == 9999 ]]; then
)
else
SRC_URI="
- https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz
- https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz
+ https://github.com/obsproject/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz
+ -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz
+ https://github.com/obsproject/obs-websocket/archive/${OBS_WEBSOCKET_COMMIT}.tar.gz
+ -> obs-websocket-${OBS_WEBSOCKET_COMMIT}.tar.gz
"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
fi
@@ -39,9 +42,8 @@ LICENSE="Boost-1.0 GPL-2+ MIT Unlicense"
SLOT="0"
IUSE="
+alsa browser decklink fdk jack lua mpegts nvenc pipewire pulseaudio
- python qsv speex +ssl test truetype v4l vlc wayland websocket
+ python qsv sndio speex test-input truetype v4l vlc wayland websocket
"
-RESTRICT="!test? ( test )"
REQUIRED_USE="
browser? ( || ( alsa pulseaudio ) )
lua? ( ${LUA_REQUIRED_USE} )
@@ -66,6 +68,7 @@ DEPEND="
media-libs/x264:=
media-video/ffmpeg:=[nvenc?,opus,x264]
net-misc/curl
+ net-libs/mbedtls:=
sys-apps/dbus
sys-apps/pciutils
sys-apps/util-linux
@@ -111,13 +114,13 @@ DEPEND="
net-libs/librist
net-libs/srt
)
+ nvenc? ( >=media-libs/nv-codec-headers-12 )
pipewire? ( media-video/pipewire:= )
pulseaudio? ( media-libs/libpulse )
python? ( ${PYTHON_DEPS} )
qsv? ( media-libs/libvpl )
+ sndio? ( media-sound/sndio )
speex? ( media-libs/speexdsp )
- ssl? ( net-libs/mbedtls:= )
- test? ( dev-util/cmocka )
truetype? (
media-libs/fontconfig
media-libs/freetype
@@ -137,7 +140,9 @@ DEPEND="
dev-libs/qr-code-generator
)
"
-RDEPEND="${DEPEND}"
+RDEPEND="${DEPEND}
+ qsv? ( media-libs/intel-mediasdk )
+"
QA_PREBUILT="
usr/lib*/obs-plugins/chrome-sandbox
@@ -186,32 +191,31 @@ src_configure() {
local libdir=$(get_libdir)
local mycmakeargs=(
$(usev browser -DCEF_ROOT_DIR=../${CEF_DIR})
- -DCALM_DEPRECATION=ON
- -DCCACHE_SUPPORT=OFF
-DENABLE_ALSA=$(usex alsa)
-DENABLE_AJA=OFF
-DENABLE_BROWSER=$(usex browser)
+ -DENABLE_CCACHE=OFF
-DENABLE_DECKLINK=$(usex decklink)
+ -DENABLE_FFMPEG_NVENC=$(usex nvenc)
-DENABLE_FREETYPE=$(usex truetype)
-DENABLE_JACK=$(usex jack)
-DENABLE_LIBFDK=$(usex fdk)
- -DENABLE_NATIVE_NVENC=$(usex nvenc)
-DENABLE_NEW_MPEGTS_OUTPUT=$(usex mpegts)
+ -DENABLE_NVENC=$(usex nvenc)
-DENABLE_PIPEWIRE=$(usex pipewire)
-DENABLE_PULSEAUDIO=$(usex pulseaudio)
-DENABLE_QSV11=$(usex qsv)
-DENABLE_RNNOISE=ON
- -DENABLE_RTMPS=$(usex ssl ON OFF) # Needed for bug 880861
+ -DENABLE_SNDIO=$(usex sndio)
-DENABLE_SPEEXDSP=$(usex speex)
- -DENABLE_UNIT_TESTS=$(usex test)
+ -DENABLE_TEST_INPUT=$(usex test-input)
-DENABLE_V4L2=$(usex v4l)
-DENABLE_VLC=$(usex vlc)
-DENABLE_VST=ON
-DENABLE_WAYLAND=$(usex wayland)
-DENABLE_WEBRTC=OFF # Requires libdatachannel.
-DENABLE_WEBSOCKET=$(usex websocket)
- -DOBS_MULTIARCH_SUFFIX=${libdir#lib}
- -DUNIX_STRUCTURE=1
+ -DOBS_CMAKE_VERSION=3
)
if [[ ${PV} != 9999 ]]; then
@@ -230,7 +234,7 @@ src_configure() {
mycmakeargs+=( -DENABLE_SCRIPTING=OFF )
fi
- if use browser && use ssl; then
+ if use browser; then
mycmakeargs+=( -DENABLE_WHATSNEW=ON )
else
mycmakeargs+=( -DENABLE_WHATSNEW=OFF )