summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-03-19 21:53:20 +0100
committerCarl Hetherington <cth@carlh.net>2025-03-19 21:53:20 +0100
commit8fb9468aff13b6840fb02a8a899e314b79395f5d (patch)
treeffb1fce61851c80c1345580645e33feec1e3ae05 /src/lib
parent4ddd6052b00a07583fda682730dde3c3d1206d1b (diff)
Fix auto-crop with DCPs (#2999).
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/guess_crop.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/guess_crop.cc b/src/lib/guess_crop.cc
index 7089d245d..7213eb668 100644
--- a/src/lib/guess_crop.cc
+++ b/src/lib/guess_crop.cc
@@ -109,6 +109,16 @@ guess_crop_by_brightness(shared_ptr<const Image> image, double threshold)
}
break;
}
+ case AV_PIX_FMT_XYZ12LE:
+ {
+ uint16_t const* data = reinterpret_cast<uint16_t*>(image->data()[0] + (start_x * 6) + (start_y * image->stride()[0]));
+ for (int p = 0; p < pixels; ++p) {
+ /* Just using Y */
+ brightest = std::max(brightest, static_cast<double>(data[1]) / 4096);
+ data += rows ? 3 : (image->stride()[0] / 2);
+ }
+ break;
+ }
default:
throw PixelFormatError("guess_crop_by_brightness()", image->pixel_format());
}