summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSefa Eyeoglu2021-01-05 16:45:45 +0100
committerSefa Eyeoglu2021-01-05 16:45:45 +0100
commit95964cf1c856a449b45c7572f9ed3f577429eb8c (patch)
treea422c7500be5b000cd1a881ada81bae58c22d2fc
parent369080f4c1ce92b03faa5b6e3ab56bd225757f3c (diff)
downloadaur-95964cf1c856a449b45c7572f9ed3f577429eb8c.tar.gz
Initial commit
-rw-r--r--.SRCINFO31
-rw-r--r--PKGBUILD59
-rw-r--r--fix_python_binary_loading.patch24
-rw-r--r--ftl_use_system.diff59
4 files changed, 134 insertions, 39 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 95456194c0a1..223853eb3643 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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
diff --git a/PKGBUILD b/PKGBUILD
index a8a8cf86412c..d2d1eb587580 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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}