NAME¶
pfsoutexr - Write images or frames in OpenEXR format
SYNOPSIS¶
pfsoutexr [--compression <method>] [--keep-xyz] (<file>
[--frames <range>]) [<file>...]
DESCRIPTION¶
Use this command to write frames in OpenEXR format. Source pfs frames should be
piped to the Standard Input. This command can write arbitrary channels to
OpenEXR, color channels XYZ however are specially handled (see option
keep-xyz).
All tags from pfs stream are stored in an OpenEXR file as String attributes.
Tags assigned to channels are stored in the format
<channel_name>:<tag_name>, so that pfsinexr can later restore tags
in the appropriate channels.
The depth channel
DEPTH is renamed to
Z to keep compatibility with
pfsinexr. If the luminance is absolute (tag
LUMINANCE set to
ABSOLUTE),
WhiteLuminance attribute in OpenEXR file is set to 1.
Details on the format of the pattern file names, which are used for saving
multiple frames, can be found in the manual page of pfsoutppm.
- --compression <method>, -c <method>
- Use one the the available compression methods:
NO - no compression
RLE - run length encoding
ZIPS - zlib compression, one scan line at a time
ZIP - zlib compression, in blocks of 16 scan lines
PIZ - piz-based wavelet compression (default)
PXR24 - lossy 24-bit float compression
- --keep-xyz
- By default, color channels XYZ from pfs stream are converted to RGB color
space and HALF format, which is a standard format for color data in
OpenEXR. Since Half format is 16-bit and floating points values used in
pfs stream are 32-bit, this conversion causes loss of precision. When
keep-xyz option is specified, color channels XYZ are stored as they
are without any conversion (32-bit float XYZ channels). Note however, that
most OpenEXR applications can recognize only RGB Half format images and
can not handle 32-bit XYZ.
- --fix-halfmax
- The maximum value that can be stored in OpenEXR file is limited to 65504
if 16-bit HALF float is used (color channels are stored by default in this
format unless --keep-xyz switch is specified). If the luminance
data is calibrated in absolute values (cd/m^2), pixel values can easily
exceed 65504. To avoid clamping large pixel values, pfsoutexr can rescale
data to the range that is valid for 16-bit HALF float format when
--fix-halfmax switch is specified. If this switch is missing, a
warning message is displayed. Scale factor used for rescaling is stored in
OpenEXR file as OpenEXR standard attribute WhiteLuminance, so that
pfsinexr can later restore the absolute values.
EXAMPLES¶
-
pfsin memorial.hdr | pfsoutexr memorial.exr
-
Converts from one HDR format to another
SEE ALSO¶
pfsout(1) pfsoutppm(1) pfsinexr(1)
BUGS¶
pfsinexr and pfsoutexr can not take stdin / stdout as an input/output (dash '-'
instead of file name).
Please report bugs and comments on implementation to the discussion group
http://groups.google.com/group/pfstools