Update v4l_compat, libv4l and v4l-utils to 1.20.0

- Regenerate patches.
- Fetch all sources from GitHub.
- Update package descriptions, WWW links.

Approved by:	pi (implicit)
This commit is contained in:
Hans Petter Selasky
2020-12-02 21:07:42 +00:00
parent 1e1089686d
commit e67df875ae
17 changed files with 56 additions and 575 deletions

View File

@@ -3,14 +3,8 @@
# Check v4l_compat and v4l-utils slave ports
PORTNAME?= libv4l
PORTVERSION= 1.18.0
PORTVERSION= 1.20.0
CATEGORIES= multimedia
MASTER_SITES= http://linuxtv.org/downloads/v4l-utils/:master \
http://www.selasky.org/hans_petter/distfiles/:local \
http://home.selasky.org/distfiles/:local
WEBCAMDVERSION= 5.7.1.1
DISTFILES= v4l-utils-${PORTVERSION}.tar.bz2:master \
webcamd-${WEBCAMDVERSION}.tar.bz2:local
MAINTAINER= multimedia@FreeBSD.org
COMMENT?= Video4Linux library
@@ -19,7 +13,17 @@ LICENSE= GPLv2 LGPL21
LICENSE_COMB= dual
USES= compiler:c11 tar:bzip2
WRKSRC= ${WRKDIR}/v4l-utils-${PORTVERSION}
USE_GITHUB= yes
GH_ACCOUNT= hselasky
GH_PROJECT= v4l-utils
GH_TAGNAME= v4l-utils-${PORTVERSION}
GH_TUPLE= hselasky:webcamd:v5.10.6.0:webcamd \
torvalds:linux:v5.10-rc6:linux
WEBCAMDDIR= ${WRKDIR}/webcamd-5.10.6.0
LINUXDIR= ${WRKDIR}/linux-*
.if ${PORTNAME} == v4l-utils || ${PORTNAME} == libv4l
LIB_DEPENDS+= libargp.so:devel/argp-standalone \
@@ -30,7 +34,7 @@ BUILD_DEPENDS+= gsed>0:textproc/gsed \
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
USES+= gmake iconv jpeg libtool pathfix pkgconfig
USES+= autoreconf gmake iconv jpeg libtool pathfix pkgconfig
USE_LDCONFIG= yes
CONFIGURE_ARGS= \
--disable-qv4l2 \
@@ -66,11 +70,14 @@ CONFIGURE_ARGS+= \
post-patch:
# Remove old FreeBSD include files (to be removed upstream)
@${RM} -r ${WRKDIR}/v4l-utils-${PORTVERSION}/contrib/freebsd/include/*
@${RM} -r ${WRKSRC}/contrib/freebsd/include/*
# Create symbolic link for Linux sources
@(${RM} -r ${WEBCAMDDIR}/media_tree && ${LN} -s ${LINUXDIR} ${WEBCAMDDIR}/media_tree)
# Apply webcamd patches first
@(cd ${WRKDIR}/webcamd-${WEBCAMDVERSION}/patches && ${SH} ./do_patch.sh)
@(cd ${WEBCAMDDIR}/patches && ${SH} ./do_patch.sh)
# Patch all source files
@${FIND} ${WRKDIR} -type f \( -iname "*.[ch]" -or -iname "*.cpp" -or -iname "msg2ctl.pl" \) | \
@${FIND} ${WRKSRC} ${LINUXDIR}/include/uapi \
-type f \( -iname "*.[ch]" -or -iname "*.cpp" -or -iname "cec-gen.pl" \) | \
${XARGS} -n 10 ${REINPLACE_CMD} \
-e 's|__inline__|inline|g' \
-e 's|__u8|uint8_t|g' \
@@ -100,6 +107,8 @@ post-patch:
-e 's|_IOC_NONE|IOC_VOID|g' \
-e 's|<endian.h>|<sys/endian.h>|g' \
-e 's|<linux/compiler.h>|<sys/cdefs.h>|g' \
-e 's|"compiler.h"|<sys/cdefs.h>|g' \
-e 's|fallthrough;|;|g' \
-e 's|<linux/errno.h>|<errno.h>|g' \
-e 's|<linux/ioctl.h>|<sys/ioctl.h>|g' \
-e '/^.*\<linux\/kernel.h\>.*/d' \
@@ -111,10 +120,4 @@ post-patch:
-e 's|/usr/bin/perl|${LOCALBASE}/bin/perl|g' \
-e 's|__user||g'
# Duplicate some files to avoid patching
@${CP} ${WRKSRC}/utils/common/ir-encode.c ${WRKSRC}/utils/ir-ctl/ir-encode.c
@${CP} ${WRKSRC}/utils/common/ir-encode.c ${WRKSRC}/utils/keytable/ir-encode.c
@${CP} ${WRKSRC}/utils/common/keymap.h ${WRKSRC}/utils/ir-ctl/keymap.h
@${CP} ${WRKSRC}/utils/common/keymap.h ${WRKSRC}/utils/keytable/keymap.h
.include <bsd.port.mk>

