From 11d8a148a10a54322df21431a861908c805342b0 Mon Sep 17 00:00:00 2001 From: Brian McKenna Date: Sat, 15 Jan 2022 07:33:42 +1000 Subject: [PATCH] obs-backgroundremoval: init at 0.4.0 --- .../video/obs-studio/plugins/default.nix | 1 + .../obs-backgroundremoval-includes.patch | 36 +++++++++++++++ .../plugins/obs-backgroundremoval.nix | 45 +++++++++++++++++++ 3 files changed, 82 insertions(+) create mode 100644 pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval-includes.patch create mode 100644 pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval.nix diff --git a/pkgs/applications/video/obs-studio/plugins/default.nix b/pkgs/applications/video/obs-studio/plugins/default.nix index 9b46ae4de35..3d547b4c2dd 100644 --- a/pkgs/applications/video/obs-studio/plugins/default.nix +++ b/pkgs/applications/video/obs-studio/plugins/default.nix @@ -11,4 +11,5 @@ obs-nvfbc = callPackage ./obs-nvfbc.nix {}; obs-pipewire-audio-capture = callPackage ./obs-pipewire-audio-capture.nix {}; obs-vkcapture = callPackage ./obs-vkcapture.nix {}; + obs-backgroundremoval = callPackage ./obs-backgroundremoval.nix {}; } diff --git a/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval-includes.patch b/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval-includes.patch new file mode 100644 index 00000000000..2a1b59a6b12 --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval-includes.patch @@ -0,0 +1,36 @@ +diff --git a/src/Model.h b/src/Model.h +index 5c21eae..74b8078 100644 +--- a/src/Model.h ++++ b/src/Model.h +@@ -1,13 +1,8 @@ + #ifndef MODEL_H + #define MODEL_H + +-#if defined(__APPLE__) + #include + #include +-#else +-#include +-#include +-#endif + #ifdef _WIN32 + #ifdef WITH_CUDA + #include +diff --git a/src/background-filter.cpp b/src/background-filter.cpp +index 9fa5794..5d66aee 100644 +--- a/src/background-filter.cpp ++++ b/src/background-filter.cpp +@@ -1,13 +1,8 @@ + #include + #include + +-#if defined(__APPLE__) + #include + #include +-#else +-#include +-#include +-#endif + #ifdef _WIN32 + #ifdef WITH_CUDA + #include diff --git a/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval.nix b/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval.nix new file mode 100644 index 00000000000..6175a48a1b9 --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/obs-backgroundremoval.nix @@ -0,0 +1,45 @@ +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, cmake +, obs-studio +, onnxruntime +, opencv +}: + +stdenv.mkDerivation rec { + pname = "obs-backgroundremoval"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "royshil"; + repo = "obs-backgroundremoval"; + rev = "v${version}"; + sha256 = "sha256-TI1FlhE0+JL50gAZCSsI+g8savX8GRQkH3jYli/66hQ="; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ obs-studio onnxruntime opencv ]; + + dontWrapQtApps = true; + + cmakeFlags = [ + "-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs" + "-DOnnxruntime_INCLUDE_DIRS=${onnxruntime.dev}/include/onnxruntime/core/session" + ]; + + patches = [ ./obs-backgroundremoval-includes.patch ]; + + prePatch = '' + sed -i 's/version_from_git()/set(VERSION "${version}")/' CMakeLists.txt + ''; + + meta = with lib; { + description = "OBS plugin to replace the background in portrait images and video"; + homepage = "https://github.com/royshil/obs-backgroundremoval"; + maintainers = with maintainers; [ puffnfresh ]; + license = licenses.mit; + platforms = [ "x86_64-linux" "i686-linux" ]; + }; +}