ImageMagick – Command-line Tools: Stream
Author: ImageMagick Studio LLC
Description: Create, Edit, Compose, or Convert Digital Images
Keywords: command-line, tools:, stream, image processing software

# Streaming Interface

Example Usage • Option Summary

`Stream` is a lightweight tool to stream one or more pixel components of the image or portion of the image to your choice of storage formats. It writes the pixel components as they are read from the input image a row at a time making `stream` desirable when working with large images or when you require raw pixel components.

## Example Usage

We list a few examples of the `stream` command here to illustrate its usefulness and ease of use. To get started, lets stream the red, green, blue components of a 640x480 JPEG image to disk as unsigned characters:

    magick stream -map rgb -storage-type char image.jpg pixels.dat
    magick display -depth 8 -size 640x480 rgb:pixels.dat

Here we extract a 100x100 region from a TIFF image in the grayscale format as doubles:

    magick stream -map i -storage-type double -extract 100x100+30+40 image.tif gray.raw

You can also associate the region to extract with the image filename:

    magick stream -map i -storage-type double 'image.tif[100x100+30+40]' gray.raw

Streaming requires that the image coder read the image pixels in row order. Not all formats adhere to this requirement. Verify a particular image format first, before you utilize streaming in your workflow.

## Option Summary

The `stream` command recognizes these options. Click on an option to get more details about how that option works.

Option | Description
--- | ---
-authenticate value | decrypt image with this password
-channel type | apply option to select image channels
-colorspace type | set image colorspace
-debug events | display copious debugging information
-define format:option | define one or more image format options
-density geometry | horizontal and vertical density of the image
-depth value | image depth
-extract geometry | extract area from image
-help | print program options
-interlace type | type of image interlacing scheme
-interpolate method | pixel color interpolation method
-limit type value | pixel cache resource limit
-list type | Color, Configure, Delegate, Format, Magic, Module, Resource, or Type
-log format | format of debugging information
-map components | store pixels in this format.
-monitor | monitor progress
-quantize colorspace | reduce image colors in this colorspace
-quiet | suppress all warning messages
-regard-warnings | pay attention to warning messages.
-respect-parentheses | settings remain in effect until parenthesis boundary.
-sampling-factor geometry | horizontal and vertical sampling factor
-seed value | seed a new sequence of pseudo-random numbers
-set attribute value | set an image attribute
-size geometry | width and height of image
-storage-type type | store pixels with this storage type.
-synchronize | synchronize image to storage device
-taint | mark the image as modified
-transparent-color color | transparent color
-verbose | print detailed information about the image
-version | print version information
-virtual-pixel method | access method for pixels outside the boundaries of the image