unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
@ 2021-01-06 23:36 Evan Straw
  2021-01-06 23:42 ` Nicolò Balzarotti
                   ` (3 more replies)
  0 siblings, 4 replies; 24+ messages in thread
From: Evan Straw @ 2021-01-06 23:36 UTC (permalink / raw)
  To: 45707


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.1: [PATCH] gnu: Add obs-v4l2sink. --]
[-- Type: text/x-patch, Size: 2740 bytes --]

From 0aa683242ae591d0ddac8b4b23163805dc4414c9 Mon Sep 17 00:00:00 2001
From: Evan Straw <evan.straw99@gmail.com>
Date: Wed, 6 Jan 2021 15:33:25 -0800
Subject: [PATCH] gnu: Add obs-v4l2sink.
To: guix-patches@gnu.org

* gnu/packages/video.scm (obs-v4l2sink): New variable.
---
 gnu/packages/video.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 2b1b111e97..6d64d03e44 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3133,6 +3133,45 @@ and JACK.")
     (home-page "https://obsproject.com")
     (license license:gpl2+)))
 
+(define-public obs-v4l2sink
+  (package
+    (name "obs-v4l2sink")
+    (version "0.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url "https://github.com/CatxFish/obs-v4l2sink")
+                                  (commit version)))
+              (file-name (string-append name "-" version))
+              (sha256
+               (base32
+                "0l4lavaywih5lzwgxcbnvdrxhpvkrmh56li06s3aryikngxwsk3z"))))
+    (build-system cmake-build-system)
+    (arguments `(#:tests? #f ;; obs-v4l2sink does not have tests
+                 #:phases
+                 (modify-phases %standard-phases
+                   ;; The CMakeLists.txt file for obs-v4l2sink attempts to use
+                   ;; its own method to search for libobs which uses a lot of
+                   ;; hardcoded paths and ultimately fails under Guix. OBS
+                   ;; already comes with its own CMake configuration, so
+                   ;; remove the line that uses the hardcoded method and just
+                   ;; let CMake locate OBS.
+                   (add-before 'configure 'fix-libobs
+                     (lambda* _
+                       (substitute* "CMakeLists.txt"
+                         (("^.*FindLibObs.*$") ""))
+                       #t)))))
+    (inputs `(("qtbase" ,qtbase)
+              ("obs" ,obs)))
+    (home-page "https://github.com/CatxFish/obs-v4l2sink")
+    (synopsis "OBS Studio output plugin for Video4Linux2 device")
+    (description "An @dfn{Open Broadcaster Software} (OBS) Studio plugin that
+provides output capabilities to a @dfn{Video4Linux2} (v4l2) device.  It can be
+used with @code{v4l2loopback} to achieve cross-program video transfer between
+OBS Studio and third party software supporting Video4Linux2, e.g. to present
+an OBS session in proprietary browser-based conferencing systems by selecting
+the OBS session as a webcam.")
+    (license license:gpl2+)))
+
 (define-public libvdpau
   (package
     (name "libvdpau")
-- 
2.25.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply related	[flat|nested] 24+ messages in thread
* [bug#46113] [PATCH] gnu: obs: Update obs to fb347c.
@ 2021-01-26 15:59 Andrew Tropin
  2021-01-26 16:26 ` Andrew Tropin
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Andrew Tropin @ 2021-01-26 15:59 UTC (permalink / raw)
  To: 46113


This version of obs adds support for OBS_PLUGINS*_PATH environment variables,
which are required to be able to load plugins, which are present in profile.

It will make it possible for following packages to work:
http://issues.guix.gnu.org/45961
http://issues.guix.gnu.org/45960

* gnu/packages/video.scm (obs): Update to fb347c.
---
 gnu/packages/video.scm | 116 ++++++++++++++++++++++-------------------
 1 file changed, 63 insertions(+), 53 deletions(-)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 28cde06f04..0f9b405261 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3076,62 +3076,72 @@ be used for realtime video capture via Linux-specific APIs.")
     (license (list license:lgpl2.1+ license:gpl2))))
 
 (define-public obs
-  (package
-    (name "obs")
-    (version "26.1.0")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/obsproject/obs-studio")
-                    (commit version)))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "0p8wdzm9imn3s17arr206sz92g4pkacfcpfbwvhvgkrrs4w000bx"))))
-    (build-system cmake-build-system)
-    (arguments
-     `(#:configure-flags
-       (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version)
-             "-DENABLE_UNIT_TESTS=TRUE")
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'wrap-executable
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out"))
-                   (plugin-path (getenv "QT_PLUGIN_PATH")))
-               (wrap-program (string-append out "/bin/obs")
-                 `("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
-             #t)))))
-    (native-inputs
-     `(("cmocka" ,cmocka)
-       ("pkg-config" ,pkg-config)))
-    (inputs
-     `(("alsa-lib" ,alsa-lib)
-       ("curl" ,curl)
-       ("eudev" ,eudev)
-       ("ffmpeg" ,ffmpeg)
-       ("fontconfig" ,fontconfig)
-       ("freetype" ,freetype)
-       ("jack" ,jack-1)
-       ("jansson" ,jansson)
-       ("libx264" ,libx264)
-       ("libxcomposite" ,libxcomposite)
-       ("mbedtls" ,mbedtls-apache)
-       ("mesa" ,mesa)
-       ("pulseaudio" ,pulseaudio)
-       ("qtbase" ,qtbase)
-       ("qtsvg" ,qtsvg)
-       ("qtx11extras" ,qtx11extras)
-       ("speexdsp" ,speexdsp)
-       ("v4l-utils" ,v4l-utils)
-       ("zlib" ,zlib)))
-    (synopsis "Live streaming software")
-    (description "Open Broadcaster Software provides a graphical interface for
+  (let ((commit "fb347c3c62ced2ea302769e449d300fd923c2d4b")
+        (revision "1"))
+    (package
+      (name "obs")
+      (version (git-version "26.1.2" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/obsproject/obs-studio")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "017llgj1hlfvk2622qa44d8iz6d0kahhckn421dypj09a4n6aajz"))))
+      (build-system cmake-build-system)
+      (arguments
+       `(#:configure-flags
+         (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version)
+               "-DENABLE_UNIT_TESTS=TRUE")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'install 'wrap-executable
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out"))
+                     (plugin-path (getenv "QT_PLUGIN_PATH")))
+                 (wrap-program (string-append out "/bin/obs")
+                   `("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
+               #t)))))
+      (native-inputs
+       `(("cmocka" ,cmocka)
+         ("pkg-config" ,pkg-config)))
+      (inputs
+       `(("alsa-lib" ,alsa-lib)
+         ("curl" ,curl)
+         ("eudev" ,eudev)
+         ("ffmpeg" ,ffmpeg)
+         ("fontconfig" ,fontconfig)
+         ("freetype" ,freetype)
+         ("jack" ,jack-1)
+         ("jansson" ,jansson)
+         ("libx264" ,libx264)
+         ("libxcomposite" ,libxcomposite)
+         ("mbedtls" ,mbedtls-apache)
+         ("mesa" ,mesa)
+         ("pulseaudio" ,pulseaudio)
+         ("qtbase" ,qtbase)
+         ("qtsvg" ,qtsvg)
+         ("qtx11extras" ,qtx11extras)
+         ("speexdsp" ,speexdsp)
+         ("v4l-utils" ,v4l-utils)
+         ("zlib" ,zlib)))
+      (native-search-paths
+       (list
+        (search-path-specification
+         (variable "OBS_PLUGINS_DATA_PATH")
+         (files '("share/obs/obs-plugins")))
+        (search-path-specification
+         (variable "OBS_PLUGINS_PATH")
+         (files '("lib/obs-plugins")))))
+      (synopsis "Live streaming software")
+      (description "Open Broadcaster Software provides a graphical interface for
 video recording and live streaming.  OBS supports capturing audio and video
 from many input sources such as webcams, X11 (for screencasting), PulseAudio,
 and JACK.")
-    (home-page "https://obsproject.com")
-    (license license:gpl2+)))
+      (home-page "https://obsproject.com")
+      (license license:gpl2+))))
 
 (define-public libvdpau
   (package
-- 
2.30.0





^ permalink raw reply related	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2021-02-04 12:57 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
2021-01-06 23:42 ` Nicolò Balzarotti
2021-01-06 23:45   ` Evan Straw
2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
2021-01-07  0:11   ` Nicolò Balzarotti
2021-01-07  4:37   ` Evan
2021-01-07  8:19     ` Alexey Abramov
2021-01-13 14:35       ` [bug#45707] [PATCH] " Ludovic Courtès
2021-01-15 16:47         ` Alexey Abramov
2021-01-16 21:47           ` Ludovic Courtès
2021-01-20  8:28             ` Alexey Abramov
2021-02-02  9:31               ` bug#45707: " Ludovic Courtès
2021-01-15 17:10   ` [bug#45707] [PATCH v2] " pelzflorian (Florian Pelz)
2021-01-15 19:25     ` Evan Straw
2021-02-02 20:00 ` [bug#45707] (no subject) Andrew Tropin
2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
2021-02-03 21:11   ` [bug#46113] " Ludovic Courtès
2021-02-04 10:45   ` guix-patches--- via
2021-02-04 12:49     ` bug#46113: " Andrew Tropin
  -- strict thread matches above, loose matches on Subject: below --
2021-01-26 15:59 [bug#46113] " Andrew Tropin
2021-01-26 16:26 ` Andrew Tropin
2021-01-27  7:27   ` Alexey Abramov
2021-01-26 21:10 ` Leo Famulari
2021-01-27  9:36 ` Andrew Tropin

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).