head 1.11; access; symbols pkgsrc-2026Q1:1.11.0.6 pkgsrc-2026Q1-base:1.11 pkgsrc-2025Q4:1.11.0.4 pkgsrc-2025Q4-base:1.11 pkgsrc-2025Q3:1.11.0.2 pkgsrc-2025Q3-base:1.11 pkgsrc-2025Q2:1.10.0.4 pkgsrc-2025Q2-base:1.10 pkgsrc-2025Q1:1.10.0.2 pkgsrc-2025Q1-base:1.10 pkgsrc-2024Q4:1.9.0.26 pkgsrc-2024Q4-base:1.9 pkgsrc-2024Q3:1.9.0.24 pkgsrc-2024Q3-base:1.9 pkgsrc-2024Q2:1.9.0.22 pkgsrc-2024Q2-base:1.9 pkgsrc-2024Q1:1.9.0.20 pkgsrc-2024Q1-base:1.9 pkgsrc-2023Q4:1.9.0.18 pkgsrc-2023Q4-base:1.9 pkgsrc-2023Q3:1.9.0.16 pkgsrc-2023Q3-base:1.9 pkgsrc-2023Q2:1.9.0.14 pkgsrc-2023Q2-base:1.9 pkgsrc-2023Q1:1.9.0.12 pkgsrc-2023Q1-base:1.9 pkgsrc-2022Q4:1.9.0.10 pkgsrc-2022Q4-base:1.9 pkgsrc-2022Q3:1.9.0.8 pkgsrc-2022Q3-base:1.9 pkgsrc-2022Q2:1.9.0.6 pkgsrc-2022Q2-base:1.9 pkgsrc-2022Q1:1.9.0.4 pkgsrc-2022Q1-base:1.9 pkgsrc-2021Q4:1.9.0.2 pkgsrc-2021Q4-base:1.9 pkgsrc-2021Q3:1.7.0.10 pkgsrc-2021Q3-base:1.7 pkgsrc-2021Q2:1.7.0.8 pkgsrc-2021Q2-base:1.7 pkgsrc-2021Q1:1.7.0.6 pkgsrc-2021Q1-base:1.7 pkgsrc-2020Q4:1.7.0.4 pkgsrc-2020Q4-base:1.7 pkgsrc-2020Q3:1.7.0.2 pkgsrc-2020Q3-base:1.7 pkgsrc-2020Q2:1.6.0.6 pkgsrc-2020Q2-base:1.6 pkgsrc-2020Q1:1.6.0.2 pkgsrc-2020Q1-base:1.6 pkgsrc-2019Q4:1.6.0.4 pkgsrc-2019Q4-base:1.6 pkgsrc-2019Q3:1.5.0.4 pkgsrc-2019Q3-base:1.5 pkgsrc-2019Q2:1.5.0.2 pkgsrc-2019Q2-base:1.5 pkgsrc-2019Q1:1.4.0.10 pkgsrc-2019Q1-base:1.4 pkgsrc-2018Q4:1.4.0.8 pkgsrc-2018Q4-base:1.4 pkgsrc-2018Q3:1.4.0.6 pkgsrc-2018Q3-base:1.4 pkgsrc-2018Q2:1.4.0.4 pkgsrc-2018Q2-base:1.4 pkgsrc-2018Q1:1.4.0.2 pkgsrc-2018Q1-base:1.4 pkgsrc-2017Q4:1.3.0.6 pkgsrc-2017Q4-base:1.3 pkgsrc-2017Q3:1.3.0.4 pkgsrc-2017Q3-base:1.3 pkgsrc-2017Q2:1.2.0.4 pkgsrc-2017Q2-base:1.2 pkgsrc-2017Q1:1.2.0.2 pkgsrc-2017Q1-base:1.2 pkgsrc-2016Q4:1.1.0.8 pkgsrc-2016Q4-base:1.1 pkgsrc-2016Q3:1.1.0.6 pkgsrc-2016Q3-base:1.1 pkgsrc-2016Q2:1.1.0.4 pkgsrc-2016Q2-base:1.1 pkgsrc-2016Q1:1.1.0.2 pkgsrc-2016Q1-base:1.1; locks; strict; comment @// @; 1.11 date 2025.07.07.05.15.26; author wiz; state Exp; branches; next 1.10; commitid wcVX5TfvRCX20M1G; 1.10 date 2025.02.07.21.54.17; author wiz; state Exp; branches; next 1.9; commitid RS8OGY8QeR4wlAIF; 1.9 date 2021.10.16.07.16.29; author adam; state Exp; branches; next 1.8; commitid mFN4TbMeo1b3o0dD; 1.8 date 2021.10.06.21.10.24; author adam; state Exp; branches; next 1.7; commitid BlBCA7RmhNqJjNbD; 1.7 date 2020.08.24.07.08.03; author tnn; state Exp; branches; next 1.6; commitid ZnMREapWFoiZLhlC; 1.6 date 2019.12.16.08.24.39; author adam; state Exp; branches; next 1.5; commitid QXHthrrxK9IwiUOB; 1.5 date 2019.04.24.19.34.45; author adam; state Exp; branches; next 1.4; commitid ufHYOOmjLekzADkB; 1.4 date 2018.03.02.16.24.21; author fhajny; state Exp; branches; next 1.3; commitid NiCvv3m79dPuYTsA; 1.3 date 2017.09.04.15.23.49; author fhajny; state Exp; branches; next 1.2; commitid UcVmQyjHJObcoT5A; 1.2 date 2017.03.16.21.59.13; author prlw1; state Exp; branches; next 1.1; commitid QsCtUieNr6Jn5PJz; 1.1 date 2016.03.01.20.14.24; author joerg; state Exp; branches; next ; commitid 0ohdby8oQqHaKYWy; desc @@ 1.11 log @opencv*: update to 4.12.0 Summer update for OpenCV 4.x Core Module: Added user-defined logger callback #27154 Added reinterpret() method to cv::Mat #25394 Fixed empty ND-array construction #27362 Fixed bug with int64 support for FileStorage #26846 Fixed cv::meanStdDev overflow for large images #26867 Useed HAL for cv::mean function too #26895 Vectorized cv::normalize / cv::norm #26885 Enabled SIMD_SCALABLE for exp and sqrt #26886 vectorized normDiff with universal intrinsics #27042 Refactored normDiff in hal_rvv and extended with support of more data types #27115 Further vectorized copyTo with mask #27145 Fix POWN OpenCL implementation #27274 Restored legacy universal intrinsics operators in a separate header #27327 Improved solveCubuc accuracy: #27331, #27347 Deprecated copyData Parameter in cv::UMat construction from std::vector and always copy data #27408 Imgproc Module: Optimized and reduced memory consumption in cv::findContours #26690, #26834 Fixed integer overflow in cv::HoughLinesProbabilistic with very large input images #26744 Fixed several potential overflows in image warping #26765, #26776 Improved robustness for ellipse fitting #26773 Added cv::THRESH_DRYRUN flag to get adaptive threshold values without input thresholding #26836 Fixed cv::getPerspectiveTransform for singular case #26926 Optimized bayer2Gray with universal intrinsics #26868 Added optional mask to cv::threshold #26842 Accelerated cv::remap calculation with multi-threading, when cv::WARP_INVERSE_MAP is used #27108 Reworked HSV color conversion tables initialization in OpenCL branch to fix possible data raise #27287 Fixed bilateral filter's sigma color and sigma space issue #27309 Impoved performance of medianblur #27299 Added cv::getClosestEllipsePoints function to get the closest point on an ellipse #26299 Corrected IPP implementation for cv::distanceTransform results with single thread #27432 Fixed cv::matchTemplate with mask crash #26703 Added diamond structuring element to morphology operations #27441, #27492 Improved cv::intersectConvexConvex accuracy in corner cases #26974 Calib3d module: Fixed inliers updating in homography estimation #26742 Added cv::solvePnPRansac implementation for the fisheye camera model #26669 Fixed different marker ordering with cv::findChessboardCornersSBWithMeta and cv::CALIB_CB_LARGER flag. Fixed logical mistake in FilterSpecklesImpl #26996 Optimized undistort points for the fisheye camera model #26988 Optimized new camera matrix estimation and some related functions #27001 Added warning if projected axes are out of camera frame in cv::drawAxes function #27311 Added image dimension check to avoid StereoSGBM non-determinism #27305 Fixed bugs in SQPNP orthogonalization and simplified column vectors copying #27437 DNN Module: Added TFLite StridedSllice (without strides but just Slice) and enable strides for TF importers #27273 Added fusion handler of conv+eltwise in case of multi-output node (i.e. Split) #27326 Added new ops import in TFLite parser: SUB, SQRT, DIV, NEG, SQUARED_DIFFERENCE, SUM #27307 Fxied scalars and 1d tensors support in TFLite parser #27307 Reduced mumber of NHWC<->NCHW conversions in TFLite parser #27307 Added checks before getting latest pin in Net::Impl::getLatestLayerPin #27353 Added OpenVINO NPU support #27363 Added more operations to CANN backend #24756 Objdetect module: Extend ArUcoDetector to run multiple dictionaries in an efficient manner #26934. Fixed rotated aruco marker board generation #26753 Fixed incorrect Aruco marker detection near image edge #26968 Fixed invalid vector access in QR de/encoder #26532 Fix QR code encoder with auto version #27244 Aded QRCode ECI encoding support #24426, #27486 Made ChAruco board consistency check optional #26824 Photo Module: Added 16-bit support to cv::fastNlMeansDenoising and updated tests #26831 Local decolor pipeline optimization #27041 Fixed Triangle Weights used by Debevec algorithm being non zero at extremes #27270 Fixed NaNs in HDR Triangle Weights and Tonemapping and Update LDR Ground Truth in tutorial #27396 VideoIO Module: Fixed invalid custom FFmpeg options handling provided with environment variable #26793 Fixed default cv::CAP_PROP_ORIENTATION_ATUO behaviour #26800 Improved camera opening performance when with DShow backed, if custom options are provided #26601 Added zoom support into Android native camera capture #26837 Fixed V4L frame size for non-BGR output #27193 Added Orbbec Gemini 330 camera support #27230 Fixed cv::VideoWriter failure on writing colorless images #27153 Fixed Android setCameraIndex issue #27419 Imgcodecs: Extended image I/O API with metadata support #27499 Added in-memory animation encoding and decoding #27013 Added hidden frame support for Animated PNG #27127 Added GIF decode and encode for imgcodecs #25691, #26971, #26859, #26738, #26930, #27081, #27138, #27296 Added animated WebP Support #25608, #27457 Added GDAL multi-channel support #27458 Fixed AVIF linkage on Windows #26762 Significantly improved PNG and Animated PNG files handing #26849, #26739, #26748, #26782, #26832, #26835, #26848, #26851, #26854, #26915, #27040, #27087, #27297 Added several fixes for libspng integration #27314 Fixed memory leak in JpegXL decoder #26787 Added support for cv::IMREAD_UNCHANGED and other ImreadFlags into JpegXL implementation #26788 Implemented imdecode() for JpegXL to directly read from memory #26844 Added lossless compression support for JpegXL #27384 Fixed cv::imread() implementation for 16-bit png with libspng back-end #27113 Highgui Module: displayOverlay doesn't disappear after timeout #27082 Fix closing of windows when using the Qt backend #27170 Fixed QT window resize regression #27282 G-API module: Workaround for successfull append of OpenVINO Execution Provider: Moved creation of 'Ort::Env' before it #26983 Adding AddRgbFeature(), and improving robustness in ComputeRgbDistance #26682 Added MS Media Foundation availability check in G-API too #27355 Video Module: Added trackers factory with pre-loaded dnn models #26875 HAL: Extracted HAL implementations as dedicated folder #27252. Implemented new HAL for RISC-V RVV 1.0 platforms, see all changes by query Refactored OpenVX implementation as HAL #26903, #26911, #26907. Partially refactored Intel IPP integration as HAL #26880, #27125, #27128, #27194, #27213, #27346. Further IPP conversion will be continued in the next releases Fixed HALs dependency from thre cv namespace #26878 Updated KleidiCV HAL for ARM to version 0.5 Extended FastCV HAL for Qualcomm platforms #27217, #27216, #27184, #27182, #27033 Added new HAL entries for cv::sum #27346, copyTo with mask #27162, cv::DFT and cv::DCT variations #26865, convert with scale #26804, cv::norm variations #26804, minMaxIdx with step support #26789, cv::calcHist #27332, cv::pyrUp #26958, more variations for cv::remap #27119 Python, Java and JavaScript bindings: Added conditional inclusion support to header parser #27325, #27393, #27478 Updated predefined_types.py #26826 Added bindings for animations #26813 Fix wrong python type hints for cv::imread #26890 Replaced tostring() and fromstring() call in tests and samples for compatibility with modern Python #26932, #26949 Replaced ndarray.ptp() with np.ptp() for NumPy 2.0 Compatibility #27133 Extended Java bindings generation in DNN #27228, #27260, Features2d #27245 Fixed std::vector handling in JS wrappers #27291 Added cv::VideoCapture buffered stream constructor into Java #27284, #27421 Extended bindings for cv::HoughLinesWithAccumulator #27377 Fixed Kotlin 2.0 internal error for unsafe coercions #26354 Platforms support: Fixed OpenBLAS detection on Linux #27029 Fixed compatibility with CMake 4 #27192 Fixed Android build with Vulkan support #26765 Fixed VSX intrinsics (Power) implementation #26750, #26786 Added CMake checks for getauxval and elf_aux_info for POWER architecture #26798 Fixed build for openBSD #26803 Added initial support for Nvidia Blackwell GPU arch in CUDA #26820 Fixed cv namespace dependency in Carotene HAL #26878 Fixed _DEBUG/NDEBUG handling across modules #26151 Fixed build for QNX 7.0 #26985 Switched to statically linked FastCV #26917, #27340 fixed build issues on Android #27345 Forced C++17 Standard for CUDA targets when CUDA Toolkit >=12.8 #27112 #27142 Fixed build for Windows ARM64EC #27416 Fixed filesystem support under Cygwin environment #27484 @ text @$NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.10 2025/02/07 21:54:17 wiz Exp $ Conditionalize settings not available in NetBSD's v4l2 emulation. Avoid non-standard integer types. --- modules/videoio/src/cap_v4l.cpp.orig 2025-07-02 07:54:13.000000000 +0000 +++ modules/videoio/src/cap_v4l.cpp @@@@ -215,6 +215,14 @@@@ make & enjoy! #include #include #include +#include +#include +#ifndef __u32 +#define __u32 uint32_t +#endif +#ifndef __s32 +#define __s32 int32_t +#endif #include #include @@@@ -241,24 +249,30 @@@@ typedef uint32_t __u32; #endif // https://github.com/opencv/opencv/issues/13335 +#ifdef V4L2_CID_CAMERA_CLASS_BASE #ifndef V4L2_CID_ISO_SENSITIVITY #define V4L2_CID_ISO_SENSITIVITY (V4L2_CID_CAMERA_CLASS_BASE+23) #endif +#endif // https://github.com/opencv/opencv/issues/13929 +#ifdef V4L2_CID_MPEG_BASE #ifndef V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (V4L2_CID_MPEG_BASE+364) #endif #ifndef V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (V4L2_CID_MPEG_BASE+365) #endif +#endif #ifndef V4L2_CID_ROTATE #define V4L2_CID_ROTATE (V4L2_CID_BASE+34) #endif +#ifdef V4L2_CID_CAMERA_CLASS_BASE #ifndef V4L2_CID_IRIS_ABSOLUTE #define V4L2_CID_IRIS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+17) #endif +#endif #ifndef v4l2_fourcc_be #define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31)) @@@@ -1467,6 +1481,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons case V4L2_PIX_FMT_RGB24: cv::cvtColor(cv::Mat(imageSize, CV_8UC3, start), frame, COLOR_RGB2BGR); return; +#ifdef V4L2_PIX_FMT_Y16 case V4L2_PIX_FMT_Y16: { // https://www.kernel.org/doc/html/v4.10/media/uapi/v4l/pixfmt-y16.html @@@@ -1531,6 +1546,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons cv::cvtColor(cv::Mat(imageSize, CV_8UC1, start), frame, COLOR_BayerGB2BGR); return; } +#endif case V4L2_PIX_FMT_GREY: cv::cvtColor(cv::Mat(imageSize, CV_8UC1, start), frame, COLOR_GRAY2BGR); return; @@@@ -1650,8 +1666,10 @@@@ static inline int capPropertyToV4L2(int return -1; case cv::CAP_PROP_FOURCC: return -1; +#ifdef V4L2_CID_MPEG_VIDEO_B_FRAMES case cv::CAP_PROP_FRAME_COUNT: return V4L2_CID_MPEG_VIDEO_B_FRAMES; +#endif case cv::CAP_PROP_FORMAT: return -1; case cv::CAP_PROP_MODE: @@@@ -1666,8 +1684,10 @@@@ static inline int capPropertyToV4L2(int return V4L2_CID_HUE; case cv::CAP_PROP_GAIN: return V4L2_CID_GAIN; +#ifdef V4L2_CID_EXPOSURE_ABSOLUTE case cv::CAP_PROP_EXPOSURE: return V4L2_CID_EXPOSURE_ABSOLUTE; +#endif case cv::CAP_PROP_CONVERT_RGB: return -1; case cv::CAP_PROP_WHITE_BALANCE_BLUE_U: @@@@ -1678,8 +1698,10 @@@@ static inline int capPropertyToV4L2(int return -1; case cv::CAP_PROP_SHARPNESS: return V4L2_CID_SHARPNESS; +#ifdef V4L2_CID_EXPOSURE_AUTO case cv::CAP_PROP_AUTO_EXPOSURE: return V4L2_CID_EXPOSURE_AUTO; +#endif case cv::CAP_PROP_GAMMA: return V4L2_CID_GAMMA; case cv::CAP_PROP_TEMPERATURE: @@@@ -1690,34 +1712,54 @@@@ static inline int capPropertyToV4L2(int return -1; case cv::CAP_PROP_WHITE_BALANCE_RED_V: return V4L2_CID_RED_BALANCE; +#ifdef V4L2_CID_ZOOM_ABSOLUTE case cv::CAP_PROP_ZOOM: return V4L2_CID_ZOOM_ABSOLUTE; +#endif +#ifdef V4L2_CID_FOCUS_ABSOLUTE case cv::CAP_PROP_FOCUS: return V4L2_CID_FOCUS_ABSOLUTE; +#endif case cv::CAP_PROP_GUID: return -1; +#ifdef V4L2_CID_ISO_SENSITIVITY case cv::CAP_PROP_ISO_SPEED: return V4L2_CID_ISO_SENSITIVITY; +#endif case cv::CAP_PROP_BACKLIGHT: return V4L2_CID_BACKLIGHT_COMPENSATION; +#ifdef V4L2_CID_PAN_ABSOLUTE case cv::CAP_PROP_PAN: return V4L2_CID_PAN_ABSOLUTE; +#endif +#ifdef V4L2_CID_TILT_ABSOLUTE case cv::CAP_PROP_TILT: return V4L2_CID_TILT_ABSOLUTE; +#endif +#ifdef V4L2_CID_ROTATE case cv::CAP_PROP_ROLL: return V4L2_CID_ROTATE; +#endif +#ifdef V4L2_CID_IRIS_ABSOLUTE case cv::CAP_PROP_IRIS: return V4L2_CID_IRIS_ABSOLUTE; +#endif case cv::CAP_PROP_SETTINGS: return -1; case cv::CAP_PROP_BUFFERSIZE: return -1; +#ifdef V4L2_CID_FOCUS_AUTO case cv::CAP_PROP_AUTOFOCUS: return V4L2_CID_FOCUS_AUTO; +#endif +#ifdef V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT case cv::CAP_PROP_SAR_NUM: return V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT; +#endif +#ifdef V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH case cv::CAP_PROP_SAR_DEN: return V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH; +#endif case CAP_PROP_AUTO_WB: return V4L2_CID_AUTO_WHITE_BALANCE; case CAP_PROP_WB_TEMPERATURE: @ 1.10 log @opencv: update to 4.11.0. This is the new major version under the Apache 2 license. Too many changes to list, no concise summary found. Details at: https://github.com/opencv/opencv/wiki/OpenCV-Change-Logs-v2.2%E2%80%90v4.10 https://github.com/opencv/opencv/wiki/OpenCV-Change-Logs#version4110 @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.9 2021/10/16 07:16:29 adam Exp $ d6 1 a6 1 --- modules/videoio/src/cap_v4l.cpp.orig 2025-01-08 12:47:46.000000000 +0000 d54 1 a54 1 @@@@ -1471,6 +1485,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d62 1 a62 1 @@@@ -1535,6 +1550,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d69 2 a70 2 break; @@@@ -1654,8 +1670,10 @@@@ static inline int capPropertyToV4L2(int d81 1 a81 1 @@@@ -1670,8 +1688,10 @@@@ static inline int capPropertyToV4L2(int d92 1 a92 1 @@@@ -1682,8 +1702,10 @@@@ static inline int capPropertyToV4L2(int d103 1 a103 1 @@@@ -1694,34 +1716,54 @@@@ static inline int capPropertyToV4L2(int @ 1.9 log @opencv: one more guard for V4L2_PIX_FMT_Y16 @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.8 2021/10/06 21:10:24 adam Exp $ d6 1 a6 1 --- modules/videoio/src/cap_v4l.cpp.orig 2021-10-08 18:31:56.000000000 +0000 d23 1 a23 1 @@@@ -236,24 +244,30 @@@@ make & enjoy! d52 3 a54 59 #ifndef V4L2_PIX_FMT_Y10 #define V4L2_PIX_FMT_Y10 v4l2_fourcc('Y', '1', '0', ' ') @@@@ -555,13 +569,17 @@@@ bool CvCaptureCAM_V4L::autosetup_capture V4L2_PIX_FMT_NV12, V4L2_PIX_FMT_NV21, V4L2_PIX_FMT_SBGGR8, +#ifdef V4L2_PIX_FMT_SGBRG8 V4L2_PIX_FMT_SGBRG8, +#endif V4L2_PIX_FMT_SN9C10X, #ifdef HAVE_JPEG V4L2_PIX_FMT_MJPEG, V4L2_PIX_FMT_JPEG, #endif +#ifdef V4L2_PIX_FMT_Y16 V4L2_PIX_FMT_Y16, +#endif V4L2_PIX_FMT_Y12, V4L2_PIX_FMT_Y10, V4L2_PIX_FMT_GREY, @@@@ -618,9 +636,13 @@@@ bool CvCaptureCAM_V4L::convertableToRgb( case V4L2_PIX_FMT_UYVY: case V4L2_PIX_FMT_SBGGR8: case V4L2_PIX_FMT_SN9C10X: +#ifdef V4L2_PIX_FMT_SGBRG8 case V4L2_PIX_FMT_SGBRG8: +#endif case V4L2_PIX_FMT_RGB24: +#ifdef V4L2_PIX_FMT_Y16 case V4L2_PIX_FMT_Y16: +#endif case V4L2_PIX_FMT_Y10: case V4L2_PIX_FMT_GREY: case V4L2_PIX_FMT_BGR24: @@@@ -655,7 +677,9 @@@@ void CvCaptureCAM_V4L::v4l2_create_frame channels = 1; size.height = size.height * 3 / 2; // "1.5" channels break; +#ifdef V4L2_PIX_FMT_Y16 case V4L2_PIX_FMT_Y16: +#endif case V4L2_PIX_FMT_Y12: case V4L2_PIX_FMT_Y10: depth = IPL_DEPTH_16U; @@@@ -1532,11 +1556,13 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons (unsigned char*)buffers[MAX_V4L_BUFFERS].start, (unsigned char*)frame.imageData); return; +#ifdef V4L2_PIX_FMT_SGBRG8 case V4L2_PIX_FMT_SGBRG8: sgbrg2rgb24(imageSize.width, imageSize.height, (unsigned char*)currentBuffer.start, (unsigned char*)frame.imageData); return; +#endif default: break; } @@@@ -1575,6 +1601,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d56 1 a56 1 cv::cvtColor(cv::Mat(imageSize, CV_8UC3, currentBuffer.start), destination, COLOR_RGB2BGR); d61 3 a63 3 cv::Mat temp(imageSize, CV_8UC1, buffers[MAX_V4L_BUFFERS].start); @@@@ -1596,6 +1623,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons cv::cvtColor(temp, destination, COLOR_GRAY2BGR); d68 1 a68 1 cv::cvtColor(cv::Mat(imageSize, CV_8UC1, currentBuffer.start), destination, COLOR_GRAY2BGR); d70 1 a70 1 @@@@ -1708,8 +1736,10 @@@@ static inline int capPropertyToV4L2(int d81 1 a81 1 @@@@ -1724,8 +1754,10 @@@@ static inline int capPropertyToV4L2(int d92 1 a92 1 @@@@ -1736,8 +1768,10 @@@@ static inline int capPropertyToV4L2(int d103 1 a103 1 @@@@ -1748,34 +1782,54 @@@@ static inline int capPropertyToV4L2(int @ 1.8 log @opencv opencv-contrib-face: updated to 3.4.15 OpenCV 3.4.15 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.5.3. Long-lived OpenCV 3.x release series is here since 2015. We are going to reduce support of 3.x branch in the future to move forward to OpenCV 5.0. @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.7 2020/08/24 07:08:03 tnn Exp $ d6 1 a6 1 --- modules/videoio/src/cap_v4l.cpp.orig 2021-07-04 21:10:13.000000000 +0000 d54 1 a54 1 @@@@ -555,7 +569,9 @@@@ bool CvCaptureCAM_V4L::autosetup_capture d64 9 a72 1 @@@@ -618,9 +634,13 @@@@ bool CvCaptureCAM_V4L::convertableToRgb( d86 1 a86 1 @@@@ -655,7 +675,9 @@@@ void CvCaptureCAM_V4L::v4l2_create_frame d96 1 a96 1 @@@@ -1532,11 +1554,13 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d110 1 a110 1 @@@@ -1575,6 +1599,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d118 1 a118 1 @@@@ -1596,6 +1621,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d126 1 a126 1 @@@@ -1708,8 +1734,10 @@@@ static inline int capPropertyToV4L2(int d137 1 a137 1 @@@@ -1724,8 +1752,10 @@@@ static inline int capPropertyToV4L2(int d148 1 a148 1 @@@@ -1736,8 +1766,10 @@@@ static inline int capPropertyToV4L2(int d159 1 a159 1 @@@@ -1748,34 +1780,54 @@@@ static inline int capPropertyToV4L2(int @ 1.7 log @opencv: avoid non-standard integer types in v4l module @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.6 2019/12/16 08:24:39 adam Exp $ d6 1 a6 1 --- modules/videoio/src/cap_v4l.cpp.orig 2019-12-19 15:16:47.000000000 +0000 d8 1 a8 1 @@@@ -218,6 +218,14 @@@@ make & enjoy! d23 1 a23 1 @@@@ -239,24 +247,30 @@@@ make & enjoy! d54 1 a54 1 @@@@ -554,13 +568,17 @@@@ bool CvCaptureCAM_V4L::autosetup_capture d64 1 a64 9 V4L2_PIX_FMT_JPEG, #endif +#ifdef V4L2_PIX_FMT_Y16 V4L2_PIX_FMT_Y16, +#endif V4L2_PIX_FMT_Y10, V4L2_PIX_FMT_GREY, }; @@@@ -616,9 +634,13 @@@@ bool CvCaptureCAM_V4L::convertableToRgb( d78 1 a78 1 @@@@ -653,7 +675,9 @@@@ void CvCaptureCAM_V4L::v4l2_create_frame d85 1 d88 1 a88 2 /* fallthru */ @@@@ -1528,11 +1552,13 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d102 1 a102 1 @@@@ -1571,6 +1597,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d110 1 a110 1 @@@@ -1585,6 +1612,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d118 1 a118 1 @@@@ -1697,8 +1725,10 @@@@ static inline int capPropertyToV4L2(int d129 1 a129 1 @@@@ -1713,8 +1743,10 @@@@ static inline int capPropertyToV4L2(int d140 1 a140 1 @@@@ -1725,8 +1757,10 @@@@ static inline int capPropertyToV4L2(int d151 1 a151 1 @@@@ -1737,34 +1771,54 @@@@ static inline int capPropertyToV4L2(int @ 1.6 log @opencv: updated to 3.4.8 version:3.4.8 OpenCV 3.4.8 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.1.2. version:3.4.7 OpenCV 3.4.7 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.1.1. @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.5 2019/04/24 19:34:45 adam Exp $ d4 1 d6 1 a6 1 --- modules/videoio/src/cap_v4l.cpp.orig 2019-10-09 11:42:29.000000000 +0000 d8 1 a8 1 @@@@ -218,6 +218,7 @@@@ make & enjoy! d13 7 d23 1 a23 1 @@@@ -239,24 +240,30 @@@@ make & enjoy! d54 1 a54 1 @@@@ -493,13 +500,17 @@@@ bool CvCaptureCAM_V4L::autosetup_capture d72 1 a72 1 @@@@ -545,9 +556,13 @@@@ bool CvCaptureCAM_V4L::convertableToRgb( d86 1 a86 1 @@@@ -582,7 +597,9 @@@@ void CvCaptureCAM_V4L::v4l2_create_frame d96 1 a96 1 @@@@ -1408,11 +1425,13 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d110 1 a110 1 @@@@ -1450,6 +1469,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d118 1 a118 1 @@@@ -1464,6 +1484,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d126 1 a126 1 @@@@ -1576,8 +1597,10 @@@@ static inline int capPropertyToV4L2(int d137 1 a137 1 @@@@ -1592,8 +1615,10 @@@@ static inline int capPropertyToV4L2(int d148 1 a148 1 @@@@ -1604,8 +1629,10 @@@@ static inline int capPropertyToV4L2(int d159 1 a159 1 @@@@ -1616,34 +1643,54 @@@@ static inline int capPropertyToV4L2(int @ 1.5 log @opencv: updated to 3.4.6 version:3.4.6 OpenCV 3.4.6 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.1.0. version:3.4.5 OpenCV 3.4.5 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.0.1. version:3.4.4 OpenCV 3.4.4 has been released. This is a mantenance release. New features are landed in OpenCV 4.0. version:3.4.3 OpenCV 3.4.3 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes. version:3.4.2 OpenCV 3.4.2 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes. OpenCV 3.4.x development is switched from "master" to "3.4" branch. "master" branch is used for development of upcoming OpenCV 4.x releases. Bugfixes / optimizations / small improvemets should go into "3.4" branch. We will merge changes from "3.4" into "master" regularly (weekly/bi-weekly). @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.4 2018/03/02 16:24:21 fhajny Exp $ d5 1 a5 1 --- modules/videoio/src/cap_v4l.cpp.orig 2019-04-06 21:43:23.000000000 +0000 d15 1 a15 1 @@@@ -239,17 +240,21 @@@@ make & enjoy! d35 12 a46 3 /* Defaults - If your board can do better, set it here. Set for the most common type inputs. */ #define DEFAULT_V4L_WIDTH 640 @@@@ -482,13 +487,17 @@@@ bool CvCaptureCAM_V4L::autosetup_capture d61 2 a62 1 V4L2_PIX_FMT_GREY d64 1 a64 2 @@@@ -533,9 +542,13 @@@@ bool CvCaptureCAM_V4L::convertableToRgb( d75 1 d78 1 a78 2 return true; @@@@ -569,9 +582,11 @@@@ void CvCaptureCAM_V4L::v4l2_create_frame d84 2 d88 1 a88 5 +#endif case V4L2_PIX_FMT_GREY: channels = 1; break; @@@@ -1395,11 +1410,13 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d102 1 a102 1 @@@@ -1437,6 +1454,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d110 1 a110 1 @@@@ -1444,6 +1462,7 @@@@ void CvCaptureCAM_V4L::convertToRgb(cons d118 1 a118 1 @@@@ -1556,8 +1575,10 @@@@ static inline int capPropertyToV4L2(int d129 1 a129 1 @@@@ -1572,8 +1593,10 @@@@ static inline int capPropertyToV4L2(int d140 1 a140 1 @@@@ -1584,8 +1607,10 @@@@ static inline int capPropertyToV4L2(int d151 1 a151 1 @@@@ -1596,34 +1621,54 @@@@ static inline int capPropertyToV4L2(int @ 1.4 log @graphics/opencv: Update to 3.4.1. == OpenCV 3.4.1 dnn - Added support for quantized TensorFlow networks - OpenCV is now able to use Intel DL inference engine as DNN acceleration backend - Added AVX-512 acceleration to the performance-critical kernels, such as convolution and fully-connected layers - SSD-based models trained and retrained in TensorFlow Object Detection API can be easier imported by a single invocation of python script making a text graph representation - Performance of pthreads backend of cv::parallel_for_() has been greatly improved on many core machines - OpenCL backend has been expanded to cover more layers - Several bugs in various layers have been fixed OpenCL - On-disk caching of precompiled OpenCL kernels has been fixed to comply with OpenCL standard - Certain cases with UMat deadlock when copying UMats in different threads has been fixed Android - Supported Android NDK16 - Added build.gradle into OpenCV 4 Android SDK - Added initial support of Camera2 API via JavaCamera2View interface C++ - C++11: added support of multi-dimentional cv::Mat creation via C++ initializers lists - C++17: OpenCV source code and tests comply C++17 standard Misc - opencv_contrib: added GMS matching - opencv_contrib: added CSR-DCF tracker - opencv_contrib: several improvements in OVIS module == OpenCV 3.4 - New background subtraction algorithms have been integrated. dnn - Added faster R-CNN support - Javascript bindings have been extended to cover DNN module - DNN has been further accelerated for iGPU using OpenCL OpenCL - On-disk caching of precompiled OpenCL kernels has been finally implemented - It's now possible to load and run pre-compiled OpenCL kernels via T-API - Bit-exact 8-bit and 16-bit resize has been implemented @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.3 2017/09/04 15:23:49 fhajny Exp $ d5 1 a5 1 --- modules/videoio/src/cap_v4l.cpp.orig 2018-02-23 08:38:33.000000000 +0000 d7 1 a7 1 @@@@ -216,6 +216,7 @@@@ make & enjoy! d15 25 a39 3 @@@@ -466,13 +467,17 @@@@ static int autosetup_capture_mode_v4l2(C V4L2_PIX_FMT_YUYV, V4L2_PIX_FMT_UYVY, d50 1 a50 1 V4L2_PIX_FMT_Y16 d52 1 d55 6 a60 9 for (size_t i = 0; i < sizeof(try_order) / sizeof(__u32); i++) { @@@@ -521,12 +526,16 @@@@ static void v4l2_control_range(CvCapture case V4L2_CID_GAIN: cap->gain = range; break; +#ifdef V4L2_CID_EXPOSURE_ABSOLUTE case V4L2_CID_EXPOSURE_ABSOLUTE: cap->exposure = range; break; d62 1 a62 22 +#ifdef V4L2_CID_FOCUS_ABSOLUTE case V4L2_CID_FOCUS_ABSOLUTE: cap->focus = range; break; +#endif } } @@@@ -548,7 +557,9 @@@@ static void v4l2_scan_controls(CvCapture break; } +#ifdef V4L2_CID_FOCUS_ABSOLUTE v4l2_control_range(capture, V4L2_CID_FOCUS_ABSOLUTE); +#endif } static int v4l2_set_fps(CvCaptureCAM_V4L* capture) { @@@@ -564,8 +575,10 @@@@ static int v4l2_num_channels(__u32 palet case V4L2_PIX_FMT_YVU420: case V4L2_PIX_FMT_MJPEG: case V4L2_PIX_FMT_JPEG: a64 1 return 1; d66 5 a70 5 case V4L2_PIX_FMT_YUYV: case V4L2_PIX_FMT_UYVY: return 2; @@@@ -593,11 +606,13 @@@@ static void v4l2_create_frame(CvCaptureC case V4L2_PIX_FMT_YVU420: d75 5 a79 3 if(!capture->convert_rgb){ depth = IPL_DEPTH_16U; } d81 4 a84 8 +#endif } } @@@@ -1558,18 +1573,21 @@@@ static IplImage* icvRetrieveFrameCAM_V4L (unsigned char*)capture->frame.imageData); break; d87 6 a92 4 sgbrg2rgb24(capture->form.fmt.pix.width, capture->form.fmt.pix.height, (unsigned char*)capture->buffers[(capture->bufferIndex+1) % capture->req.count].start, (unsigned char*)capture->frame.imageData); d94 2 a95 1 +#endif d97 2 a98 5 rgb24_to_rgb24(capture->form.fmt.pix.width, capture->form.fmt.pix.height, (unsigned char*)capture->buffers[(capture->bufferIndex+1) % capture->req.count].start, (unsigned char*)capture->frame.imageData); break; d101 9 a109 5 if(capture->convert_rgb){ y16_to_rgb24(capture->form.fmt.pix.width, @@@@ -1582,6 +1600,7 @@@@ static IplImage* icvRetrieveFrameCAM_V4L capture->frame.imageSize); } d111 7 d119 4 a122 4 } if (capture->returnFrame) @@@@ -1602,14 +1621,22 @@@@ static inline __u32 capPropertyToV4L2(in d124 1 a124 1 case CV_CAP_PROP_GAIN: d126 11 d138 1 a138 1 case CV_CAP_PROP_AUTO_EXPOSURE: d141 10 a150 7 +#ifdef V4L2_CID_EXPOSURE_ABSOLUTE case CV_CAP_PROP_EXPOSURE: return V4L2_CID_EXPOSURE_ABSOLUTE; +#endif +#ifdef V4L2_CID_FOCUS_AUTO case CV_CAP_PROP_AUTOFOCUS: return V4L2_CID_FOCUS_AUTO; d153 1 a153 1 case CV_CAP_PROP_FOCUS: d156 27 a182 1 default: d184 3 a186 12 } @@@@ -1755,12 +1782,14 @@@@ static bool icvSetControl (CvCaptureCAM_ return false; } +#if defined(V4L2_CID_EXPOSURE_AUTO) && defined(V4L2_EXPOSURE_MANUAL) && defined(V4L2_CID_EXPOSURE_ABSOLUTE) if(control.id == V4L2_CID_EXPOSURE_AUTO && control.value == V4L2_EXPOSURE_MANUAL) { // update the control range for expose after disabling autoexposure // as it is not read correctly at startup // TODO check this again as it might be fixed with Linux 4.5 v4l2_control_range(capture, V4L2_CID_EXPOSURE_ABSOLUTE); } d188 11 a198 3 /* all was OK */ return true; @ 1.3 log @Update graphics/opencv to 3.3.0. Sync opencv-contrib-face too. Main changes: - DNN module from opencv_contrib was promoted to the main repository, improved and accelerated it a lot. An external BLAS implementation is not needed anymore. For GPU there is experimental DNN acceleration using Halide (http://halide-lang.org). - OpenCV can now be built as C++ 11 library using the flag ENABLE_CXX11. Some cool features for C++ 11 programmers have been added. - We've also enabled quite a few AVX/AVX2 and SSE4.x optimizations in the default build of OpenCV thanks to the feature called 'dynamic dispatching'. The DNN module also has some AVX/AVX2 optimizations. - Intel Media SDK can now be utilized by our videoio module to do hardware-accelerated video encoding/decoding. MPEG1/2, as well as H.264 are supported. - Embedded into OpenCV Intel IPP subset has been upgraded from 2015.12 to 2017.2 version, resulting in ~15% speed improvement in our core & imgproc perf tests. Full release notes: https://github.com/opencv/opencv/wiki/ChangeLog @ text @d1 1 a1 1 $NetBSD: patch-modules_videoio_src_cap__v4l.cpp,v 1.2 2017/03/16 21:59:13 prlw1 Exp $ d5 1 a5 1 --- modules/videoio/src/cap_v4l.cpp.orig 2017-08-03 23:58:23.000000000 +0000 d15 2 a16 1 @@@@ -470,9 +471,13 @@@@ static int autosetup_capture_mode_v4l2(C a17 1 V4L2_PIX_FMT_SN9C10X, a20 2 - V4L2_PIX_FMT_RGB24, - V4L2_PIX_FMT_Y16 d22 5 a26 1 + V4L2_PIX_FMT_RGB24 d28 1 a28 1 + ,V4L2_PIX_FMT_Y16 @ 1.2 log @Update opencv to 3.2 Many Darwin library handling patches removed because of commit 912592de4ce Remove "INSTALL_NAME_DIR lib" target property Full changelog at https://github.com/opencv/opencv/wiki/ChangeLog Highlights: * Results from 11 GSoC 2016 projects have been submitted to the library, 9 of them have been integrated already, 2 still pending (the numbers below are the id's of the Pull Requests in opencv or opencv_contrib repository): + Ambroise Moreau (Delia Passalacqua) - sinusoidal patterns for structured light and phase unwrapping module (711) + Alexander Bokov (Maksim Shabunin) - DIS optical flow (excellent dense optical flow algorithm that is both significantly better and significantly faster than Farneback's algorithm - our baseline), and learning-based color constancy algorithms implementation (689, 708, 722, 736, 745, 747) + Tyan Vladimir (Antonella Cascitelli) - CNN based tracking algorithm (GOTURN) (718, 899) + Vladislav Samsonov (Ethan Rublee) - PCAFlow and Global Patch Collider algorithms implementation (710, 752) + Jo o Cartucho (Vincent Rabaud) - Multi-language OpenCV Tutorials in Python, C++ and Java (7041) + Jiri Horner (Bo Li) - New camera model and parallel processing for stitching pipeline (6933) + Vitaliy Lyudvichenko (Anatoly Baksheev) - Optimizations and improvements of dnn module (707, 750) + Iric Wu (Vadim Pisarevsky) - Base64 and JSON support for file storage (6697, 6949, 7088). Use names like `"myfilestorage.xml?base64"` when writing file storage to store big chunks of numerical data in base64-encoded form. + Edgar Riba (Manuele Tamburrano, Stefano Fabri) - tiny_dnn improvements and integration (720: pending) + Yida Wang (Manuele Tamburrano, Stefano Fabri) - Quantization and semantic saliency detection with tiny_dnn + Anguelos Nicolaou (Lluis Gomez) - Word-spotting CNN based algorithm (761: pending) @ text @d1 1 a1 1 $NetBSD$ d5 1 a5 1 --- modules/videoio/src/cap_v4l.cpp.orig 2016-12-23 12:54:44.000000000 +0000 d15 1 a15 1 @@@@ -469,9 +470,13 @@@@ static int autosetup_capture_mode_v4l2(C d31 1 a31 1 @@@@ -520,12 +525,16 @@@@ static void v4l2_control_range(CvCapture d48 1 a48 1 @@@@ -547,7 +556,9 @@@@ static void v4l2_scan_controls(CvCapture d58 1 a58 1 @@@@ -563,8 +574,10 @@@@ static int v4l2_num_channels(__u32 palet d69 1 a69 1 @@@@ -592,11 +605,13 @@@@ static void v4l2_create_frame(CvCaptureC d83 1 a83 1 @@@@ -1555,18 +1570,21 @@@@ static IplImage* icvRetrieveFrameCAM_V4L d105 1 a105 1 @@@@ -1579,6 +1597,7 @@@@ static IplImage* icvRetrieveFrameCAM_V4L d112 2 a113 2 return(&capture->frame); @@@@ -1596,14 +1615,22 @@@@ static inline __u32 capPropertyToV4L2(in d136 1 a136 1 @@@@ -1749,12 +1776,14 @@@@ static bool icvSetControl (CvCaptureCAM_ @ 1.1 log @NetBSD's v4l2 emulation doesn't currently have focus-related settings, so conditionalize parts. @ text @d3 3 a5 1 --- modules/videoio/src/cap_v4l.cpp.orig 2015-12-18 15:02:16.000000000 +0000 d15 1 a15 1 @@@@ -462,7 +463,9 @@@@ static int autosetup_capture_mode_v4l2(C d21 6 a27 1 V4L2_PIX_FMT_RGB24 d30 7 a36 2 @@@@ -515,9 +518,11 @@@@ static void v4l2_control_range(CvCapture case V4L2_CID_EXPOSURE: d39 1 d48 1 a48 1 @@@@ -539,7 +544,9 @@@@ static void v4l2_scan_controls(CvCapture d58 26 a83 1 @@@@ -1523,12 +1530,14 @@@@ static IplImage* icvRetrieveFrameCAM_V4L d98 18 a115 1 @@@@ -1554,10 +1563,14 @@@@ static inline __u32 capPropertyToV4L2(in d117 5 d123 2 a124 1 return V4L2_CID_EXPOSURE; d136 15 @