summary refs log tree commit diff
diff options
context:
space:
mode:
authorOleg Pykhalov <go.wigust@gmail.com>2024-07-13 04:49:16 +0300
committerOleg Pykhalov <go.wigust@gmail.com>2024-08-04 12:39:09 +0300
commit1ca4a8b8d308bbcfd0a75c76b00ed6164b7759fe (patch)
tree48afab2fcbab1a95a7318283195752afcec1e1aa
parent4aad2ff47cdbb02688c45a040405d3dca048834c (diff)
downloadguix-1ca4a8b8d308bbcfd0a75c76b00ed6164b7759fe.tar.gz
gnu: Add obs-advanced-masks.
* gnu/packages/video.scm (obs-advanced-masks): New variable.

Change-Id: I7f35de6c645083b522e4844da7c835fb3626c22f
-rw-r--r--gnu/packages/video.scm60
1 files changed, 60 insertions, 0 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 089dd17201..1534709d6b 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -4061,6 +4061,66 @@ and JACK.")
     (home-page "https://obsproject.com")
     (license license:gpl2+)))
 
+(define-public obs-advanced-masks
+  (package
+    (name "obs-advanced-masks")
+    (version "1.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/FiniteSingularity/obs-advanced-masks")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0vhilhzdfv0wa8hqz8ffavr272w3d5b75vvldf8rfy9pm5c8xn9n"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:modules '((guix build cmake-build-system)
+                  (guix build utils))
+      #:tests? #f ;no tests
+      #:configure-flags
+      #~(list (string-append "-DLIBOBS_INCLUDE_DIR="
+                             #$(this-package-input "obs") "/lib")
+              "-DBUILD_OUT_OF_TREE=On"
+              "-Wno-dev")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'install 'move-shaders
+            (lambda _
+              (mkdir-p
+               (string-append
+                #$output
+                "/share/obs/obs-plugins/obs-advanced-masks"))
+              (rename-file
+               (string-append
+                #$output
+                "/data/obs-plugins/obs-advanced-masks/shaders")
+               (string-append
+                #$output
+                "/share/obs/obs-plugins/obs-advanced-masks/shaders")))))))
+    (inputs (list obs qtbase-5))
+    (home-page "https://github.com/FiniteSingularity/obs-advanced-masks")
+    (synopsis "Advanced masking plugin for OBS")
+    (description "OBS Advanced Masks is a project designed to expand the
+masking functionalities within OBS Studio.  This plug-in provides filters for
+users to create intricate and customized masks for their OBS Scenes and
+Sources.
+
+@itemize
+@item Advanced Masks provides both Alpha Masking and Adjustment Masking.
+@item Shape masks allow for dynamically generated Rectangle, Circle,
+Elliptical, Regular Polygon, Star, and Heart shaped masks, with many
+adjustable parameters.
+@item Source Masks allow an existing OBS source to be used as a mask, using
+any combination of the red, green, blue, or alpha channels from said source.
+@item Image Masks include all of the same functionality as Source Masks, but
+applied via a static image (.png, .jpeg, etc).
+@item Gradient Masks allow a fading mask using a user-specified gradient.
+@end itemize\n")
+    (license license:gpl2)))
+
 (define-public obs-looking-glass
   (package
     (name "obs-looking-glass")