From 9fc83ac5442688cceb7d1b6ffe2be1bd2a077daf Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Tue, 1 Aug 2023 14:11:14 +0300 Subject: [PATCH] videoio: fix V4L compilation for older kernels --- modules/videoio/src/cap_v4l.cpp | 4 ++++ modules/videoio/test/test_v4l2.cpp | 3 +++ 2 files changed, 7 insertions(+) diff --git a/modules/videoio/src/cap_v4l.cpp b/modules/videoio/src/cap_v4l.cpp index e3c53d7cdd..905c79e42f 100644 --- a/modules/videoio/src/cap_v4l.cpp +++ b/modules/videoio/src/cap_v4l.cpp @@ -260,6 +260,10 @@ typedef uint32_t __u32; #define V4L2_CID_IRIS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+17) #endif +#ifndef v4l2_fourcc_be +#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31)) +#endif + #ifndef V4L2_PIX_FMT_Y10 #define V4L2_PIX_FMT_Y10 v4l2_fourcc('Y', '1', '0', ' ') #endif diff --git a/modules/videoio/test/test_v4l2.cpp b/modules/videoio/test/test_v4l2.cpp index 5d56ac097c..1c4917bfca 100644 --- a/modules/videoio/test/test_v4l2.cpp +++ b/modules/videoio/test/test_v4l2.cpp @@ -22,6 +22,9 @@ #include // workarounds for older versions +#ifndef v4l2_fourcc_be +#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31)) +#endif #ifndef V4L2_PIX_FMT_Y10 #define V4L2_PIX_FMT_Y10 v4l2_fourcc('Y', '1', '0', ' ') #endif