This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:

Subject: edid-decode: warn on base vs NVRDB Image Size mismatches
Author:  Hans Verkuil <[email protected]>
Date:    Tue Jul 14 08:56:12 2026 +0200

Warn if the aspect ratio of the two Image Sizes do not match.
Warn if the NVRDB Image Size indicated a display with width > 255 cm:
if so, then recommend the base Image Size width is set to 255 cm.

Signed-off-by: Hans Verkuil <[email protected]>

 utils/edid-decode/parse-base-block.cpp | 8 ++++++++
 utils/edid-decode/parse-cta-block.cpp  | 3 +++
 2 files changed, 11 insertions(+)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=d3c29f9545af50f6c79e9ce2062a8dd2d25f76fa
diff --git a/utils/edid-decode/parse-base-block.cpp 
b/utils/edid-decode/parse-base-block.cpp
index a2e32886d782..27942a022195 100644
--- a/utils/edid-decode/parse-base-block.cpp
+++ b/utils/edid-decode/parse-base-block.cpp
@@ -1652,13 +1652,21 @@ void edid_state::parse_base_block(const unsigned char 
*x)
                       factor == 5 ? " (HDMI VSDB indicates 5 cm units)" : "");
                base.max_display_width_mm = x[0x15] * 10 * factor;
                base.max_display_height_mm = x[0x16] * 10 * factor;
+
                if (base.max_display_width_mm * 10 > image_width ||
                    base.max_display_height_mm * 10 > image_height) {
                        image_width = base.max_display_width_mm * 10;
                        image_height = base.max_display_height_mm * 10;
                }
+
                if (cta.preparsed_image_size >= hdmi_image_size_rounded)
                        has_valid_image_size = true;
+
+               if (cta.preparsed_image_size == hdmi_image_size_ratio &&
+                   (image_width > 25500 || image_height > 25500) &&
+                   base.max_display_width_mm != 2550 && 
base.max_display_height_mm != 2550)
+                       warn("For displays > 255 cm it is recommended to set 
the image width or height to 255 cm.\n");
+
                if (x[0x15] < 10 || x[0x16] < 10)
                        warn("Dubious maximum image size (%ux%u is smaller than 
%ux%u cm).\n",
                             x[0x15] * factor, x[0x16] * factor,
diff --git a/utils/edid-decode/parse-cta-block.cpp 
b/utils/edid-decode/parse-cta-block.cpp
index 6352b6308379..4e11898ffbdc 100644
--- a/utils/edid-decode/parse-cta-block.cpp
+++ b/utils/edid-decode/parse-cta-block.cpp
@@ -960,6 +960,9 @@ void edid_state::cta_nvrdb(const unsigned char *x, unsigned 
length)
        printf("    Image Size: %.1fx%.1f mm\n", w / 10.0, h / 10.0);
        if (w <= 25500 && h <= 25500)
                warn("Image Size should only be used for large displays with 
width and/or height > 255 cm\n");
+       int base_height = base.max_display_width_mm * 10 * h / w;
+       if (abs(base_height - (int)base.max_display_height_mm * 10) > 100 && 
cta.preparsed_image_size == hdmi_image_size_ratio)
+               warn("Base Image Size has different ratio compared to the NVRDB 
Image Size.\n");
        cta.nvrdb_has_size = true;
 }
 
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to