openexr-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Openexr-devel] Writing Deep tiled images: help !


From: Michel Lerenard
Subject: [Openexr-devel] Writing Deep tiled images: help !
Date: Thu, 10 Apr 2014 16:16:02 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130809 Thunderbird/17.0.8

Hi,

I'm trying to write deep data into an EXR file and am having trouble understanding how the API works. I'd like to be able to write tiles from different threads. The application I'm working on (Isotropix Clarisse) runs several threads, each one render a part of an image.
I'd like to write deep data when the current tile is completely computed.

I'm using the "Reading And Writing Image Files" documentation, and the section about Deep Tile File writing on page 26 is confusing to me.

From what I understand, I need a DeepFrameBuffer to write an image. It seems it should be the same for all threads, as a DeepTiledOutputFile can only use one. Is it thread safe ? Can I use the same FrameBuffer from all threads ? I was puzzled by the type of dataZ and data0, reading the next example (reading a deep tiled file) I understand that the arrays are only storing pointers to deep data for a particular pixel, and that they could as well be Array2D<float*>. Is that correct ?

If it is, this means that each one of my threads should set pointers in the framebuffer DeepSlice for each pixel of the tile it's computing, then call writeTile. After that can I delete the data and reset the pointers in the DeepSlice ?


Thanks,

Michel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]