Compare commits

..

16 commits

Author SHA1 Message Date
Mauro Carvalho Chehab
70708db4fa Fix libdir at the removal part of the spec file
The way it was doesn't build on i686

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-12-10 21:55:38 -02:00
Mauro Carvalho Chehab
3420d0074d Ignore errors at remove command
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-12-10 21:51:01 -02:00
Mauro Carvalho Chehab
321f313d76 Remove libv4l from being packaged
This avoids a conflict with RHEL6 package.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-12-10 19:20:29 -02:00
Mauro Carvalho Chehab
681ce4bc8b Enable qv4l2 compilation
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 12:40:30 -02:00
Mauro Carvalho Chehab
f15e1baef4 Fix build on rhel6
Fix some remaining issues related to file packaging.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 11:45:35 -02:00
Mauro Carvalho Chehab
84dc73e2f7 Disable qv4l2
This package requires QGLFunctions with seems to be unavailable
on rhel6.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 11:29:27 -02:00
Mauro Carvalho Chehab
161ba07903 Add missing media.h file
The media.h file found on RHEL6 is not enough to build the
media-ctl tools. So, keep it in sync with the updated Kernel's
one.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 11:16:38 -02:00
Mauro Carvalho Chehab
9e2a56fcf8 Preserve the old location for keymaps
Let's not change the location for the keymaps, as we don't want
to cause troubles when upgrading the package.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 10:56:21 -02:00
Mauro Carvalho Chehab
3f3420e788 Synchronize Kernel headers with upstream
This is needed to build with RHEL6's Kernel.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-24 09:33:20 -02:00
Mauro Carvalho Chehab
ebdfd3d8b7 Merge branch 'f20' into el6
* f20: (30 commits)
  Update to version 1.6.2
  Fix crash when decoding 1920x1080 jpeg to YUV420
  Update to version 1.6.0
  Upgrade to version 1.6.0
  Update do version 1.4.0
  Update do version 1.4.0 and pack libdvbv5 devel manpages
  Bump version at .spec
  Fix a cut-and-past issue at timestamp
  Fix the license for libdvbv5 and remove needless dependency
  Add alsa-lib-devel, in order to compile alsa support on qv4l2
  remove README.lib-multi-threading from libdvbv5-devel
  Bump version to 1.2.1 and add libdvbv5 package
  - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
  - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
  New upstream release 1.0.0 final
  Add a few libv4l2rds patches from upstream, which bring libv4l2rds to its
  New upstream release 0.9.5 (rhbz#970412)
  Revert "Minor cleanup"
  Minor cleanup
  - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
  ...

Conflicts:
	.gitignore
	sources
	v4l-utils.spec
2014-11-24 09:25:04 -02:00
Mauro Carvalho Chehab
63e34493c7 Update to version 1.6.2
It contains several fixes:

Hans Verkuil (5):
      v4l2-ctl: fix sliced vbi mode parsing
      v4l2-compliance: when streaming used at least 2 buffers.
      v4l2-compliance: add initial checks for VIDIOC_QUERY_EXT_CTRL
      v4l2-ctl: add support for U32 control type.
      v4l2-ctl: fix array handling

Gregor Jasny (5):
      man: remove duplicate backslash from NAME section
      man: Use Unicode character for ellipsis and fall back to ...
      man: add generated files to .gitignore
      v4l2-compliance: Explicitely link against rt library
      v4l2-ctl: Explicitely link against rt library

Hans Verkuil (1):
      qv4l2/v4l2-ctl: fix buffer overrun in vivid-tpg.

Hans de Goede (2):
      rc_keymaps: allwinner: S/KEY_HOME/KEY_HOMEPAGE/
      v4lconvert: Fix decoding of jpeg data with no vertical sub-sampling

Mauro Carvalho Chehab (4):
      libdvbv5: properly represent Satellite frequencies
      README: better document the package
      ir-keytable: fix a regression introduced by fe2aa5f767eba
     rc: Update the protocol name at RC6 tables

Niels Ole Salscheider (1):
      qv4l2: Fix out-of-source build

Patch1 is not needed anymore, as the fix got merged on version 1.6.1.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-11-22 07:50:19 -02:00
Hans de Goede
dfd03feb29 Merge remote-tracking branch 'origin/master' into f20
Signed-off-by: Hans de Goede <hdegoede@redhat.com>

Conflicts:
	.gitignore
	v4l-utils.spec
2014-11-20 15:10:05 +01:00
Mauro Carvalho Chehab
3f6c9a77ba Update to version 1.6.0
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2014-10-05 21:10:50 -03:00
Mauro Carvalho Chehab
230d7bab97 Update do version 1.4.0
Add a package for libdvbv5.

Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
2014-09-09 00:07:10 -03:00
Mauro Carvalho Chehab
b3a0342f29 Need autoconf too
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-10-07 15:45:28 -03:00
Mauro Carvalho Chehab
3f64c179bf Build v4l-utils without needing libv4l
Some of the v4l-utils are dependent on the libv4l shipped with it.
However, as RHEL6 ships its own version on it (generally a legacy
one), change the build system to build only a local static copy of
libv4l, and linkedit the tools that need it statically.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-10-07 15:29:05 -03:00
8 changed files with 702 additions and 500 deletions

3
.gitignore vendored
View file

@ -1,2 +1 @@
/v4l-utils-*.tar.bz2
/v4l-utils-*.tar.xz
/v4l-utils-1.6.2.tar.bz2

View file

@ -0,0 +1,268 @@
diff --git a/Makefile.am b/Makefile.am
index 03169ce..758d355 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -36,6 +36,7 @@ sync-with-kernel:
cp -a $(KERNEL_DIR)/usr/include/linux/v4l2-common.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/v4l2-subdev.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/v4l2-mediabus.h $(top_srcdir)/include/linux
+ cp -a $(KERNEL_DIR)/usr/include/linux/media-bus-format.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/ivtv.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/dvb/frontend.h $(top_srcdir)/include/linux/dvb
cp -a $(KERNEL_DIR)/usr/include/linux/dvb/dmx.h $(top_srcdir)/include/linux/dvb
diff --git a/contrib/freebsd/include/linux/v4l2-controls.h b/contrib/freebsd/include/linux/v4l2-controls.h
index 8b93021..661f119 100644
--- a/contrib/freebsd/include/linux/v4l2-controls.h
+++ b/contrib/freebsd/include/linux/v4l2-controls.h
@@ -746,6 +746,8 @@ enum v4l2_auto_focus_range {
V4L2_AUTO_FOCUS_RANGE_INFINITY = 3,
};
+#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32)
+#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33)
/* FM Modulator class control IDs */
diff --git a/contrib/freebsd/include/linux/videodev2.h b/contrib/freebsd/include/linux/videodev2.h
index 02f2005..98e3615 100644
--- a/contrib/freebsd/include/linux/videodev2.h
+++ b/contrib/freebsd/include/linux/videodev2.h
@@ -111,6 +111,7 @@ typedef int8_t __s8;
/* Four-character-code (FOURCC) */
#define v4l2_fourcc(a, b, c, d)\
((uint32_t)(a) | ((uint32_t)(b) << 8) | ((uint32_t)(c) << 16) | ((uint32_t)(d) << 24))
+#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1 << 31))
/*
* E N U M S
@@ -339,6 +340,8 @@ struct v4l2_pix_format {
#define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', '5') /* 16 XRGB-1-5-5-5 */
#define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 RGB-5-6-5 */
#define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', 'Q') /* 16 RGB-5-5-5 BE */
+#define V4L2_PIX_FMT_ARGB555X v4l2_fourcc_be('A', 'R', '1', '5') /* 16 ARGB-5-5-5 BE */
+#define V4L2_PIX_FMT_XRGB555X v4l2_fourcc_be('X', 'R', '1', '5') /* 16 XRGB-5-5-5 BE */
#define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R') /* 16 RGB-5-6-5 BE */
#define V4L2_PIX_FMT_BGR666 v4l2_fourcc('B', 'G', 'R', 'H') /* 18 BGR-6-6-6 */
#define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3') /* 24 BGR-8-8-8 */
diff --git a/include/linux/media-bus-format.h b/include/linux/media-bus-format.h
new file mode 100644
index 0000000..23b4090
--- /dev/null
+++ b/include/linux/media-bus-format.h
@@ -0,0 +1,125 @@
+/*
+ * Media Bus API header
+ *
+ * Copyright (C) 2009, Guennadi Liakhovetski <g.liakhovetski@gmx.de>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#ifndef __LINUX_MEDIA_BUS_FORMAT_H
+#define __LINUX_MEDIA_BUS_FORMAT_H
+
+/*
+ * These bus formats uniquely identify data formats on the data bus. Format 0
+ * is reserved, MEDIA_BUS_FMT_FIXED shall be used by host-client pairs, where
+ * the data format is fixed. Additionally, "2X8" means that one pixel is
+ * transferred in two 8-bit samples, "BE" or "LE" specify in which order those
+ * samples are transferred over the bus: "LE" means that the least significant
+ * bits are transferred first, "BE" means that the most significant bits are
+ * transferred first, and "PADHI" and "PADLO" define which bits - low or high,
+ * in the incomplete high byte, are filled with padding bits.
+ *
+ * The bus formats are grouped by type, bus_width, bits per component, samples
+ * per pixel and order of subsamples. Numerical values are sorted using generic
+ * numerical sort order (8 thus comes before 10).
+ *
+ * As their value can't change when a new bus format is inserted in the
+ * enumeration, the bus formats are explicitly given a numerical value. The next
+ * free values for each category are listed below, update them when inserting
+ * new pixel codes.
+ */
+
+#define MEDIA_BUS_FMT_FIXED 0x0001
+
+/* RGB - next is 0x100e */
+#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_BE 0x1001
+#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE 0x1002
+#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_BE 0x1003
+#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE 0x1004
+#define MEDIA_BUS_FMT_BGR565_2X8_BE 0x1005
+#define MEDIA_BUS_FMT_BGR565_2X8_LE 0x1006
+#define MEDIA_BUS_FMT_RGB565_2X8_BE 0x1007
+#define MEDIA_BUS_FMT_RGB565_2X8_LE 0x1008
+#define MEDIA_BUS_FMT_RGB666_1X18 0x1009
+#define MEDIA_BUS_FMT_RGB888_1X24 0x100a
+#define MEDIA_BUS_FMT_RGB888_2X12_BE 0x100b
+#define MEDIA_BUS_FMT_RGB888_2X12_LE 0x100c
+#define MEDIA_BUS_FMT_ARGB8888_1X32 0x100d
+
+/* YUV (including grey) - next is 0x2024 */
+#define MEDIA_BUS_FMT_Y8_1X8 0x2001
+#define MEDIA_BUS_FMT_UV8_1X8 0x2015
+#define MEDIA_BUS_FMT_UYVY8_1_5X8 0x2002
+#define MEDIA_BUS_FMT_VYUY8_1_5X8 0x2003
+#define MEDIA_BUS_FMT_YUYV8_1_5X8 0x2004
+#define MEDIA_BUS_FMT_YVYU8_1_5X8 0x2005
+#define MEDIA_BUS_FMT_UYVY8_2X8 0x2006
+#define MEDIA_BUS_FMT_VYUY8_2X8 0x2007
+#define MEDIA_BUS_FMT_YUYV8_2X8 0x2008
+#define MEDIA_BUS_FMT_YVYU8_2X8 0x2009
+#define MEDIA_BUS_FMT_Y10_1X10 0x200a
+#define MEDIA_BUS_FMT_UYVY10_2X10 0x2018
+#define MEDIA_BUS_FMT_VYUY10_2X10 0x2019
+#define MEDIA_BUS_FMT_YUYV10_2X10 0x200b
+#define MEDIA_BUS_FMT_YVYU10_2X10 0x200c
+#define MEDIA_BUS_FMT_Y12_1X12 0x2013
+#define MEDIA_BUS_FMT_UYVY8_1X16 0x200f
+#define MEDIA_BUS_FMT_VYUY8_1X16 0x2010
+#define MEDIA_BUS_FMT_YUYV8_1X16 0x2011
+#define MEDIA_BUS_FMT_YVYU8_1X16 0x2012
+#define MEDIA_BUS_FMT_YDYUYDYV8_1X16 0x2014
+#define MEDIA_BUS_FMT_UYVY10_1X20 0x201a
+#define MEDIA_BUS_FMT_VYUY10_1X20 0x201b
+#define MEDIA_BUS_FMT_YUYV10_1X20 0x200d
+#define MEDIA_BUS_FMT_YVYU10_1X20 0x200e
+#define MEDIA_BUS_FMT_YUV10_1X30 0x2016
+#define MEDIA_BUS_FMT_AYUV8_1X32 0x2017
+#define MEDIA_BUS_FMT_UYVY12_2X12 0x201c
+#define MEDIA_BUS_FMT_VYUY12_2X12 0x201d
+#define MEDIA_BUS_FMT_YUYV12_2X12 0x201e
+#define MEDIA_BUS_FMT_YVYU12_2X12 0x201f
+#define MEDIA_BUS_FMT_UYVY12_1X24 0x2020
+#define MEDIA_BUS_FMT_VYUY12_1X24 0x2021
+#define MEDIA_BUS_FMT_YUYV12_1X24 0x2022
+#define MEDIA_BUS_FMT_YVYU12_1X24 0x2023
+
+/* Bayer - next is 0x3019 */
+#define MEDIA_BUS_FMT_SBGGR8_1X8 0x3001
+#define MEDIA_BUS_FMT_SGBRG8_1X8 0x3013
+#define MEDIA_BUS_FMT_SGRBG8_1X8 0x3002
+#define MEDIA_BUS_FMT_SRGGB8_1X8 0x3014
+#define MEDIA_BUS_FMT_SBGGR10_ALAW8_1X8 0x3015
+#define MEDIA_BUS_FMT_SGBRG10_ALAW8_1X8 0x3016
+#define MEDIA_BUS_FMT_SGRBG10_ALAW8_1X8 0x3017
+#define MEDIA_BUS_FMT_SRGGB10_ALAW8_1X8 0x3018
+#define MEDIA_BUS_FMT_SBGGR10_DPCM8_1X8 0x300b
+#define MEDIA_BUS_FMT_SGBRG10_DPCM8_1X8 0x300c
+#define MEDIA_BUS_FMT_SGRBG10_DPCM8_1X8 0x3009
+#define MEDIA_BUS_FMT_SRGGB10_DPCM8_1X8 0x300d
+#define MEDIA_BUS_FMT_SBGGR10_2X8_PADHI_BE 0x3003
+#define MEDIA_BUS_FMT_SBGGR10_2X8_PADHI_LE 0x3004
+#define MEDIA_BUS_FMT_SBGGR10_2X8_PADLO_BE 0x3005
+#define MEDIA_BUS_FMT_SBGGR10_2X8_PADLO_LE 0x3006
+#define MEDIA_BUS_FMT_SBGGR10_1X10 0x3007
+#define MEDIA_BUS_FMT_SGBRG10_1X10 0x300e
+#define MEDIA_BUS_FMT_SGRBG10_1X10 0x300a
+#define MEDIA_BUS_FMT_SRGGB10_1X10 0x300f
+#define MEDIA_BUS_FMT_SBGGR12_1X12 0x3008
+#define MEDIA_BUS_FMT_SGBRG12_1X12 0x3010
+#define MEDIA_BUS_FMT_SGRBG12_1X12 0x3011
+#define MEDIA_BUS_FMT_SRGGB12_1X12 0x3012
+
+/* JPEG compressed formats - next is 0x4002 */
+#define MEDIA_BUS_FMT_JPEG_1X8 0x4001
+
+/* Vendor specific formats - next is 0x5002 */
+
+/* S5C73M3 sensor specific interleaved UYVY and JPEG */
+#define MEDIA_BUS_FMT_S5C_UYVY_JPEG_1X8 0x5001
+
+/* HSV - next is 0x6002 */
+#define MEDIA_BUS_FMT_AHSV8888_1X32 0x6001
+
+#endif /* __LINUX_MEDIA_BUS_FORMAT_H */
diff --git a/include/linux/v4l2-controls.h b/include/linux/v4l2-controls.h
index 8b93021..661f119 100644
--- a/include/linux/v4l2-controls.h
+++ b/include/linux/v4l2-controls.h
@@ -746,6 +746,8 @@ enum v4l2_auto_focus_range {
V4L2_AUTO_FOCUS_RANGE_INFINITY = 3,
};
+#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32)
+#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33)
/* FM Modulator class control IDs */
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 87b83c3..ef4c72a 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -77,6 +77,7 @@
/* Four-character-code (FOURCC) */
#define v4l2_fourcc(a, b, c, d)\
((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24))
+#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1 << 31))
/*
* E N U M S
@@ -305,6 +306,8 @@ struct v4l2_pix_format {
#define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', '5') /* 16 XRGB-1-5-5-5 */
#define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 RGB-5-6-5 */
#define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', 'Q') /* 16 RGB-5-5-5 BE */
+#define V4L2_PIX_FMT_ARGB555X v4l2_fourcc_be('A', 'R', '1', '5') /* 16 ARGB-5-5-5 BE */
+#define V4L2_PIX_FMT_XRGB555X v4l2_fourcc_be('X', 'R', '1', '5') /* 16 XRGB-5-5-5 BE */
#define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R') /* 16 RGB-5-6-5 BE */
#define V4L2_PIX_FMT_BGR666 v4l2_fourcc('B', 'G', 'R', 'H') /* 18 BGR-6-6-6 */
#define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3') /* 24 BGR-8-8-8 */
diff --git a/utils/v4l2-ctl/vivid-tpg.c b/utils/v4l2-ctl/vivid-tpg.c
index 21e7f4e..cbcd625 100644
--- a/utils/v4l2-ctl/vivid-tpg.c
+++ b/utils/v4l2-ctl/vivid-tpg.c
@@ -183,7 +183,7 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc)
case V4L2_PIX_FMT_XBGR32:
case V4L2_PIX_FMT_ARGB32:
case V4L2_PIX_FMT_ABGR32:
- tpg->is_yuv = 0;
+ tpg->is_yuv = false;
break;
case V4L2_PIX_FMT_NV16M:
case V4L2_PIX_FMT_NV61M:
@@ -193,7 +193,7 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc)
case V4L2_PIX_FMT_UYVY:
case V4L2_PIX_FMT_YVYU:
case V4L2_PIX_FMT_VYUY:
- tpg->is_yuv = 1;
+ tpg->is_yuv = true;
break;
default:
return false;
@@ -249,7 +249,7 @@ void tpg_s_crop_compose(struct tpg_data *tpg, const struct v4l2_rect *crop,
}
void tpg_reset_source(struct tpg_data *tpg, unsigned width, unsigned height,
- enum v4l2_field field)
+ u32 field)
{
unsigned p;
diff --git a/utils/v4l2-ctl/vivid-tpg.h.patch b/utils/v4l2-ctl/vivid-tpg.h.patch
index f200203..6348c19 100644
--- a/utils/v4l2-ctl/vivid-tpg.h.patch
+++ b/utils/v4l2-ctl/vivid-tpg.h.patch
@@ -1,8 +1,8 @@
-diff --git b/utils/v4l2-ctl/vivid-tpg.h a/utils/v4l2-ctl/vivid-tpg.h
-index 51ef7d1..76c373a 100644
---- b/utils/v4l2-ctl/vivid-tpg.h
-+++ a/utils/v4l2-ctl/vivid-tpg.h
-@@ -20,13 +20,46 @@
+diff --git a/devel/v4l/patchwork//drivers/media/platform/vivid/vivid-tpg.h b/utils/v4l2-ctl/vivid-tpg.h
+index 8ef3e52ba3be..76c373a7b4f1 100644
+--- a/devel/v4l/patchwork//drivers/media/platform/vivid/vivid-tpg.h
++++ b/utils/v4l2-ctl/vivid-tpg.h
+@@ -20,14 +20,46 @@
#ifndef _VIVID_TPG_H_
#define _VIVID_TPG_H_
@@ -11,6 +11,7 @@ index 51ef7d1..76c373a 100644
-#include <linux/errno.h>
-#include <linux/random.h>
-#include <linux/slab.h>
+-#include <linux/vmalloc.h>
#include <linux/videodev2.h>
+#include <stdbool.h>

View file

@ -0,0 +1,126 @@
diff --git a/configure.ac b/configure.ac
index 069913d..26763f5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -233,8 +233,7 @@ AC_SUBST([libv4l1privdir], [$libdir/$with_libv4l1subdir])
AC_SUBST([libv4l2privdir], [$libdir/$with_libv4l2subdir])
AC_SUBST([libv4l2plugindir], [$libdir/$with_libv4l2subdir/plugins])
AC_SUBST([libv4lconvertprivdir], [$libdir/$with_libv4lconvertsubdir])
-AC_SUBST([keytablesystemdir], [$with_udevdir/rc_keymaps])
-AC_SUBST([keytableuserdir], [$sysconfdir/rc_keymaps])
+AC_SUBST([keytablesystemdir], [$sysconfdir/rc_keymaps])
AC_SUBST([udevrulesdir], [$with_udevdir/rules.d])
AC_SUBST([pkgconfigdir], [$libdir/pkgconfig])
@@ -244,7 +243,6 @@ AC_DEFINE_DIR([LIBV4L2_PRIV_DIR], [libv4l2privdir], [libv4l2 private lib directo
AC_DEFINE_DIR([LIBV4L2_PLUGIN_DIR], [libv4l2plugindir], [libv4l2 plugin directory])
AC_DEFINE_DIR([LIBV4LCONVERT_PRIV_DIR], [libv4lconvertprivdir], [libv4lconvert private lib directory])
AC_DEFINE_DIR([IR_KEYTABLE_SYSTEM_DIR], [keytablesystemdir], [ir-keytable preinstalled tables directory])
-AC_DEFINE_DIR([IR_KEYTABLE_USER_DIR], [keytableuserdir], [ir-keytable user defined tables directory])
# options
diff --git a/utils/keytable/Makefile.am b/utils/keytable/Makefile.am
index 3e66eba..9611591 100644
--- a/utils/keytable/Makefile.am
+++ b/utils/keytable/Makefile.am
@@ -1,7 +1,7 @@
bin_PROGRAMS = ir-keytable
man_MANS = ir-keytable.1
sysconf_DATA = rc_maps.cfg
-keytablesystem_DATA = $(srcdir)/rc_keymaps/*
+sysconf_DATA = $(srcdir)/rc_keymaps/*
udevrules_DATA = 70-infrared.rules
ir_keytable_SOURCES = keytable.c parse.h
@@ -9,10 +9,6 @@ ir_keytable_LDFLAGS = $(ARGP_LIBS)
EXTRA_DIST = 70-infrared.rules rc_keymaps gen_keytables.pl ir-keytable.1 rc_maps.cfg
-# custom target
-install-data-local:
- $(install_sh) -d "$(DESTDIR)$(keytableuserdir)"
-
sync-with-kernel:
@if [ ! -f $(KERNEL_DIR)/usr/include/linux/input.h ]; then \
echo "Error you must set KERNEL_DIR to point to an extracted kernel source dir"; \
diff --git a/utils/keytable/keytable.c b/utils/keytable/keytable.c
index 1f42316..90faf99 100644
--- a/utils/keytable/keytable.c
+++ b/utils/keytable/keytable.c
@@ -198,6 +198,7 @@ static error_t parse_keyfile(char *fname, char **table)
fin = fopen(fname, "r");
if (!fin) {
+ perror("opening keycode file");
return errno;
}
@@ -1610,31 +1611,15 @@ int main(int argc, char *argv[])
cur->fname);
if (cur->fname[0] == '/' || ((cur->fname[0] == '.') && strchr(cur->fname, '/'))) {
fname = cur->fname;
- rc = parse_keyfile(fname, &name);
- if (rc < 0) {
- fprintf(stderr, "Can't load %s table\n", fname);
- return -1;
- }
} else {
- fname = malloc(strlen(cur->fname) + strlen(IR_KEYTABLE_USER_DIR) + 2);
- strcpy(fname, IR_KEYTABLE_USER_DIR);
+ fname = malloc(strlen(cur->fname) + strlen(IR_KEYTABLE_SYSTEM_DIR) + 2);
+ strcpy(fname, IR_KEYTABLE_SYSTEM_DIR);
strcat(fname, "/");
strcat(fname, cur->fname);
- rc = parse_keyfile(fname, &name);
- if (rc != 0) {
- fname = malloc(strlen(cur->fname) + strlen(IR_KEYTABLE_SYSTEM_DIR) + 2);
- strcpy(fname, IR_KEYTABLE_SYSTEM_DIR);
- strcat(fname, "/");
- strcat(fname, cur->fname);
- rc = parse_keyfile(fname, &name);
- }
- if (rc != 0) {
- fprintf(stderr, "Can't load %s table from %s or %s\n", cur->fname, IR_KEYTABLE_USER_DIR, IR_KEYTABLE_SYSTEM_DIR);
- return -1;
- }
}
- if (!keys.next) {
- fprintf(stderr, "Empty table %s\n", fname);
+ rc = parse_keyfile(fname, &name);
+ if (rc < 0 || !keys.next) {
+ fprintf(stderr, "Can't load %s table or empty table\n", fname);
return -1;
}
clear = 1;
diff --git a/configure b/configure
index c577fbfd4379..672c8f8681eb 100755
--- a/configure
+++ b/configure
@@ -657,7 +657,6 @@ LIBV4L2_PRIV_DIR
LIBV4L1_PRIV_DIR
pkgconfigdir
udevrulesdir
-keytableuserdir
keytablesystemdir
libv4lconvertprivdir
libv4l2plugindir
@@ -19701,9 +19700,7 @@ libv4l2plugindir=$libdir/$with_libv4l2subdir/plugins
libv4lconvertprivdir=$libdir/$with_libv4lconvertsubdir
-keytablesystemdir=$with_udevdir/rc_keymaps
-
-keytableuserdir=$sysconfdir/rc_keymaps
+keytablesystemdir=$sysconfdir/rc_keymaps
udevrulesdir=$with_udevdir/rules.d
@@ -19805,7 +19802,6 @@ _ACEOF
exec_prefix_NONE=
test "x$prefix" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix
test "x$exec_prefix" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix
- eval ac_define_dir="\"$keytableuserdir\""
eval ac_define_dir="\"$ac_define_dir\""
IR_KEYTABLE_USER_DIR="$ac_define_dir"

164
0003-add-media-header.patch Normal file
View file

@ -0,0 +1,164 @@
commit 6d9ab872c7a936a3042b3872cf10560b6b2950e4
Author: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Date: Mon Nov 24 11:13:01 2014 -0200
sync-with-kernel: add include/linux/media.h
Without this, build breaks when compiling a package for RHEL6,
with uses an older media stack.
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
diff --git a/Makefile.am b/Makefile.am
index 758d355..68c61a0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -37,6 +37,7 @@ sync-with-kernel:
cp -a $(KERNEL_DIR)/usr/include/linux/v4l2-subdev.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/v4l2-mediabus.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/media-bus-format.h $(top_srcdir)/include/linux
+ cp -a $(KERNEL_DIR)/usr/include/linux/media.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/ivtv.h $(top_srcdir)/include/linux
cp -a $(KERNEL_DIR)/usr/include/linux/dvb/frontend.h $(top_srcdir)/include/linux/dvb
cp -a $(KERNEL_DIR)/usr/include/linux/dvb/dmx.h $(top_srcdir)/include/linux/dvb
diff --git a/include/linux/media.h b/include/linux/media.h
new file mode 100644
index 0000000..87a0e10
--- /dev/null
+++ b/include/linux/media.h
@@ -0,0 +1,135 @@
+/*
+ * Multimedia device API
+ *
+ * Copyright (C) 2010 Nokia Corporation
+ *
+ * Contacts: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+ * Sakari Ailus <sakari.ailus@iki.fi>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef __LINUX_MEDIA_H
+#define __LINUX_MEDIA_H
+
+#include <linux/ioctl.h>
+#include <linux/types.h>
+#include <linux/version.h>
+
+#define MEDIA_API_VERSION KERNEL_VERSION(0, 1, 0)
+
+struct media_device_info {
+ char driver[16];
+ char model[32];
+ char serial[40];
+ char bus_info[32];
+ __u32 media_version;
+ __u32 hw_revision;
+ __u32 driver_version;
+ __u32 reserved[31];
+};
+
+#define MEDIA_ENT_ID_FLAG_NEXT (1 << 31)
+
+#define MEDIA_ENT_TYPE_SHIFT 16
+#define MEDIA_ENT_TYPE_MASK 0x00ff0000
+#define MEDIA_ENT_SUBTYPE_MASK 0x0000ffff
+
+#define MEDIA_ENT_T_DEVNODE (1 << MEDIA_ENT_TYPE_SHIFT)
+#define MEDIA_ENT_T_DEVNODE_V4L (MEDIA_ENT_T_DEVNODE + 1)
+#define MEDIA_ENT_T_DEVNODE_FB (MEDIA_ENT_T_DEVNODE + 2)
+#define MEDIA_ENT_T_DEVNODE_ALSA (MEDIA_ENT_T_DEVNODE + 3)
+#define MEDIA_ENT_T_DEVNODE_DVB (MEDIA_ENT_T_DEVNODE + 4)
+
+#define MEDIA_ENT_T_V4L2_SUBDEV (2 << MEDIA_ENT_TYPE_SHIFT)
+#define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR (MEDIA_ENT_T_V4L2_SUBDEV + 1)
+#define MEDIA_ENT_T_V4L2_SUBDEV_FLASH (MEDIA_ENT_T_V4L2_SUBDEV + 2)
+#define MEDIA_ENT_T_V4L2_SUBDEV_LENS (MEDIA_ENT_T_V4L2_SUBDEV + 3)
+/* A converter of analogue video to its digital representation. */
+#define MEDIA_ENT_T_V4L2_SUBDEV_DECODER (MEDIA_ENT_T_V4L2_SUBDEV + 4)
+
+#define MEDIA_ENT_FL_DEFAULT (1 << 0)
+
+struct media_entity_desc {
+ __u32 id;
+ char name[32];
+ __u32 type;
+ __u32 revision;
+ __u32 flags;
+ __u32 group_id;
+ __u16 pads;
+ __u16 links;
+
+ __u32 reserved[4];
+
+ union {
+ /* Node specifications */
+ struct {
+ __u32 major;
+ __u32 minor;
+ } v4l;
+ struct {
+ __u32 major;
+ __u32 minor;
+ } fb;
+ struct {
+ __u32 card;
+ __u32 device;
+ __u32 subdevice;
+ } alsa;
+ int dvb;
+
+ /* Sub-device specifications */
+ /* Nothing needed yet */
+ __u8 raw[184];
+ };
+};
+
+#define MEDIA_PAD_FL_SINK (1 << 0)
+#define MEDIA_PAD_FL_SOURCE (1 << 1)
+#define MEDIA_PAD_FL_MUST_CONNECT (1 << 2)
+
+struct media_pad_desc {
+ __u32 entity; /* entity ID */
+ __u16 index; /* pad index */
+ __u32 flags; /* pad flags */
+ __u32 reserved[2];
+};
+
+#define MEDIA_LNK_FL_ENABLED (1 << 0)
+#define MEDIA_LNK_FL_IMMUTABLE (1 << 1)
+#define MEDIA_LNK_FL_DYNAMIC (1 << 2)
+
+struct media_link_desc {
+ struct media_pad_desc source;
+ struct media_pad_desc sink;
+ __u32 flags;
+ __u32 reserved[2];
+};
+
+struct media_links_enum {
+ __u32 entity;
+ /* Should have enough room for pads elements */
+ struct media_pad_desc *pads;
+ /* Should have enough room for links elements */
+ struct media_link_desc *links;
+ __u32 reserved[4];
+};
+
+#define MEDIA_IOC_DEVICE_INFO _IOWR('|', 0x00, struct media_device_info)
+#define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc)
+#define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum)
+#define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc)
+
+#endif /* __LINUX_MEDIA_H */

View file

@ -0,0 +1,59 @@
diff --git a/configure.ac b/configure.ac
index 7411d92..4375f39 100644
--- a/configure.ac
+++ b/configure.ac
@@ -148,7 +148,7 @@ else
AC_MSG_WARN(Qt4 or higher is not available)
fi
-PKG_CHECK_MODULES(QTGL, [QtOpenGL >= 4.4 gl], [qt_pkgconfig_gl=true], [qt_pkgconfig_gl=false])
+PKG_CHECK_MODULES(QTGL, [QtOpenGL >= 4.8 gl], [qt_pkgconfig_gl=true], [qt_pkgconfig_gl=false])
if test "x$qt_pkgconfig_gl" = "xtrue"; then
AC_DEFINE([HAVE_QTGL], [1], [qt has opengl support])
else
--- a/configure
+++ b/configure
@@ -18190,12 +18190,12 @@ if test -n "$QTGL_CFLAGS"; then
pkg_cv_QTGL_CFLAGS="$QTGL_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"QtOpenGL >= 4.4 gl\""; } >&5
- ($PKG_CONFIG --exists --print-errors "QtOpenGL >= 4.4 gl") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"QtOpenGL >= 4.8 gl\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "QtOpenGL >= 4.8 gl") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_QTGL_CFLAGS=`$PKG_CONFIG --cflags "QtOpenGL >= 4.4 gl" 2>/dev/null`
+ pkg_cv_QTGL_CFLAGS=`$PKG_CONFIG --cflags "QtOpenGL >= 4.8 gl" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18207,12 +18207,12 @@ if test -n "$QTGL_LIBS"; then
pkg_cv_QTGL_LIBS="$QTGL_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"QtOpenGL >= 4.4 gl\""; } >&5
- ($PKG_CONFIG --exists --print-errors "QtOpenGL >= 4.4 gl") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"QtOpenGL >= 4.8 gl\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "QtOpenGL >= 4.8 gl") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_QTGL_LIBS=`$PKG_CONFIG --libs "QtOpenGL >= 4.4 gl" 2>/dev/null`
+ pkg_cv_QTGL_LIBS=`$PKG_CONFIG --libs "QtOpenGL >= 4.8 gl" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -18233,9 +18233,9 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- QTGL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "QtOpenGL >= 4.4 gl" 2>&1`
+ QTGL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "QtOpenGL >= 4.8 gl" 2>&1`
else
- QTGL_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "QtOpenGL >= 4.4 gl" 2>&1`
+ QTGL_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "QtOpenGL >= 4.8 gl" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$QTGL_PKG_ERRORS" >&5

View file

@ -1,13 +0,0 @@
diff --git v4l-utils-1.26.1/utils/v4l2-dbg/meson.build~ v4l-utils-1.26.1/utils/v4l2-dbg/meson.build
index c23bf8f351..bfbc10c616 100644
--- v4l-utils-1.26.1/utils/v4l2-dbg/meson.build~
+++ v4l-utils-1.26.1/utils/v4l2-dbg/meson.build
@@ -13,7 +13,7 @@ v4l2_dbg_sources = files(
v4l2_dbg = executable('v4l2-dbg',
v4l2_dbg_sources,
install : true,
- install_dir : 'sbin',
+ install_dir : get_option('sbindir'),
include_directories : [
v4l2_utils_incdir,
utils_common_incdir,

View file

@ -1 +1 @@
SHA512 (v4l-utils-1.32.0.tar.xz) = 5bf24c28ec66a7ac1a0c9ee976521d825d4c2f8abbbeb59c7ac55e89db10dde6ebb643d238d217d636d79fda363244558fee1effe8c5e8c573c1a3e957fe391f
9cb3c178f937954e65bf30920af433ef v4l-utils-1.6.2.tar.bz2

View file

@ -1,142 +1,59 @@
%bcond qt %[%{undefined rhel} || 0%{?rhel} < 10]
# Currently broken without DVB due to a bunch of random bits
# being built/installed even though they're DVB specific
%define with_dvb 1
Name: v4l-utils
Version: 1.32.0
Release: 4%{?dist}
Version: 1.6.2
Release: 3%{?dist}
Summary: Utilities for video4linux and DVB devices
# libdvbv5, dvbv5 utils, ir-keytable are GPL-2.0-only
# e.g. utils/cec-follower/cec-follower.cpp is (GPL-2.0-only OR BSD-3-Clause)
# utils/qvidcap/capture.cpp, paint.cpp are LicenseRef-Fedora-Public-Domain
# utils/v4l2-sysfs-path/v4l2-sysfs-path.c is HPND-sell-variant
License: GPL-2.0-or-later AND GPL-2.0-only AND (GPL-2.0-only OR BSD-3-Clause) AND LicenseRef-Fedora-Public-Domain AND HPND-sell-variant
Group: Applications/System
# libdvbv5, dvbv5 utils, ir-keytable and v4l2-sysfs-path are GPLv2 only
License: GPLv2+ and GPLv2
URL: http://www.linuxtv.org/downloads/v4l-utils/
Source0: %{url}/v4l-utils-%{version}.tar.xz
# TODO: submit upstream
Patch0: sbin-location.diff
BuildRequires: alsa-lib-devel
BuildRequires: gettext
BuildRequires: json-c-devel
BuildRequires: kernel-headers
BuildRequires: libjpeg-devel
BuildRequires: meson >= 0.56
BuildRequires: perl-interpreter
%if %{with qt}
BuildRequires: desktop-file-utils
%if 0%{?fedora} < 41 || 0%{?rhel}
BuildRequires: qt5-qtbase-devel
%else
BuildRequires: qt6-qtbase-devel
BuildRequires: qt6-qt5compat-devel
%endif
%endif
BuildRequires: systemd-devel
# For /usr/share/pkgconfig/udev.pc
BuildRequires: systemd
# BPF decoder dependencies
BuildRequires: clang
BuildRequires: elfutils-libelf-devel
BuildRequires: libbpf-devel
# For /lib/udev/rules.d ownership
Requires: systemd-udev
Requires: libv4l%{?_isa} = %{version}-%{release}
Provides: edid-decode = %{version}-%{release}
Obsoletes: edid-decode < 1
Source0: http://linuxtv.org/downloads/v4l-utils/v4l-utils-%{version}.tar.bz2
Patch1: 0001-media-headers-sync.patch
Patch2: 0002-use-etc-for-keymaps.patch
Patch3: 0003-add-media-header.patch
Patch4: 0004-fix-qtgl-detection.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libjpeg-devel qt4-devel kernel-headers desktop-file-utils
BuildRequires: alsa-lib-devel doxygen
BuildRequires: autoconf
# For /etc/udev/rules.d ownership
Requires: udev
%description
v4l-utils is a collection of various video4linux (V4L), RC core and DVB
utilities. The main v4l-utils package contains cx18-ctl, ivtv-ctl, v4l2-ctl
and v4l2-sysfs-path.
%package -n libv4l
Summary: Collection of video4linux support libraries
# Some of the decompression helpers are GPL-2.0-or-later, the rest is LGPL-2.1-or-later
# lib/libv4lconvert/jidctflt.c and jpeg_memsrcdest.c are IJG-short
# lib/libv4lconvert/helper-funcs.h and libv4lsyscall-priv.h are BSD-2-Clause
License: LGPL-2.1-or-later AND GPL-2.0-or-later AND IJG-short AND BSD-2-Clause
URL: http://hansdegoede.livejournal.com/3636.html
%description -n libv4l
libv4l is a collection of libraries which adds a thin abstraction layer on
top of video4linux2 devices. The purpose of this (thin) layer is to make it
easy for application writers to support a wide variety of devices without
having to write separate code for different devices in the same class. libv4l
consists of 3 different libraries: libv4lconvert, libv4l1 and libv4l2.
libv4lconvert offers functions to convert from any (known) pixel-format
to V4l2_PIX_FMT_BGR24 or V4l2_PIX_FMT_YUV420.
libv4l1 offers the (deprecated) v4l1 API on top of v4l2 devices, independent
of the drivers for those devices supporting v4l1 compatibility (which many
v4l2 drivers do not).
libv4l2 offers the v4l2 API on top of v4l2 devices, while adding for the
application transparent libv4lconvert conversion where necessary.
%package -n libv4l-devel
Summary: Development files for libv4l
License: LGPL-2.1-or-later AND GPL-2.0-or-later AND IJG-short AND BSD-2-Clause
URL: http://hansdegoede.livejournal.com/3636.html
Requires: libv4l%{?_isa} = %{version}-%{release}
%description -n libv4l-devel
The libv4l-devel package contains libraries and header files for
developing applications that use libv4l.
v4l-utils is a collection of various video4linux (V4L) and DVB utilities. The
main v4l-utils package contains cx18-ctl, ir-keytable, ivtv-ctl, v4l2-ctl and
v4l2-sysfs-path.
%package devel-tools
Summary: Utilities for v4l2 / DVB driver development and debugging
License: GPL-2.0-or-later AND GPL-2.0-only
Requires: libv4l%{?_isa} = %{version}-%{release}
# decode_tm6000 is GPLv2 only
License: GPLv2+ and GPLv2
%description devel-tools
Utilities for v4l2 driver authors: v4l2-compliance and
Utilities for v4l2 / DVB driver authors: decode_tm6000, v4l2-compliance and
v4l2-dbg.
%if %{with qt}
%package -n qv4l2
Summary: QT v4l2 test control and streaming test application
# utils/qv4l2/qv4l2.svg is CC-BY-SA-3.0
License: GPL-2.0-or-later AND CC-BY-SA-3.0
Requires: libv4l%{?_isa} = %{version}-%{release}
License: GPLv2+
%description -n qv4l2
QT v4l2 test control and streaming test application.
%endif
%if %{with dvb}
%package -n libdvbv5
Summary: Libraries to control, scan and zap on Digital TV channels
# /lib/include/libdvbv5/dvb-frontend.h is LGPL-2.1-or-later WITH Linux-syscall-note
License: LGPL-2.1-or-later AND LGPL-2.1-or-later WITH Linux-syscall-note
Group: Development/Libraries
License: GPLv2
%description -n libdvbv5
Libraries to control, scan and zap on Digital TV channels
%package -n libdvbv5-gconv
Summary: Gconv files with the charsets For Digital TV.
License: LGPL-2.1-or-later
%description -n libdvbv5-gconv
Some digital TV standards define their own charsets. Add library
support for them: EN 300 468 and ARIB STD-B24
%package -n libdvbv5-devel
Summary: Development files for libdvbv5
License: LGPL-2.1-or-later AND LGPL-2.1-or-later WITH Linux-syscall-note
Group: Development/Libraries
License: GPLv2
Requires: libdvbv5%{?_isa} = %{version}-%{release}
%description -n libdvbv5-devel
@ -144,419 +61,101 @@ The libdvbv5-devel package contains libraries and header
files for developing applications that use libdvbv5.
%package -n dvb-tools
Summary: Utilities for DVB driver
License: GPL-2.0-or-later AND GPL-2.0-only
Requires: libdvbv5%{?_isa} = %{version}-%{release}
Requires: libv4l%{?_isa} = %{version}-%{release}
Requires: v4l-utils%{?_isa} = %{version}-%{release}
%description -n dvb-tools
Utilities and tools for DVB receivers.
%endif
%package -n rc-tools
Summary: Utilities for RC core
License: GPL-2.0-or-later AND GPL-2.0-only
Requires: v4l-utils%{?_isa} = %{version}-%{release}
%description -n rc-tools
Utilities for Infrared receivers and transmitters using RC core.
%prep
%autosetup -p1
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%build
%meson -Dbpf=auto \
-Ddoxygen-doc=disabled -Ddoxygen-man=false -Ddoxygen-html=false \
%{!?with_dvb:-Dlibdvbv5=disabled} \
%{!?with_qt:-Dqv4l2=disabled -Dqvidcap=disabled}
%configure --disable-shared --enable-libdvbv5 --enable-doxygen-man
# Don't use rpath!
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
make doxygen-run
%meson_build
%install
%meson_install
find $RPM_BUILD_ROOT -name '*.la' -delete
# Driver removed from upstream
rm -f $RPM_BUILD_ROOT%{_bindir}/decode_tm6000
rm -f $RPM_BUILD_ROOT%{_libdir}/{v4l1compat.so,v4l2convert.so}
mkdir $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules.d
mv $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules.d/libdvbv5.conf
%if %{with qt}
%make_install
rm $RPM_BUILD_ROOT/usr/include/libv4l*.h $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/libv4l*.pc $RPM_BUILD_ROOT/%{_libdir}/libv4l*.a
rm -r $RPM_BUILD_ROOT/%{_libdir}/libv4l/
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man3/
cp -arv %{_builddir}/%{name}-%{version}/doxygen-doc/man/man3 $RPM_BUILD_ROOT%{_mandir}/
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/qv4l2.desktop
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/qvidcap.desktop
%endif
%find_lang %{name}
%find_lang libdvbv5
%post -n libdvbv5 -p /sbin/ldconfig
%postun -n libdvbv5 -p /sbin/ldconfig
%post -n qv4l2
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
%postun -n qv4l2
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
%posttrans -n qv4l2
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%ldconfig_scriptlets -n libv4l
%ldconfig_scriptlets -n libdvbv5
%files -f %{name}.lang
%doc README.md
%{_bindir}/cec-ctl
%{_bindir}/cec-follower
%{_bindir}/edid-decode
%files
%doc README
%dir %{_sysconfdir}/rc_keymaps
%config(noreplace) %{_sysconfdir}/rc_keymaps/*
%config(noreplace) %{_sysconfdir}/rc_maps.cfg
%config(noreplace) /lib/udev/rules.d/70-infrared.rules
%{_bindir}/cx18-ctl
%{_bindir}/dvb*
%{_bindir}/ir-keytable
%{_bindir}/ivtv-ctl
%{_bindir}/media-ctl
%{_bindir}/rds-ctl
%{_bindir}/v4l2-ctl
%{_bindir}/v4l2-sysfs-path
%{_bindir}/v4l2-tracer
%{_mandir}/man1/cec-ctl*.1*
%{_mandir}/man1/cec-follower*.1*
%{_mandir}/man1/edid-decode*.1*
%{_mandir}/man1/v4l*.1*
%exclude %{_mandir}/man1/v4l2-compliance.1*
%{_mandir}/man1/*.1*
%files devel-tools
%doc README.md
%{_bindir}/cec-compliance
%doc README
%{_bindir}/decode_tm6000
%{_bindir}/v4l2-compliance
%{_mandir}/man1/cec-compliance.1*
%{_mandir}/man1/v4l2-compliance.1*
%{_sbindir}/v4l2-dbg
%files -n libv4l
%license COPYING.libv4l COPYING
%doc README.libv4l
%dir %{_libdir}/libv4l
%{_libdir}/libv4l/v4l*
%{_libdir}/libv4l/plugins
%{_libdir}/libv4l*.so.*
%files -n libv4l-devel
%doc README.lib-multi-threading ChangeLog TODO
%{_includedir}/libv4l*.h
%{_libdir}/libv4l*.so
%{_libdir}/libv4l/ov*
%{_libdir}/libv4l/libv4l2tracer.so
%{_libdir}/pkgconfig/libv4l*.pc
%if %{with qt}
%files -n qv4l2
%doc README.md
%doc README
%{_bindir}/qv4l2
%{_bindir}/qvidcap
%{_datadir}/applications/qv4l2.desktop
%{_datadir}/applications/qvidcap.desktop
%{_datadir}/icons/hicolor/*/apps/qv4l2.*
%{_datadir}/icons/hicolor/*/apps/qvidcap.*
%{_mandir}/man1/qv4l2.1*
%{_mandir}/man1/qvidcap.1*
%endif
%if %{with dvb}
%files -n libdvbv5 -f libdvbv5.lang
%license COPYING.libdvbv5 COPYING
%doc lib/libdvbv5/README
%{_libdir}/libdvbv5*.so.*
%files -n libdvbv5-gconv
%{_libdir}/gconv/*.so
%{_libdir}/gconv/gconv-modules.d/libdvbv5.conf
%files -n libdvbv5
%doc COPYING ChangeLog lib/libdvbv5/README
%{_libdir}/libdvbv5*
%files -n libdvbv5-devel
%{_includedir}/libdvbv5/*.h
%{_libdir}/libdvbv5*.so
%{_libdir}/pkgconfig/libdvbv5*.pc
%files -n dvb-tools
%{_bindir}/cx18-ctl
%{_bindir}/dvb*
%{_bindir}/ivtv-ctl
%{_mandir}/man1/dvb*.1*
%files -n rc-tools
%dir %{_sysconfdir}/rc_keymaps
%config(noreplace) %{_sysconfdir}/rc_maps.cfg
%{_udevrulesdir}/70-infrared.rules
%{_udevrulesdir}/../rc_keymaps/*
%{_bindir}/ir-ctl
%{_bindir}/ir-keytable
%{_mandir}/man1/ir*.1*
%{_mandir}/man5/rc_keymap*.5*
%endif
%{_mandir}/man3/*.3*
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1.32.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Wed Dec 10 2014 Mauro Carvalho Chehab <mchehab@osg.samsung.com> - 1.6.2-3
- Remove libv4l from packaging, to avoid override RHEL6 one
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1.32.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Tue Jan 13 2026 Yaakov Selkowitz <yselkowi@redhat.com> - 1.32.0-2
- Disable doxygen manpages
* Mon Oct 06 2025 Peter Robinson <pbrobinson@fedoraproject.org> - 1.32.0-1
- Update to 1.32.0
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.30.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sat Jun 7 2025 Sean Young <sean@mes.org> - 1.30.1-3
- Move rc-tools into separate package so they can be replaced with new tools in the future.
* Fri May 02 2025 Peter Robinson <pbrobinson@fedoraproject.org> - 1.30.1-2
- Fix obsolete of edid-decode
* Thu May 1 2025 Yanko Kaneti <yaneti@decelra.com> - 1.30.1-1
- Update to 1.30.1
- Provides and obsoletes edid-decode which has moved to v4l-utils upstream
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.28.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Jan 12 2025 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.28.1-2
- Rebuilt for the bin-sbin merge (2nd attempt)
* Thu Jul 25 2024 Peter Robinson <pbrobinson@fedoraproject.org> - 1.28.1-1
- Update to 1.28.1
- Build f41+ with QT6
* Mon Jul 22 2024 Peter Robinson <pbrobinson@fedoraproject.org> - 1.28.0-1
- Update to 1.28.0
- spec file cleanups, fixes, minor reorg
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.26.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jul 09 2024 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.26.1-5
- Rebuilt for the bin-sbin merge
* Wed Apr 24 2024 Peter Robinson <pbrobinson@fedoraproject.org> - 1.26.1-4
- Fix location of gconv conflicts
* Tue Apr 23 2024 Peter Robinson <pbrobinson@fedoraproject.org> - 1.26.1-3
- Split dvb tools to it's own sub package
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.26.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Dec 13 2023 Peter Robinson <pbrobinson@fedoraproject.org> - 1.26.1-1
- Update to 1.26.1
* Mon Dec 04 2023 Peter Robinson <pbrobinson@fedoraproject.org> - 1.26.0-1
- Update to 1.26.0
* Wed Aug 16 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 1.25.0-4
- Disable qv4l2 in RHEL 10 builds
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.25.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon Mar 20 2023 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 1.25.0-1
- Updated to latest development branch
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sun Oct 23 2022 Hans de Goede <hdegoede@redhat.com> - 1.22.1-4
- Fix libv4lconvert issues when stride > width (with some formats)
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Dec 08 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 1.22.1-1
- Update to 1.22.1
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Aug 18 2020 Jeff Law <law@redhat.com> - 1.20.0-2
- Force C++14 as this code is not C++17 ready
* Wed Aug 12 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 1.20.0-1
- Update to 1.20.0
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Feb 25 2020 Than Ngo <than@redhat.com> - 1.18.0-4
- Fixed FTBFS
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Sep 22 2019 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 1.18.0-1
- Updated to latest stable release
* Mon Sep 02 2019 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 1.16.7-1
- Updated to new fix release with NIT parsing fix
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed May 1 2019 Peter Robinson <pbrobinson@fedoraproject.org> 1.16.5-3
- The actual fix for libdvbv5 (rhbz 1695023)
* Tue Apr 16 2019 Peter Robinson <pbrobinson@fedoraproject.org> 1.16.5-2
- Upstream fix for libdvbv5 (rhbz 1695023)
* Sun Mar 31 2019 Peter Robinson <pbrobinson@fedoraproject.org> 1.16.5-1
- New upstream release 1.16.5
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Dec 17 2018 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 1.6.3-1
- Updated to new fix release, with should solve BPF protocol packaging issues
* Thu Nov 22 2018 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 1.6.2-2
- Add dependencies needed to build BPF code
* Mon Nov 19 2018 Peter Robinson <pbrobinson@fedoraproject.org> 1.16.2-1
- New upstream release 1.16.2
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sun Apr 29 2018 Peter Robinson <pbrobinson@fedoraproject.org> 1.14.2-2
- Add sys/sysmacros.h include fix patch
* Sun Apr 29 2018 Peter Robinson <pbrobinson@fedoraproject.org> 1.14.2-1
- New upstream release 1.14.2
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.5-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Jan 18 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.12.5-6
- Remove obsolete scriptlets
* Thu Nov 02 2017 Hans de Goede <hdegoede@redhat.com> - 1.12.5-5
- Fix libv4lconvert failing on some hardware (rhbz#1508706)
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
* Fri May 12 2017 Hans de Goede <hdegoede@redhat.com> - 1.12.5-1
- New upstream bugfix release 1.12.5
* Mon May 8 2017 Hans de Goede <hdegoede@redhat.com> - 1.12.4-1
- New upstream release 1.12.4
* Sun Mar 12 2017 Peter Robinson <pbrobinson@fedoraproject.org> 1.12.3-1
- New upstream release 1.12.3
* Sun Feb 12 2017 Peter Robinson <pbrobinson@fedoraproject.org> 1.12.2-1
- New upstream release 1.12.2
- Add new CEC utils
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.10.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Dec 15 2016 Hans de Goede <hdegoede@redhat.com> - 1.10.1-1
- New upstream release 1.10.1
- Fix FTBFS (rhbz#1402087)
* Tue Mar 1 2016 Hans de Goede <hdegoede@redhat.com> - 1.10.0-2
- Update upside down table to apply to PEGATRON laptops (rhbz#1311545)
* Wed Feb 24 2016 Hans de Goede <hdegoede@redhat.com> - 1.10.0-1
- Upgrade to new upstream release 1.10.0
- Use qt5 instead of qt4 for qv4l2
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Oct 12 2015 Gregor Jasny <gjasny@googlemail.com> - 1.8.1-1
- Upgrade to version 1.8.1
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.6.2-2
- Rebuilt for GCC 5 C++11 ABI change
* Mon Nov 24 2014 Mauro Carvalho Chehab <mchehab@osg.samsung.com> - 1.6.2-2
- Enable qv4l2 package
* Sat Nov 22 2014 Mauro Carvalho Chehab <mchehab@osg.samsung.com> - 1.6.2-1
- Update to version 1.6.2 with contains several bugfixes
* Thu Nov 20 2014 Hans de Goede <hdegoede@redhat.com> - 1.6.0-2
- Fix crash when decoding 1920x1080 jpeg to YUV420
* Sun Oct 05 2014 Mauro Carvalho Chehab - 1.6.0-1
- Upgrade to version 1.6.0
* Mon Sep 08 2014 Mauro Carvalho Chehab - 1.4.0-1
- Upgrade to version 1.4.0
* Fri Aug 22 2014 Mauro Carvalho Chehab - 1.2.1-3
- Add ALSA support on qv4l2 and fix a couple issues at spec file
* Thu Aug 21 2014 Mauro Carvalho Chehab - 1.2.1-2
- Update to version 1.2.1 and add package for libdvbv5
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sat Aug 3 2013 Hans de Goede <hdegoede@redhat.com> - 1.0.0-1
- New upstream release 1.0.0 final
- Drop libdvb5 (made private upstream for now)
* Fri Jun 14 2013 Hans de Goede <hdegoede@redhat.com> - 0.9.5-2
- Add a few libv4l2rds patches from upstream, which bring libv4l2rds to its
final API / ABI, so that apps build against it won't need a rebuild in the
future
* Sun Jun 9 2013 Hans de Goede <hdegoede@redhat.com> - 0.9.5-1
- New upstream release 0.9.5 (rhbz#970412)
- Modernize specfile a bit
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.8-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Jan 21 2013 Adam Tkac <atkac redhat com> - 0.8.8-5
- rebuild due to "jpeg8-ABI" feature drop
* Fri Dec 21 2012 Adam Tkac <atkac redhat com> - 0.8.8-4
- rebuild against new libjpeg
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jul 9 2012 Hans de Goede <hdegoede@redhat.com> - 0.8.8-2
- Cherry-pick 2 patches from upstream git fixing an exotic crash (rhbz#838279)
* Tue May 22 2012 Hans de Goede <hdegoede@redhat.com> - 0.8.8-1
- New upstream release 0.8.8
- Add patches from upstream git to improve Pixart JPEG decoding
- Add patch from upstream git to fix building with latest kernels (rhbz#823863)
* Mon Apr 9 2012 Hans de Goede <hdegoede@redhat.com> - 0.8.7-1
- New upstream release 0.8.7
- Fixes rhbz#807656
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Sun Jul 17 2011 Hans de Goede <hdegoede@redhat.com> 0.8.5-1
- New upstream release 0.8.5
- Fixes rhbz#711492
* Wed Jun 1 2011 Hans de Goede <hdegoede@redhat.com> 0.8.4-1
- New upstream release 0.8.4
* Fri Oct 7 2011 Mauro Carvalho Chehab <mchehab@redhat.com> 0.9.0.git5f24b816
- Based on git changeset 5f24b816, this version will allow adding a v4l-utils
package without compiling the libv4l. This avoids a conflict with the
existing libv4l package that is part of the RHEL6 repositories.
* Sat Mar 12 2011 Hans de Goede <hdegoede@redhat.com> 0.8.3-2
- Add a .desktop file for qv4l2