sho - display an image from any supported image file format


sho [options] file...


sho brings image(s) from a large variety of image file formats into a frame buffer. sho automatically determines and decodes the file format, so the user does not need to know the format. New options can be used before each filename.

sho can read images from stdin, using a filename -. However, some file formats do not have well-defined end-of-file characteristics, so it is often not possible to read more than one file from stdin from a single command line.

Some file formats include multiple images in the same file. For example, texture files contain copies of the image at multiple resolutions. Such alternate images can be read by appending ,n to the filename where n is a small integer that identifies the n-th image in the file.

sho was rewritten for RPS 16 and is now based on IceMan.

The current release of sho can read the following image file formats:

Pixar DeepData
Pixar Texture


-ch #,#:#
output in the specified channel order. Channels named RGBA are always numbered 1,2,3,4 (even in OpenEXR where it reverse-sorts the alphabetical order). The channel selection works similar to a Python slice, i.e.: -ch 7-4, shows channel 7 as R, 6 as G, 5 as B, and 4 as A.
instead of loading the image, just print the image's vital statistics.
-sleep secs
pause for n seconds between images
prints the image filenames as the images are loaded.
prints this help
prints the version information
prints the supported image formats
-dspy driver
Use the specified display driver. This can be used to do rudimentary file conversions and channel reordering. If you specify a different driver, you must use the -dspyfile parameter to specify a file name, to make sure that you don't accidentally overwrite your original file.
-dspyfile file
output to specified filename.
Sends the data to the display driver in the native data format. If the image contains floating point information, that is what is used. Otherwise the data will be quantized to an unsigned 8-bit format.

sho is not as general as the various dspy programs that it may seem to replace.


sho foo.tif
Simply reads foo.tif into the framebuffer.
sho -info *.exr
Prints some statistics of all the .exr files.
sho myEnv.tex,2
Shows the 2nd level of the mipmap in the myEnv texture file.
sho -native myEnv.exr
Shows a 32-bit floating point version of the file myEnv.exr.
sho -native myEnv.exr
Shows a 32-bit floating point version of the file myEnv.exr.
sho -ch 0 -dspy tiff -dspyfile myEnvR.tif myEnv.exr
Extract the red channel from myEnv.exr and place it in a tiff file.


sho uses the RenderMan dspyserver to handle window stuff.