Thanks for your reply!
I adapted the example from the display window documentation in the Technical Introduction to soft-crop a 4K-FULL (4096x2160px) to a vertically centred 4K-SCOPE (4096x1716px). From what I now understand, the display window should be:
(0,222) — (4095, 1715)
and the data window should be:
(0,0) — (4095, 2159)
With this code:
Box2i dataWindow (V2i (0, 0), V2i (width - 1, height - 1)); Box2i displayWindow (V2i (0, displayHeightOffset), V2i (width - 1, displayHeight - 1));
Everything looks fine with exrheader, photoshop and Mac OS X Mavericks preview. But it crashes Nuke utterly.
Or I could offset negatively the data window (like you suggested) with:
(0,-222) — (4095, 1937)
and the display window should be:
(0,0) — (4095, 1715)
This works everywhere. But then, I get a black band on top of the (full) image and I’m losing data. Should I offset negatively the “pixels” Rgba array? How can an array have a negative offset?
Seems like you aren't writing enough rows - shouldn't you be writing
(height + displayHeightOffset) rows of data in the second
case?
Or perhaps you mean to say dataWindow (V2i (0, 0 - displayHeightOffset),
V2i (width - 1,
height - 1
- displayHeightOffset));
On 18/03/14 08:48, Vincent Olivier
wrote:
Hello,
This is probably very trivial, but I can seem to find a
solution. This code works:
Header
header (width, height);
RgbaOutputFile
file(fileName, header, WRITE_RGB);
file.setFrameBuffer(pixels, 1, width);
file.writePixels(height);
This code doesn’t:
float
DCI_SCOPE_RATIO = 858.0
/ 1080.0;
int
displayHeight = round(height * DCI_SCOPE_RATIO);
int
displayHeightOffset = (height - displayHeight) / 2;
Box2i dataWindow (V2i (0, 0
- displayHeightOffset), V2i (width - 1, height - 1));
Box2i displayWindow (V2i (0, 0),
V2i (width - 1,
displayHeight - 1));
Header header (displayWindow,
dataWindow);
RgbaOutputFile file(fileName, header, WRITE_RGB);
file.setFrameBuffer(pixels, 1, width);
file.writePixels(height);
It
compiles and all, but it writes corrupted OpenEXR files
that are unreadable and that exrheader reports as being
“incomplete”. Is there an obvious problem somewhere?
Thanks!
Vincent
_______________________________________________
Openexr-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/openexr-devel
|