These patches scratch a particularly timely itch.  I want to use
OpenBroadcaster to record my talk tomorrow, but recording video from a
webcam requires libv4l.

(Sorry that these are likely not inline attachments.  I'm dealing with
a less-than-ideal email setup right now.)

Thanks in advance for review!

- Dave
From b1ccba1616dc77950b8495714a47d5e3f9b9eda1 Mon Sep 17 00:00:00 2001
From: David Thompson <dthomps...@worcester.edu>
Date: Tue, 19 Jan 2016 22:11:16 -0500
Subject: [PATCH 1/2] gnu: Add v4l-utils.

* gnu/packages/video.scm (v4l-utils): New variable.
---
 gnu/packages/video.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 9e41835..c135770 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1265,6 +1265,39 @@ functionality of the system is provided via an assortment of ready to use
 tools, XML authoring components, and an extensible plug-in based API.")
     (license license:lgpl2.1+)))
 
+(define-public v4l-utils
+  (package
+    (name "v4l-utils")
+    (version "1.8.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://linuxtv.org/downloads/v4l-utils";
+                                  "/v4l-utils-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0cqv8drw0z0kfmz4f50a8kzbrz6vbj6j6q78030hgshr7yq1jqig"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:configure-flags
+       (list (string-append "--with-udevdir="
+                            (assoc-ref %outputs "out")
+                            "/lib/udev"))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("glu" ,glu)
+       ("libjpeg" ,libjpeg)
+       ("libx11" ,libx11)
+       ("qt" ,qt)
+       ("eudev" ,eudev)))
+    (synopsis "Realtime video capture utilities for Linux")
+    (description "The v4l-utils provide a series of libraries and utilities to
+be used for realtime video capture via Linux-specific APIs.")
+    (home-page "https://linuxtv.org/wiki/index.php/V4l-utils";)
+    ;; libv4l2 is LGPL2.1+, while utilties are GPL2 only.
+    (license (list license:lgpl2.1+ license:gpl2))))
+
 (define-public obs
   (package
     (name "obs")
-- 
2.5.0

From 00ad398215837b64daf577024511330c1f73ce6a Mon Sep 17 00:00:00 2001
From: David Thompson <dthomps...@worcester.edu>
Date: Tue, 19 Jan 2016 22:11:35 -0500
Subject: [PATCH 2/2] gnu: obs: Add support for webcams.

* gnu/packages/video.scm (obs)[inputs]: Add v4l-utils.
---
 gnu/packages/video.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index c135770..4939194 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1326,6 +1326,7 @@ be used for realtime video capture via Linux-specific APIs.")
        ("mesa" ,mesa)
        ("pulseaudio" ,pulseaudio)
        ("qt" ,qt)
+       ("v4l-utils" ,v4l-utils)
        ("zlib" ,zlib)))
     (synopsis "Live streaming software")
     (description "Open Broadcaster Software provides a graphical interface for
-- 
2.5.0

Reply via email to