View File

@@ -1,5 +1,7 @@
TIMESTAMP = 1587021105
SHA256 (v4l-utils-1.18.0.tar.bz2) = 6cb60d822eeed20486a03cc23e0fc65956fbc1e85e0c1a7477f68bbd9802880d
SIZE (v4l-utils-1.18.0.tar.bz2) = 1995506
SHA256 (webcamd-5.7.1.1.tar.bz2) = e803b245d0e1ecaf5ff07c5a9700f0951d065827d4907c4615369afab3c102c2
SIZE (webcamd-5.7.1.1.tar.bz2) = 14370502
TIMESTAMP = 1606936269
SHA256 (hselasky-v4l-utils-1.20.0-v4l-utils-1.20.0_GH0.tar.gz) = 1a2bcc1fa5182f718c982c6ee58d0756dca602639ab6b9a9caff021272b33646
SIZE (hselasky-v4l-utils-1.20.0-v4l-utils-1.20.0_GH0.tar.gz) = 1620489
SHA256 (hselasky-webcamd-v5.10.6.0_GH0.tar.gz) = e6c2627130c369fa6cb0a2b30850ccd44735f755127677be457bc5a783b7b3e2
SIZE (hselasky-webcamd-v5.10.6.0_GH0.tar.gz) = 267471
SHA256 (torvalds-linux-v5.10-rc6_GH0.tar.gz) = d139d4cc8eb8b27364adc774c0df0feac39389beb4357a36d628a48c92fed393
SIZE (torvalds-linux-v5.10-rc6_GH0.tar.gz) = 185316277

View File

@@ -1,68 +0,0 @@
From afb123618b087f3ca2305b84fb004624662e52f0 Mon Sep 17 00:00:00 2001
From: David Seifert <soap@gentoo.org>
Date: Wed, 26 Feb 2020 11:07:29 +0100
Subject: Fix GCC 10 / -fno-common
* GCC 10 switches its default symbol emission mode
to cause linker errors when an object is defined
more than once.
Bug: https://bugs.gentoo.org/706756
Signed-off-by: David Seifert <soap@gentoo.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
lib/include/libdvbv5/desc_t2_delivery.h | 2 +-
lib/libdvbv5/dvb-v5.h | 26 +++++++++++++-------------
2 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/lib/include/libdvbv5/desc_t2_delivery.h b/lib/include/libdvbv5/desc_t2_delivery.h
index 93594b76..8c11fa9a 100644
--- lib/include/libdvbv5/desc_t2_delivery.h
+++ lib/include/libdvbv5/desc_t2_delivery.h
@@ -215,7 +215,7 @@ extern const unsigned dvbt2_transmission_mode[];
* @brief converts from internal representation to string the SISO_MISO
* field of dvb_desc_t2_delivery:SISO_MISO field.
*/
-const char *siso_miso[4];
+extern const char *siso_miso[4];
#ifdef __cplusplus
}
diff --git a/lib/libdvbv5/dvb-v5.h b/lib/libdvbv5/dvb-v5.h
index 45aaddda..3540bac1 100644
--- lib/libdvbv5/dvb-v5.h
+++ lib/libdvbv5/dvb-v5.h
@@ -14,17 +14,17 @@ struct fe_status_name {
char *name;
};
extern struct fe_status_name fe_status_name[8];
-const char *fe_code_rate_name[14];
-const char *fe_modulation_name[15];
-const char *fe_transmission_mode_name[10];
-const unsigned fe_bandwidth_name[8];
-const char *fe_guard_interval_name[12];
-const char *fe_hierarchy_name[6];
-const char *fe_voltage_name[4];
-const char *fe_tone_name[3];
-const char *fe_inversion_name[4];
-const char *fe_pilot_name[4];
-const char *fe_rolloff_name[5];
-const char *dvb_v5_name[72];
-const char *delivery_system_name[20];
+extern const char *fe_code_rate_name[14];
+extern const char *fe_modulation_name[15];
+extern const char *fe_transmission_mode_name[10];
+extern const unsigned fe_bandwidth_name[8];
+extern const char *fe_guard_interval_name[12];
+extern const char *fe_hierarchy_name[6];
+extern const char *fe_voltage_name[4];
+extern const char *fe_tone_name[3];
+extern const char *fe_inversion_name[4];
+extern const char *fe_pilot_name[4];
+extern const char *fe_rolloff_name[5];
+extern const char *dvb_v5_name[72];
+extern const char *delivery_system_name[20];
#endif
--
cgit v1.2.1

