[Buildroot] [PATCH v3 1/1] v4l2loopback: new package

Alexandre Esse alexandre.esse.dev at gmail.com
Tue Jun 20 19:11:38 UTC 2017


This package provides a kernel module and utilities in order to use
v4l2loopback virtual devices.
This module allows you to create "virtual video devices" normal (v4l2)
applications will read these devices as if they were ordinary video
devices, but the video will not be read from e.g. a capture card but
instead it is generated by another application.

Signed-off-by: Alexandre Esse <alexandre.esse.dev at gmail.com>
---
 DEVELOPERS                             |  1 +
 package/Config.in                      |  1 +
 package/v4l2loopback/Config.in         | 29 +++++++++++++++++++++++++++++
 package/v4l2loopback/v4l2loopback.hash |  2 ++
 package/v4l2loopback/v4l2loopback.mk   | 19 +++++++++++++++++++
 5 files changed, 52 insertions(+)
 create mode 100644 package/v4l2loopback/Config.in
 create mode 100644 package/v4l2loopback/v4l2loopback.hash
 create mode 100644 package/v4l2loopback/v4l2loopback.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index afc4596..c9f3559 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -66,6 +66,7 @@ F:	package/tz/
 
 N:	Alexandre Esse <alexandre.esse.dev at gmail.com>
 F:	package/kvazaar/
+F:	package/v4l2loopback/
 
 N:	Alistair Francis <alistair.francis at xilinx.com>
 F:	package/xen/
diff --git a/package/Config.in b/package/Config.in
index 9df0b42..db6c197 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -49,6 +49,7 @@ menu "Audio and video applications"
 	source "package/udpxy/Config.in"
 	source "package/upmpdcli/Config.in"
 	source "package/v4l2grab/Config.in"
+	source "package/v4l2loopback/Config.in"
 	source "package/vlc/Config.in"
 	source "package/vorbis-tools/Config.in"
 	source "package/wavpack/Config.in"
diff --git a/package/v4l2loopback/Config.in b/package/v4l2loopback/Config.in
new file mode 100644
index 0000000..f0da520
--- /dev/null
+++ b/package/v4l2loopback/Config.in
@@ -0,0 +1,29 @@
+config BR2_PACKAGE_V4L2LOOPBACK
+	bool "v4l2loopback"
+	depends on BR2_LINUX_KERNEL
+	help
+	  This module allows you to create "virtual video devices".
+	  Normal (v4l2) applications will read these devices as if they
+	  were ordinary video devices, but the video will not be read
+	  from e.g. a capture card but instead it is generated by
+	  another application.
+
+if BR2_PACKAGE_V4L2LOOPBACK
+
+config BR2_PACKAGE_V4L2LOOPBACK_UTILS
+	bool "v4l2loopback-utils"
+	depends on BR2_USE_MMU # bash
+	select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash
+	select BR2_PACKAGE_BASH #runtine dependency
+	select BR2_PACKAGE_SUDO #runtime dependency
+	help
+	  This package contains applications to interact with
+	  v4l2-loopback devices ("virtual video devices").
+	  Currently there is only a single command line utility:
+	  v4l2loopback-ctl: tool to set framerate, format and timeout
+	  image.
+
+endif
+
+comment "v4l2loopback needs a Linux kernel to be built"
+	depends on !BR2_LINUX_KERNEL
diff --git a/package/v4l2loopback/v4l2loopback.hash b/package/v4l2loopback/v4l2loopback.hash
new file mode 100644
index 0000000..2b69fd7
--- /dev/null
+++ b/package/v4l2loopback/v4l2loopback.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 9bb1e8d544019bead20813877415ae974fbc22f87c69772984a4abac433f36dd  v4l2loopback-v0.10.0.tar.gz
diff --git a/package/v4l2loopback/v4l2loopback.mk b/package/v4l2loopback/v4l2loopback.mk
new file mode 100644
index 0000000..669f8fc
--- /dev/null
+++ b/package/v4l2loopback/v4l2loopback.mk
@@ -0,0 +1,19 @@
+################################################################################
+#
+# v4l2loopback
+#
+################################################################################
+
+V4L2LOOPBACK_VERSION = v0.10.0
+V4L2LOOPBACK_SITE = $(call github,umlaeute,v4l2loopback,$(V4L2LOOPBACK_VERSION))
+V4L2LOOPBACK_LICENSE = GPL-2.0+
+V4L2LOOPBACK_LICENSE_FILES = COPYING
+
+ifeq ($(BR2_PACKAGE_V4L2LOOPBACK_UTILS),y)
+define V4L2LOOPBACK_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/utils/v4l2loopback-ctl $(TARGET_DIR)/usr/bin/v4l2loopback-ctl
+endef
+endif
+
+$(eval $(kernel-module))
+$(eval $(generic-package))
-- 
2.7.4



More information about the buildroot mailing list