From 79cfef49ff2d044ad838ea886f571629f2961ff7 Mon Sep 17 00:00:00 2001 From: Akash A Date: Sun, 23 Nov 2025 12:13:54 +0000 Subject: [PATCH] imgcodecs: avif: set matrixCoefficients to UNSPECIFIED for monochrome images Fixes issue with libavif >= 1.3.0 where subsampling with identity matrix coefficients is invalid. Aligns OpenCV AVIF writer with updated libavif conformance rules. --- modules/imgcodecs/src/grfmt_avif.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/imgcodecs/src/grfmt_avif.cpp b/modules/imgcodecs/src/grfmt_avif.cpp index 35b4411b3b..36f7cdd58f 100644 --- a/modules/imgcodecs/src/grfmt_avif.cpp +++ b/modules/imgcodecs/src/grfmt_avif.cpp @@ -86,7 +86,7 @@ AvifImageUniquePtr ConvertToAvif(const cv::Mat &img, bool lossless, int bit_dept result->yuvFormat = AVIF_PIXEL_FORMAT_YUV400; result->colorPrimaries = AVIF_COLOR_PRIMARIES_UNSPECIFIED; result->transferCharacteristics = AVIF_TRANSFER_CHARACTERISTICS_UNSPECIFIED; - result->matrixCoefficients = AVIF_MATRIX_COEFFICIENTS_IDENTITY; + result->matrixCoefficients = AVIF_MATRIX_COEFFICIENTS_UNSPECIFIED; result->yuvRange = AVIF_RANGE_FULL; result->yuvPlanes[0] = img.data; result->yuvRowBytes[0] = img.step[0];