View File

@@ -1,4 +1,4 @@
--- lib/include/libdvbv5/descriptors.h.orig 2020-04-09 16:29:54 UTC
--- lib/include/libdvbv5/descriptors.h.orig 2020-05-21 11:22:05 UTC
+++ lib/include/libdvbv5/descriptors.h
@@ -87,6 +87,9 @@ typedef void (*dvb_table_init_func)(struct dvb_v5_fe_p
extern const dvb_table_init_func dvb_table_initializers[256];

View File

@@ -1,11 +0,0 @@
--- lib/libv4lconvert/rgbyuv.c.orig 2020-04-09 16:29:54 UTC
+++ lib/libv4lconvert/rgbyuv.c
@@ -893,7 +893,7 @@ void v4lconvert_nv12_to_yuv420(const unsigned char *sr
}
for (i = 0; i < height; i++)
- for (j = 0; i < width; j++) {
+ for (j = 0; j < width; j++) {
*ydst++ = *ysrc++;
if (((i % 2) == 0) && ((j % 2) == 0)) {
*udst++ = *uvsrc++;

View File

@@ -1,322 +0,0 @@
--- utils/common/ir-encode.c.orig 2020-04-09 16:29:54 UTC
+++ utils/common/ir-encode.c
@@ -34,17 +34,18 @@ static int nec_encode(enum rc_proto proto, unsigned sc
const int nec_unit = 562500;
int n = 0;
- void add_byte(unsigned bits)
- {
- int i;
- for (i=0; i<8; i++) {
- buf[n++] = NS_TO_US(nec_unit);
- if (bits & (1 << i))
- buf[n++] = NS_TO_US(nec_unit * 3);
- else
- buf[n++] = NS_TO_US(nec_unit);
- }
- }
+#define add_byte(__bits) \
+ do { \
+ const unsigned bits = (__bits); \
+ int i; \
+ for (i=0; i<8; i++) { \
+ buf[n++] = NS_TO_US(nec_unit); \
+ if (bits & (1U << i)) \
+ buf[n++] = NS_TO_US(nec_unit * 3); \
+ else \
+ buf[n++] = NS_TO_US(nec_unit); \
+ } \
+ } while (0)
buf[n++] = NS_TO_US(nec_unit * 16);
buf[n++] = NS_TO_US(nec_unit * 8);
@@ -73,7 +74,7 @@ static int nec_encode(enum rc_proto proto, unsigned sc
}
buf[n++] = NS_TO_US(nec_unit);
-
+#undef add_bits
return n;
}
@@ -108,19 +109,21 @@ static int sanyo_encode(enum rc_proto proto, unsigned
{
const int sanyo_unit = 562500;
- void add_bits(int bits, int count)
- {
- int i;
- for (i=0; i<count; i++) {
- *buf++ = NS_TO_US(sanyo_unit);
+#define add_bits(__bits, __count) \
+ do { \
+ const unsigned bits = (__bits); \
+ const int count = (__count); \
+ int i; \
+ for (i=0; i<count; i++) { \
+ *buf++ = NS_TO_US(sanyo_unit); \
+ \
+ if (bits & (1U << i)) \
+ *buf++ = NS_TO_US(sanyo_unit * 3); \
+ else \
+ *buf++ = NS_TO_US(sanyo_unit); \
+ } \
+ } while (0)
- if (bits & (1 << i))
- *buf++ = NS_TO_US(sanyo_unit * 3);
- else
- *buf++ = NS_TO_US(sanyo_unit);
- }
- }
-
*buf++ = NS_TO_US(sanyo_unit * 16);
*buf++ = NS_TO_US(sanyo_unit * 8);
@@ -130,7 +133,7 @@ static int sanyo_encode(enum rc_proto proto, unsigned
add_bits(~scancode, 8);
*buf = NS_TO_US(sanyo_unit);
-
+#undef add_bits
return 87;
}
@@ -138,19 +141,21 @@ static int sharp_encode(enum rc_proto proto, unsigned
{
const int sharp_unit = 40000;
- void add_bits(int bits, int count)
- {
- int i;
- for (i=0; i<count; i++) {
- *buf++ = NS_TO_US(sharp_unit * 8);
+#define add_bits(__bits, __count) \
+ do { \
+ const unsigned bits = (__bits); \
+ const int count = (__count); \
+ int i; \
+ for (i=0; i<count; i++) { \
+ *buf++ = NS_TO_US(sharp_unit * 8); \
+ \
+ if (bits & (1U << i)) \
+ *buf++ = NS_TO_US(sharp_unit * 50); \
+ else \
+ *buf++ = NS_TO_US(sharp_unit * 25); \
+ } \
+ } while (0)
- if (bits & (1 << i))
- *buf++ = NS_TO_US(sharp_unit * 50);
- else
- *buf++ = NS_TO_US(sharp_unit * 25);
- }
- }
-
add_bits(scancode >> 8, 5);
add_bits(scancode, 8);
add_bits(1, 2);
@@ -162,7 +167,7 @@ static int sharp_encode(enum rc_proto proto, unsigned
add_bits(~scancode, 8);
add_bits(~1, 2);
*buf++ = NS_TO_US(sharp_unit * 8);
-
+#undef add_bits
return (13 + 2) * 4 + 3;
}
@@ -171,19 +176,21 @@ static int sony_encode(enum rc_proto proto, unsigned s
const int sony_unit = 600000;
int n = 0;
- void add_bits(int bits, int count)
- {
- int i;
- for (i=0; i<count; i++) {
- if (bits & (1 << i))
- buf[n++] = NS_TO_US(sony_unit * 2);
- else
- buf[n++] = NS_TO_US(sony_unit);
+#define add_bits(__bits, __count) \
+ do { \
+ const unsigned bits = (__bits); \
+ const int count = (__count); \
+ int i; \
+ for (i=0; i<count; i++) { \
+ if (bits & (1U << i)) \
+ buf[n++] = NS_TO_US(sony_unit * 2); \
+ else \
+ buf[n++] = NS_TO_US(sony_unit); \
+ \
+ buf[n++] = NS_TO_US(sony_unit); \
+ } \
+ } while (0)
- buf[n++] = NS_TO_US(sony_unit);
- }
- }
-
buf[n++] = NS_TO_US(sony_unit * 4);
buf[n++] = NS_TO_US(sony_unit);
@@ -204,7 +211,7 @@ static int sony_encode(enum rc_proto proto, unsigned s
default:
return 0;
}
-
+#undef add_bits
/* ignore last space */
return n - 1;
}
@@ -214,34 +221,38 @@ static int rc5_encode(enum rc_proto proto, unsigned sc
const unsigned int rc5_unit = 888888;
unsigned n = 0;
- void advance_space(unsigned length)
- {
- if (n % 2)
- buf[n] += length;
- else
- buf[++n] = length;
- }
+#define advance_space(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (n % 2) \
+ buf[n] += length; \
+ else \
+ buf[++n] = length; \
+ } while (0)
- void advance_pulse(unsigned length)
- {
- if (n % 2)
- buf[++n] = length;
- else
- buf[n] += length;
- }
+#define advance_pulse(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (n % 2) \
+ buf[++n] = length; \
+ else \
+ buf[n] += length; \
+ } while (0)
- void add_bits(int bits, int count)
- {
- while (count--) {
- if (bits & (1 << count)) {
- advance_space(NS_TO_US(rc5_unit));
- advance_pulse(NS_TO_US(rc5_unit));
- } else {
- advance_pulse(NS_TO_US(rc5_unit));
- advance_space(NS_TO_US(rc5_unit));
- }
- }
- }
+#define add_bits(__bits, __count) \
+ do { \
+ const unsigned bits = (__bits); \
+ int count = (__count); \
+ while (count--) { \
+ if (bits & (1U << count)) { \
+ advance_space(NS_TO_US(rc5_unit)); \
+ advance_pulse(NS_TO_US(rc5_unit)); \
+ } else { \
+ advance_pulse(NS_TO_US(rc5_unit)); \
+ advance_space(NS_TO_US(rc5_unit)); \
+ } \
+ } \
+ } while (0)
buf[n] = NS_TO_US(rc5_unit);
@@ -269,7 +280,9 @@ static int rc5_encode(enum rc_proto proto, unsigned sc
add_bits(scancode, 6);
break;
}
-
+#undef advance_space
+#undef advance_pulse
+#undef add_bits
/* drop any trailing pulse */
return (n % 2) ? n : n + 1;
}
@@ -279,34 +292,38 @@ static int rc6_encode(enum rc_proto proto, unsigned sc
const unsigned int rc6_unit = 444444;
unsigned n = 0;
- void advance_space(unsigned length)
- {
- if (n % 2)
- buf[n] += length;
- else
- buf[++n] = length;
- }
+#define advance_space(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (n % 2) \
+ buf[n] += length; \
+ else \
+ buf[++n] = length; \
+ } while (0)
- void advance_pulse(unsigned length)
- {
- if (n % 2)
- buf[++n] = length;
- else
- buf[n] += length;
- }
+#define advance_pulse(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (n % 2) \
+ buf[++n] = length; \
+ else \
+ buf[n] += length; \
+ } while (0)
- void add_bits(unsigned bits, unsigned count, unsigned length)
- {
- while (count--) {
- if (bits & (1 << count)) {
- advance_pulse(length);
- advance_space(length);
- } else {
- advance_space(length);
- advance_pulse(length);
- }
- }
- }
+#define add_bits(__bits, __count, length) \
+ do { \
+ const unsigned bits = (__bits); \
+ int count = (__count); \
+ while (count--) { \
+ if (bits & (1U << count)) { \
+ advance_pulse(length); \
+ advance_space(length); \
+ } else { \
+ advance_space(length); \
+ advance_pulse(length); \
+ } \
+ } \
+ } while (0)
buf[n++] = NS_TO_US(rc6_unit * 6);
buf[n++] = NS_TO_US(rc6_unit * 2);
@@ -337,7 +354,9 @@ static int rc6_encode(enum rc_proto proto, unsigned sc
add_bits(scancode, 32, NS_TO_US(rc6_unit));
break;
}
-
+#undef advance_space
+#undef advance_pulse
+#undef add_bits
/* drop any trailing pulse */
return (n % 2) ? n : n + 1;
}

View File

@@ -1,32 +0,0 @@
--- utils/common/keymap.h.orig 2020-04-09 16:29:54 UTC
+++ utils/common/keymap.h
@@ -2,6 +2,8 @@
#ifndef __KEYMAP_H
#define __KEYMAP_H
+#include <stdint.h>
+
struct keymap {
struct keymap *next;
char *name;
@@ -20,16 +22,16 @@ struct protocol_param {
struct scancode_entry {
struct scancode_entry *next;
- u_int32_t scancode;
+ uint32_t scancode;
char *keycode;
};
struct raw_entry {
struct raw_entry *next;
- u_int32_t scancode;
- u_int32_t raw_length;
+ uint32_t scancode;
+ uint32_t raw_length;
char *keycode;
- u_int32_t raw[1];
+ uint32_t raw[1];
};
void free_keymap(struct keymap *map);

View File

@@ -1,12 +0,0 @@
--- utils/common/v4l2-tpg.h.orig 2020-04-09 16:29:54 UTC
+++ utils/common/v4l2-tpg.h
@@ -22,7 +22,9 @@ typedef int16_t s16;
typedef uint8_t u8;
typedef int8_t s8;
+#ifndef __packed
#define __packed __attribute__((packed))
+#endif
#define pr_info printf
#define noinline

View File

@@ -1,50 +0,0 @@
--- utils/ir-ctl/bpf_encoder.c.orig 2020-04-09 16:29:54 UTC
+++ utils/ir-ctl/bpf_encoder.c
@@ -84,21 +84,23 @@ static void encode_manchester(struct keymap *map, uint
{
int len = 0, bits, i;
- void advance_space(unsigned length)
- {
- if (len % 2)
- buf[len] += length;
- else
- buf[++len] = length;
- }
+#define advance_space(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (len % 2) \
+ buf[len] += length; \
+ else \
+ buf[++len] = length; \
+ } while (0)
- void advance_pulse(unsigned length)
- {
- if (len % 2)
- buf[++len] = length;
- else
- buf[len] += length;
- }
+#define advance_pulse(__length) \
+ do { \
+ const unsigned length = (__length); \
+ if (len % 2) \
+ buf[++len] = length; \
+ else \
+ buf[len] += length; \
+ } while (0)
bits = keymap_param(map, "bits", 14);
@@ -111,7 +113,8 @@ static void encode_manchester(struct keymap *map, uint
advance_pulse(keymap_param(map, "zero_pulse", 888));
}
}
-
+#undef advance_space
+#undef advance_pulse
/* drop any trailing pulse */
*length = (len % 2) ? len : len + 1;
}

View File

@@ -1,6 +1,6 @@
--- utils/cec-ctl/msg2ctl.pl.orig 2020-04-09 16:29:54 UTC
+++ utils/cec-ctl/msg2ctl.pl
@@ -49,7 +49,7 @@ sub process_func
--- utils/libcecutil/cec-gen.pl.orig 2020-05-21 11:22:05 UTC
+++ utils/libcecutil/cec-gen.pl
@@ -49,7 +49,7 @@
}
my @args = split(/, */, $func_args);
my $has_struct = $func_args =~ /struct/;
@@ -8,4 +8,4 @@
+ return if ($func_args =~ /__u\d+\s*\*/ || $func_args =~ /uint\d+_t\s*\*/);
my $cec_msg = $msg;
while ($cec_msg ne "" && !exists($msgs{$cec_msg})) {
while ($cec_msg =~ /_/ && !exists($msgs{$cec_msg})) {

View File

@@ -1,11 +0,0 @@
--- utils/media-ctl/media-ctl.c.orig 2020-04-09 16:29:54 UTC
+++ utils/media-ctl/media-ctl.c
@@ -213,7 +213,7 @@ static void v4l2_subdev_print_dv_timings(const struct
printf(" %ux%u%s%llu (%ux%u)",
bt->width, bt->height, bt->interlaced ? "i" : "p",
- (htotal * vtotal) > 0 ? (bt->pixelclock / (htotal * vtotal)) : 0,
+ ((htotal * vtotal) > 0 ? (bt->pixelclock / (htotal * vtotal)) : 0ULL),
htotal, vtotal);
printf(" stds:");

View File

@@ -1,30 +1,10 @@
--- utils/v4l2-compliance/v4l2-test-buffers.cpp.orig 2020-04-09 16:29:54 UTC
--- utils/v4l2-compliance/v4l2-test-buffers.cpp.orig 2020-12-02 20:09:09 UTC
+++ utils/v4l2-compliance/v4l2-test-buffers.cpp
@@ -22,6 +22,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
@@ -32,6 +32,7 @@
#include <ctype.h>
#include <errno.h>
#include <poll.h>
+#include <signal.h>
#include <inttypes.h>
#include <sys/types.h>
#include <sys/stat.h>
@@ -48,8 +49,8 @@
#define VIVID_CID_QUEUE_ERROR (VIVID_CID_VIVID_BASE + 70)
#define VIVID_CID_REQ_VALIDATE_ERROR (VIVID_CID_VIVID_BASE + 72)
-static struct cv4l_fmt cur_fmt;
-static struct cv4l_fmt cur_m2m_fmt;
+static cv4l_fmt cur_fmt;
+static cv4l_fmt cur_m2m_fmt;
static int stream_from_fd = -1;
static bool stream_use_hdr;
@@ -354,7 +355,7 @@ int buffer::check(unsigned type, unsigned memory, unsi
unsigned timestamp_src = g_timestamp_src();
unsigned frame_types = 0;
unsigned buf_states = 0;
- const struct cv4l_fmt &fmt = is_m2m ? cur_m2m_fmt : cur_fmt;
+ const cv4l_fmt &fmt = is_m2m ? cur_m2m_fmt : cur_fmt;
fail_on_test(g_type() != type);
fail_on_test(g_memory() == 0);
#include <sys/ioctl.h>
#include <netinet/in.h>
#include <map>

View File

@@ -1,21 +1,21 @@
--- utils/v4l2-ctl/v4l2-ctl-overlay.cpp.orig 2020-04-09 16:29:54 UTC
--- utils/v4l2-ctl/v4l2-ctl-overlay.cpp.orig 2020-05-21 11:22:05 UTC
+++ utils/v4l2-ctl/v4l2-ctl-overlay.cpp
@@ -14,11 +14,12 @@
@@ -14,11 +14,13 @@
#include <dirent.h>
#include <math.h>
+#include "v4l2-ctl.h"
+
+#ifndef __FreeBSD__
#include <linux/fb.h>
-#include <linux/fb.h>
#include <vector>
-#include "v4l2-ctl.h"
-
#include "v4l2-ctl.h"
+#ifndef __FreeBSD__
+#include <linux/fb.h>
+
static unsigned int set_fbuf;
static unsigned int set_overlay_fmt;
static struct v4l2_format overlay_fmt; /* set_format/get_format video overlay */
@@ -546,3 +547,24 @@ void overlay_list(cv4l_fd &fd)
@@ -546,3 +548,24 @@ void overlay_list(cv4l_fd &fd)
if (options[OptFindFb])
find_fb(fd.g_fd());
}

View File

@@ -3,4 +3,4 @@ compliant video devices. It allows for transcoding of capture streams
in user space instead of kernel space and creates a standard interface
mechanism for video devices.
WWW: http://freshmeat.net/projects/libv4l
WWW: https://linuxtv.org/wiki/index.php/V4l-utils

View File

@@ -2,4 +2,4 @@ Linux V4L2 and DVB API utilities shipped with the v4l libraries (libv4l).
You can always find the latest development v4l-utils in the git repo:
http://git.linuxtv.org/v4l-utils.git
WWW: http://freshmeat.net/projects/libv4l
WWW: https://linuxtv.org/wiki/index.php/V4l-utils

View File

@@ -37,7 +37,7 @@ do-install:
.for F in ${BASE_HEADERS}
${INSTALL_DATA} \
${WRKDIR}/webcamd-${WEBCAMDVERSION}/media_tree/include/uapi/${F} \
${LINUXDIR}/include/uapi/${F} \
${STAGEDIR}${PREFIX}/include/${F}
.endfor

View File

@@ -1 +1,3 @@
This port installs the Video4Linux header files.
This port installs the Video4Linux user space API header files.
WWW: https://linuxtv.org