From 224b2101987911e5a32480bef9d8bc11e0ed96eb Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 31 Jan 2019 02:05:35 +0000 Subject: [PATCH] Hack in expansion for GBRP10LE. --- src/lib/image.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/lib/image.cc b/src/lib/image.cc index 46c085ff2..47d98ee9c 100644 --- a/src/lib/image.cc +++ b/src/lib/image.cc @@ -140,6 +140,21 @@ Image::crop_scale_window ( DCPOMATIC_ASSERT (out_size.width >= inter_size.width); DCPOMATIC_ASSERT (out_size.height >= inter_size.height); + if (pixel_format() == AV_PIX_FMT_GBRP10LE) { + cout << "oh shit!\n"; + for (int c = 0; c < 3; ++c) { + uint16_t* p = (uint16_t *) data()[c]; + for (int y = 0; y < size().height; ++y) { + uint16_t* q = p; + for (int x = 0; x < size().width; ++x) { + *q = int16_t((*q - 64) * (1024.0 / (940 - 64))); + q++; + } + p += stride()[c] / 2; + } + } + } + /* Here's an image of out_size. Below we may write to it starting at an offset so we get some padding. Hence we want to write in the following pattern: -- 2.30.2