diff options
author | tytan652 | 2024-03-09 13:02:58 +0100 |
---|---|---|
committer | tytan652 | 2024-03-09 13:03:24 +0100 |
commit | a981429a430012cd95349c9aa73d6234784b89a3 (patch) | |
tree | aea3610f79f1109bdc726703d029b63589bae439 | |
parent | 1513d1f8c93b8cb5c701a61cedca2c780a9bde6f (diff) | |
download | aur-a981429a430012cd95349c9aa73d6234784b89a3.tar.gz |
build: Build with libajantv2 17.0.1
-rw-r--r-- | .SRCINFO | 7 | ||||
-rw-r--r-- | 0003-Update_to_libajantv2_17_legacy_path_only.patch | 95 | ||||
-rw-r--r-- | PKGBUILD | 9 |
3 files changed, 107 insertions, 4 deletions
@@ -1,7 +1,7 @@ pkgbase = obs-studio-browser pkgdesc = Free and open source software for video recording and live streaming. With everything except service integration pkgver = 30.0.2 - pkgrel = 6 + pkgrel = 7 url = https://github.com/obsproject/obs-studio arch = x86_64 arch = aarch64 @@ -11,7 +11,7 @@ pkgbase = obs-studio-browser makedepends = jack makedepends = git makedepends = uthash - makedepends = libajantv2 + makedepends = libajantv2>=17.0.1 makedepends = libdatachannel>=0.20 makedepends = libfdk-aac makedepends = luajit @@ -85,6 +85,7 @@ pkgbase = obs-studio-browser optdepends = systemd-libs: V4L2 support optdepends = v4l2loopback-dkms: V4L2 virtual camera output optdepends = libdatachannel>=0.20: WHIP Support + optdepends = libajantv2>=17.0.1: AJA support optdepends = decklink: Blackmagic Design DeckLink support provides = obs-studio=30.0.2 provides = obs-vst @@ -102,10 +103,12 @@ pkgbase = obs-studio-browser source = obs-websocket::git+https://github.com/obsproject/obs-websocket.git source = 0001-Add_finder_for_uthash.patch source = 0002-Use_system_uthash.patch + source = 0003-Update_to_libajantv2_17_legacy_path_only.patch sha256sums = SKIP sha256sums = SKIP sha256sums = SKIP sha256sums = f4a56021a7f1c564f95b588d7c09b60a89efa2c1954c8a418cf6320b5a818542 sha256sums = 874456110d17d2efe02f8a1f47f58c877922d8bdab6435df334b9e6460b26bf8 + sha256sums = a7149e1d9a07270132cf8085d52225ed3200a78ea943cbf52d64b1b8f293e117 pkgname = obs-studio-browser diff --git a/0003-Update_to_libajantv2_17_legacy_path_only.patch b/0003-Update_to_libajantv2_17_legacy_path_only.patch new file mode 100644 index 000000000000..9b2151554e2b --- /dev/null +++ b/0003-Update_to_libajantv2_17_legacy_path_only.patch @@ -0,0 +1,95 @@ +From 837a514a10be1a9977352edbabe8efa41392e07f Mon Sep 17 00:00:00 2001 +From: Paul Hindt <paulh@aja.com> +Date: Wed, 11 Oct 2023 21:57:44 -0700 +Subject: [PATCH] aja: Update plugin to use new libajantv2 deps + +AJA's ntv2 repo on github, which was used to build the initial +version of the OBS AJA plugin, has been replaced by a new repo. + +The original repo placed a maintenance burden on AJA, requiring +filtering open-source code from proprietary code. + +The new repo splits and re-organizes the open-source code from +AJA's internal repo, to allow its use as a submodule by other +projects, both internal and external to AJA. + +This PR updates the OBS AJA plugin to use deps from the new repo. +--- + cmake/Modules/FindLibAJANTV2.cmake | 11 ++++-- + plugins/aja/aja-widget-io.cpp | 17 +++++----- + 5 files changed, 47 insertions(+), 37 deletions(-) + +diff --git a/cmake/Modules/FindLibAJANTV2.cmake b/cmake/Modules/FindLibAJANTV2.cmake +index 3ce91deedff7a..9a016bc1cb276 100644 +--- a/cmake/Modules/FindLibAJANTV2.cmake ++++ b/cmake/Modules/FindLibAJANTV2.cmake +@@ -15,7 +15,7 @@ endif() + + find_path( + AJA_LIBRARIES_INCLUDE_DIR +- NAMES ajalibraries ++ NAMES libajantv2 + HINTS ENV + AJASDKPath${_lib_suffix} + ENV +@@ -99,10 +99,17 @@ find_package_handle_standard_args(LibAJANTV2 DEFAULT_MSG AJA_LIBRARIES_INCLUDE_D + mark_as_advanced(AJA_LIBRARIES_INCLUDE_DIR AJA_NTV2_LIB) + + if(LIBAJANTV2_FOUND) +- set(AJA_LIBRARIES_INCLUDE_DIR ${AJA_LIBRARIES_INCLUDE_DIR}/ajalibraries) ++ set(AJA_LIBRARIES_INCLUDE_DIR ${AJA_LIBRARIES_INCLUDE_DIR}/libajantv2) + set(AJA_LIBRARIES_INCLUDE_DIRS + ${AJA_LIBRARIES_INCLUDE_DIR} ${AJA_LIBRARIES_INCLUDE_DIR}/ajaanc ${AJA_LIBRARIES_INCLUDE_DIR}/ajabase + ${AJA_LIBRARIES_INCLUDE_DIR}/ajantv2 ${AJA_LIBRARIES_INCLUDE_DIR}/ajantv2/includes) ++ if(CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") ++ list(APPEND AJA_LIBRARIES_INCLUDE_DIRS ${AJA_LIBRARIES_INCLUDE_DIR}/ajantv2/src/win) ++ elseif(CMAKE_HOST_SYSTEM_NAME MATCHES "Darwin") ++ list(APPEND AJA_LIBRARIES_INCLUDE_DIRS ${AJA_LIBRARIES_INCLUDE_DIR}/ajantv2/src/mac) ++ elseif(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux") ++ list(APPEND AJA_LIBRARIES_INCLUDE_DIRS ${AJA_LIBRARIES_INCLUDE_DIR}/ajantv2/src/lin) ++ endif() + + set(LIBAJANTV2_LIBRARIES ${AJA_NTV2_LIB}) + if(AJA_NTV2_DEBUG_LIB STREQUAL "AJA_NTV2_DEBUG_LIB-NOTFOUND") +diff --git a/plugins/aja/aja-widget-io.cpp b/plugins/aja/aja-widget-io.cpp +index 18e571dfe98c5..c7d01c0acd465 100644 +--- a/plugins/aja/aja-widget-io.cpp ++++ b/plugins/aja/aja-widget-io.cpp +@@ -1,6 +1,7 @@ + #include "aja-widget-io.hpp" + #include "aja-common.hpp" + ++#include <ajantv2/includes/ntv2enums.h> + #include <ajantv2/includes/ntv2utils.h> + #include <ajantv2/includes/ntv2signalrouter.h> + +@@ -35,21 +36,21 @@ static const WidgetInputSocket kWidgetInputSockets[] = { + //NTV2InputCrosspointID | NTV2WidgetID | Name | DatastreamIndex + { NTV2_INPUT_CROSSPOINT_INVALID, NTV2_WIDGET_INVALID, "", -1}, + { NTV2_XptFrameBuffer1Input, NTV2_WgtFrameBuffer1, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer1BInput, NTV2_WgtFrameBuffer1, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer1DS2Input, NTV2_WgtFrameBuffer1, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer2Input, NTV2_WgtFrameBuffer2, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer2BInput, NTV2_WgtFrameBuffer2, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer2DS2Input, NTV2_WgtFrameBuffer2, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer3Input, NTV2_WgtFrameBuffer3, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer3BInput, NTV2_WgtFrameBuffer3, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer3DS2Input, NTV2_WgtFrameBuffer3, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer4Input, NTV2_WgtFrameBuffer4, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer4BInput, NTV2_WgtFrameBuffer4, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer4DS2Input, NTV2_WgtFrameBuffer4, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer5Input, NTV2_WgtFrameBuffer5, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer5BInput, NTV2_WgtFrameBuffer5, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer5DS2Input, NTV2_WgtFrameBuffer5, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer6Input, NTV2_WgtFrameBuffer6, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer6BInput, NTV2_WgtFrameBuffer6, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer6DS2Input, NTV2_WgtFrameBuffer6, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer7Input, NTV2_WgtFrameBuffer7, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer7BInput, NTV2_WgtFrameBuffer7, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer7DS2Input, NTV2_WgtFrameBuffer7, kFramebufferNickname, 1}, + { NTV2_XptFrameBuffer8Input, NTV2_WgtFrameBuffer8, kFramebufferNickname, 0}, +- { NTV2_XptFrameBuffer8BInput, NTV2_WgtFrameBuffer8, kFramebufferNickname, 1}, ++ { NTV2_XptFrameBuffer8DS2Input, NTV2_WgtFrameBuffer8, kFramebufferNickname, 1}, + { NTV2_XptCSC1VidInput, NTV2_WgtCSC1, kCSCNickname, 0}, + { NTV2_XptCSC1KeyInput, NTV2_WgtCSC1, kCSCNickname, 1}, + { NTV2_XptCSC2VidInput, NTV2_WgtCSC2, kCSCNickname, 0}, @@ -7,13 +7,14 @@ pkgname=obs-studio-browser pkgver=30.0.2 -pkgrel=6 +pkgrel=7 pkgdesc="Free and open source software for video recording and live streaming. With everything except service integration" arch=("x86_64" "aarch64") url="https://github.com/obsproject/obs-studio" license=('GPL-2.0-or-later') # To manage dependency rebuild easily, this will prevent you to rebuild OBS on non-updated system _qtver=6.6.2 +_libajantv2ver=17.0.1 _libdatachannelver=0.20 _mbedtlsver=3.5.1 _pythonver=3.11 @@ -70,7 +71,7 @@ makedepends=( "jack" # Deps of JACK plugin "git" "uthash" # Deps of libobs - "libajantv2" # Deps of AJA plugin (static lib) + "libajantv2>=$_libajantv2ver" # Deps of AJA plugins "libdatachannel>=$_libdatachannelver" # Deps of WebRTC plugin (NICE variant like the Flatpak) "libfdk-aac" # Deps of FDK AAC plugin "luajit" # Deps of Scripting plugin @@ -103,6 +104,7 @@ optdepends=( "systemd-libs: V4L2 support" "v4l2loopback-dkms: V4L2 virtual camera output" "libdatachannel>=$_libdatachannelver: WHIP Support" + "libajantv2>=$_libajantv2ver: AJA support" ) provides=("obs-studio=$pkgver" "obs-vst" "obs-websocket" "obs-browser") conflicts=( @@ -117,6 +119,7 @@ source=( "obs-websocket::git+https://github.com/obsproject/obs-websocket.git" "0001-Add_finder_for_uthash.patch" "0002-Use_system_uthash.patch" + "0003-Update_to_libajantv2_17_legacy_path_only.patch" ) sha256sums=( "SKIP" @@ -124,6 +127,7 @@ sha256sums=( "SKIP" "f4a56021a7f1c564f95b588d7c09b60a89efa2c1954c8a418cf6320b5a818542" "874456110d17d2efe02f8a1f47f58c877922d8bdab6435df334b9e6460b26bf8" + "a7149e1d9a07270132cf8085d52225ed3200a78ea943cbf52d64b1b8f293e117" ) if [[ $CARCH == 'x86_64' ]]; then @@ -138,6 +142,7 @@ prepare() { patch -Np1 -i "$srcdir/0001-Add_finder_for_uthash.patch" patch -Np1 -i "$srcdir/0002-Use_system_uthash.patch" + patch -Np1 -i "$srcdir/0003-Update_to_libajantv2_17_legacy_path_only.patch" } build() { |