diff options
author | Sefa Eyeoglu | 2021-01-05 16:45:45 +0100 |
---|---|---|
committer | Sefa Eyeoglu | 2021-01-05 16:45:45 +0100 |
commit | 95964cf1c856a449b45c7572f9ed3f577429eb8c (patch) | |
tree | a422c7500be5b000cd1a881ada81bae58c22d2fc | |
parent | 369080f4c1ce92b03faa5b6e3ab56bd225757f3c (diff) | |
download | aur-95964cf1c856a449b45c7572f9ed3f577429eb8c.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 31 | ||||
-rw-r--r-- | PKGBUILD | 59 | ||||
-rw-r--r-- | fix_python_binary_loading.patch | 24 | ||||
-rw-r--r-- | ftl_use_system.diff | 59 |
4 files changed, 134 insertions, 39 deletions
@@ -1,33 +1,44 @@ -# Generated by mksrcinfo v8 -# Sun Mar 5 17:01:18 UTC 2017 pkgbase = obs-studio-ftl - pkgdesc = Free, open source software for live streaming and recording (Beam's ftl fork) - pkgver = 18.0.0+ftl_0.9.1 + pkgdesc = Free, open source software for live streaming and recording (with FTL System patch) + pkgver = 26.1.0 pkgrel = 1 - url = https://github.com/WatchBeam/obs-studio-ftl - arch = i686 + url = https://obsproject.com arch = x86_64 license = GPL2 makedepends = cmake makedepends = libfdk-aac makedepends = libxcomposite makedepends = x264 + makedepends = vlc + makedepends = swig + makedepends = python + makedepends = luajit depends = ffmpeg depends = jansson depends = libxinerama depends = libxkbcommon-x11 + depends = mbedtls + depends = qt5-svg depends = qt5-x11extras depends = curl depends = jack depends = gtk-update-icon-cache + depends = ftl-sdk optdepends = libfdk-aac: FDK AAC codec support optdepends = libxcomposite: XComposite capture support + optdepends = libva-intel-driver: hardware encoding + optdepends = libva-mesa-driver: hardware encoding + optdepends = luajit: scripting support + optdepends = python: scripting support + optdepends = vlc: VLC Media Source support provides = obs-studio conflicts = obs-studio - source = obs-studio-ftl-18.0.0+ftl_0.9.1.tar.gz::https://github.com/WatchBeam/obs-studio-ftl/archive/ftl.0.9.0.tar.gz - source = ftl-sdk-0.9.1.tar.gz::https://github.com/WatchBeam/ftl-sdk/archive/v0.9.1.tar.gz - md5sums = 0fcb51abbc87b53a0465b5cefde7375e - md5sums = 5b79cc3a1f13ce753a2aba8dd394b42c + source = obs-studio-ftl-26.1.0.tar.gz::https://github.com/jp9000/obs-studio/archive/26.1.0.tar.gz + source = fix_python_binary_loading.patch + source = ftl_use_system.diff + md5sums = f8bb9216ece8587f2067ead1ef12a7c9 + md5sums = 051b90f05e26bff99236b8fb1ad377d1 + md5sums = 832c3fac1da5a54493254287fc4a0392 pkgname = obs-studio-ftl @@ -1,52 +1,53 @@ -# Maintainer: Markus Kitsinger (SwooshyCueb) <root@swooshalicio.us> +# Maintainer: Sefa Eyeoglu <contact@scrumplex.net> # Contributor: Jonathan Steel <jsteel at archlinux.org> # Contributor: Benjamin Klettbach <b.klettbach@gmail.com> pkgname=obs-studio-ftl -_obs_pkgver=18.0.0 -_obs_ftl_pkgver=ftl.0.9.0 -_ftl_pkgver=0.9.1 -pkgver=${_obs_pkgver}+ftl_${_ftl_pkgver} +pkgver=26.1.0 pkgrel=1 -pkgdesc="Free, open source software for live streaming and recording (Beam's ftl fork)" -arch=('i686' 'x86_64') -url="https://github.com/WatchBeam/obs-studio-ftl" +pkgdesc="Free, open source software for live streaming and recording (with FTL System patch)" +arch=('x86_64') +url="https://obsproject.com" license=('GPL2') -depends=('ffmpeg' 'jansson' 'libxinerama' 'libxkbcommon-x11' - 'qt5-x11extras' 'curl' 'jack' 'gtk-update-icon-cache') -makedepends=('cmake' 'libfdk-aac' 'libxcomposite' 'x264') +depends=('ffmpeg' 'jansson' 'libxinerama' 'libxkbcommon-x11' 'mbedtls' + 'qt5-svg' 'qt5-x11extras' 'curl' 'jack' 'gtk-update-icon-cache' 'ftl-sdk') +makedepends=('cmake' 'libfdk-aac' 'libxcomposite' 'x264' 'vlc' 'swig' 'python' 'luajit') optdepends=('libfdk-aac: FDK AAC codec support' - 'libxcomposite: XComposite capture support') -source=(${pkgname}-${pkgver}.tar.gz::https://github.com/WatchBeam/${pkgname}/archive/${_obs_ftl_pkgver}.tar.gz - ftl-sdk-${_ftl_pkgver}.tar.gz::https://github.com/WatchBeam/ftl-sdk/archive/v${_ftl_pkgver}.tar.gz) -md5sums=('0fcb51abbc87b53a0465b5cefde7375e' - '5b79cc3a1f13ce753a2aba8dd394b42c') -conflicts=('obs-studio') -provides=('obs-studio') + 'libxcomposite: XComposite capture support' + 'libva-intel-driver: hardware encoding' + 'libva-mesa-driver: hardware encoding' + 'luajit: scripting support' + 'python: scripting support' + 'vlc: VLC Media Source support') +provides=("obs-studio") +conflicts=("obs-studio") +source=($pkgname-$pkgver.tar.gz::https://github.com/jp9000/obs-studio/archive/$pkgver.tar.gz + fix_python_binary_loading.patch + ftl_use_system.diff) +md5sums=('f8bb9216ece8587f2067ead1ef12a7c9' + '051b90f05e26bff99236b8fb1ad377d1' + '832c3fac1da5a54493254287fc4a0392') prepare() { - cd "${srcdir}/ftl-sdk-${_ftl_pkgver}/libftl" - sed -i '0,/#include/ s//#include <ctype.h>\n&/' ftl_helpers.c - - cd "${srcdir}/${pkgname}-${_obs_ftl_pkgver}" - - rm -rf "${srcdir}/${pkgname}-${_obs_ftl_pkgver}/plugins/libftl/ftl-sdk" - ln -s "${srcdir}/ftl-sdk-${_ftl_pkgver}" "${srcdir}/${pkgname}-${_obs_ftl_pkgver}/plugins/libftl/ftl-sdk" + cd obs-studio-$pkgver + patch -Np1 < "$srcdir"/fix_python_binary_loading.patch + patch -Np1 < "$srcdir"/ftl_use_system.diff } build() { - cd "${srcdir}/${pkgname}-${_obs_ftl_pkgver}" + cd obs-studio-$pkgver mkdir -p build; cd build cmake -DCMAKE_INSTALL_PREFIX="/usr" \ - -DOBS_VERSION_OVERRIDE="${pkgver}-${pkgrel}" .. + -DBUILD_CAPTIONS=ON \ + -DOBS_VERSION_OVERRIDE="$pkgver-$pkgrel" .. make } package() { - cd "${srcdir}/${pkgname}-${_obs_ftl_pkgver}/build" + cd obs-studio-$pkgver/build - make install DESTDIR="${pkgdir}" + make install DESTDIR="$pkgdir" } diff --git a/fix_python_binary_loading.patch b/fix_python_binary_loading.patch new file mode 100644 index 000000000000..6cba55f2f1af --- /dev/null +++ b/fix_python_binary_loading.patch @@ -0,0 +1,24 @@ +From c482159ce93deafc7f1fc5755ba15135709ae726 Mon Sep 17 00:00:00 2001 +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 26800d52f7..997b62db1a 100644 +--- 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/ftl_use_system.diff b/ftl_use_system.diff new file mode 100644 index 000000000000..fb10ddeb16d3 --- /dev/null +++ b/ftl_use_system.diff @@ -0,0 +1,59 @@ +diff --git a/plugins/obs-outputs/CMakeLists.txt b/plugins/obs-outputs/CMakeLists.txt +index 404e34f01..fad7a7d2a 100644 +--- a/plugins/obs-outputs/CMakeLists.txt ++++ b/plugins/obs-outputs/CMakeLists.txt +@@ -3,6 +3,8 @@ project(obs-outputs) + set(WITH_RTMPS AUTO CACHE STRING "Enable RTMPS support with mbedTLS") + set_property(CACHE WITH_RTMPS PROPERTY STRINGS AUTO ON OFF) + ++find_package(PkgConfig) ++ + option(STATIC_MBEDTLS "Statically link mbedTLS into binary" OFF) + + if (WITH_RTMPS STREQUAL "AUTO") +@@ -23,7 +25,22 @@ else() + add_definitions(-DNO_CRYPTO) + endif() + +-if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ftl-sdk/CMakeLists.txt") ++set(COMPILE_FTL FALSE) ++ ++if (PKG_CONFIG_FOUND) ++ pkg_check_modules(FTL libftl) ++endif() ++ ++if (FTL_FOUND) ++ find_package(Libcurl REQUIRED) ++ message(STATUS "Found ftl-sdk (system): ftl outputs enabled") ++ ++ set(ftl_SOURCES ftl-stream.c) ++ ++ include_directories(${LIBCURL_INCLUDE_DIRS} ${FTL_INCLUDE_DIRS}) ++ set(COMPILE_FTL TRUE) ++endif() ++if (NOT FTL_FOUND AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ftl-sdk/CMakeLists.txt") + find_package(Libcurl REQUIRED) + message(STATUS "Found ftl-sdk: ftl outputs enabled") + +@@ -74,8 +91,6 @@ if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ftl-sdk/CMakeLists.txt") + include_directories(ftl-sdk/libftl) + + set(COMPILE_FTL TRUE) +-else() +- set(COMPILE_FTL FALSE) + endif() + + configure_file( +@@ -169,6 +184,12 @@ add_library(obs-outputs MODULE + ${obs-outputs_HEADERS} + ${obs-outputs_librtmp_SOURCES} + ${obs-outputs_librtmp_HEADERS}) ++ ++if(FTL_FOUND) ++ target_link_libraries(obs-outputs ${FTL_LIBRARIES}) ++ target_include_directories(obs-outputs PUBLIC ${FTL_INCLUDE_DIRS}) ++endif() ++ + target_link_libraries(obs-outputs + libobs + ${MBEDTLS_LIBRARIES} |