
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>
  <title>ImageMagick: Command-line Tools: Stream</title/>
  <meta http-equiv="Content-Language" content="en-US"/>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
  <meta name="Application-name" content="ImageMagick"/>
  <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
  <meta name="Application-url" content="http://www.imagemagick.org"/>
  <meta name="Generator" content="PHP"/>
  <meta name="Keywords" content="command-line, tools:, stream, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
  <meta name="Rating" content="GENERAL"/>
  <meta name="Robots" content="INDEX, FOLLOW"/>
  <meta name="Generator" content="ImageMagick Studio LLC"/>
  <meta name="Author" content="ImageMagick Studio LLC"/>
  <meta name="Revisit-after" content="2 DAYS"/>
  <meta name="Resource-type" content="document"/>
  <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
  <meta name="Distribution" content="Global"/>
  <link rel="icon" href="../images/wand.png"  sizes="32x32"/>
  <link rel="shortcut icon" href="../images/wand.ico"  type="images/x-icon"/>
  <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
  <style type="text/css" media="all">
    @import url("../www/magick.css");
  </style>
</head>

<body id="www-imagemagick-org">
<div class="titlebar">
<a href="../index.html">
  <img src="../images/script.png" alt="[ImageMagick]"
  style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
<a href="http://www.networkredux.com">
  <img src="../images/networkredux.png" alt="[sponsor]"
  style="margin: 45px auto; border: 0px; float: left;" /></a>
<a href="http://www.imagemagick.org/discourse-server/">
  <img src="../images/logo.jpg" alt=""
  style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
<a href="../index.html">
  <img src="../images/sprite.jpg" alt=""
  style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
</div>

<div class="westbar">

<div class="menu">
  <a title="About ImageMagick" href="../index.html">About ImageMagick</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Binary Releases" href="../www/binary-releases.html">Binary Releases</a>
</div>
<div class="sub">
    <a title="Binary Release: Unix" href="../www/binary-releases.html#unix">Unix</a>
</div>
<div class="sub">
    <a title="Binary Release: MacOS X" href="../www/binary-releases.html#macosx">Mac OS X</a>
</div>
<div class="sub">
    <a title="Binary Release: Windows" href="../www/binary-releases.html#windows">Windows</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Command-line Tools" href="../www/command-line-tools.html">Command-line Tools</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Processing" href="../www/command-line-processing.html">Processing</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Options" href="../www/command-line-options.html">Options</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
</div>
<div class="menu">
  <a title="Program Interfaces" href="../www/api.html">Program Interfaces</a>
</div>
<div class="sub">
    <a title="Program Interface: MagickWand" href="../www/magick-wand.html">MagickWand</a>
</div>
<div class="sub">
    <a title="Program Interface: MagickCore" href="../www/magick-core.html">MagickCore</a>
</div>
<div class="sub">
    <a title="Program Interface: PerlMagick" href="../www/perl-magick.html">PerlMagick</a>
</div>
<div class="sub">
    <a title="Program Interface: Magick++" href="../Magick++/">Magick++</a>
</div>
<div class="sep"></div>
<div  class="menu">
   <a title="Install from Source" href="../www/install-source.html">Install from Source</a>
</div>
<div class="sub">
    <a title="Install from Source: Unix" href="../www/install-source.html#unix">Unix</a>
</div>
<div class="sub">
    <a title="Install from Source: Windows" href="../www/install-source.html#windows">Windows</a>
 </div>
<div class="menu">
  <a title="Resources" href="../www/resources.html">Resources</a>
</div>
<div class="menu">
  <a title="Architecture" href="../www/architecture.html">Architecture</a>
</div>
<div class="menu">
  <a title="Download" href="../www/download.html">Download</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Search" href="http://www.imagemagick.org/script/search.php">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Site Map"href="../www/sitemap.html">Site Map</a>
</div>
<div  class="sub">
    <a title="Site Map: Links"href="../www/links.html">Links</a>
</div>
<div class="sep"></div>
<div  class="menu">
  <a title="Sponsors" href="../www/sponsors.html">Sponsors:</a>

<div class="sponsbox">
<div  class="sponsor">
   <a title="Sponsor: Webdesign" href="http://www.renehornig.com/">Webdesign</a><!-- 20111001000240 -->
</div>
<div  class="sponsor">
  <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
</div>
<div  class="sponsor">
  <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
</div>
<div  class="sponsor">
  <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
</div>
<div  class="sponsor">
  <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
</div>
<div  class="sponsor">
  <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
</div>
<div  class="sponsor">
   <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
</div>
</div>
</div>

<div class="eastbar">
  <script type="text/javascript">
  <!--
    google_ad_client = "pub-3129977114552745";
    google_ad_slot = "0574824969";
    google_ad_width = 160;
    google_ad_height = 600;
  //-->
  </script>
  <script type="text/javascript"
    src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
  </script>
</div>

<div class="main">

<p class="navigation-index">[<a href="#usage">Example Usage</a> &bull; <a href="#options">Option Summary</a>]</p>

<div class="doc-section">
<p><kbd>Stream</kbd> 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 <kbd>stream</kbd> desirable when working with large images or when you require raw pixel components.</p>
</div>

<h2><a name="usage"></a>Example Usage</h2>
<div class="doc-section">

<p>We list a few examples of the <kbd>stream</kbd> 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:</p>

<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>stream -map rgb -storage-type char image.jpg pixels.dat</span><span class='crtout'></span><span class="crtprompt"> $magick&gt; </span><span class='crtin'>display -depth 8 -size 640x480 rgb:pixels.dat</span></p>
<p>Here we extract a 100x100 region from a TIFF image in the grayscale format as doubles:</p>

<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>stream -map i -storage-type double -extract 100x100+30+40 image.tif gray.raw</span></p>
<p>You can also associate the region to extract with the image filename:</p>

<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>stream -map i -storage-type double 'image.tif[100x100+30+40]' gray.raw</span></p>
</div>

<h2><a name="options"></a>Option Summary</h2>
<div class="doc-section">

<p>The <kbd>stream</kbd> command recognizes these options.  Click on an option to get more details about how that option works.</p>

<table class="doc">
  <tbody>
  <tr>
    <th align="left">Option</th>
    <th align="left">Description</th>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#authenticate">-authenticate <em class="option">value</em></a></td>
    <td valign="top">decrypt image with this password</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#channel">-channel <em class="option">type</em></a></td>
    <td valign="top">apply option to select image channels</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#colorspace">-colorspace <em class="option">type</em></a></td>
    <td valign="top">set image colorspace</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#debug">-debug <em class="option">events</em></a></td>
    <td valign="top">display copious debugging information</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#define">-define <em class="option">format:option</em></a></td>
    <td valign="top">define one or more image format options</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#density">-density <em class="option">geometry</em></a></td>
    <td valign="top">horizontal and vertical density of the image</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#depth">-depth <em class="option">value</em></a></td>
    <td valign="top">image depth</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#extract">-extract <em class="option">geometry</em></a></td>
    <td valign="top">extract area from image</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#help">-help</a></td>
    <td valign="top">print program options</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#interlace">-interlace <em class="option">type</em></a></td>
    <td valign="top">type of image interlacing scheme</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#interpolate">-interpolate <em class="option">method</em></a></td>
    <td valign="top">pixel color interpolation method</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#limit">-limit <em class="option">type value</em></a></td>
    <td valign="top">pixel cache resource limit</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#list">-list <em class="option">type</em></a></td>
    <td valign="top">Color, Configure, Delegate, Format, Magic, Module, Resource, or Type</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#log">-log <em class="option">format</em></a></td>
    <td valign="top">format of debugging information</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#stream-map">-map <em class="option">components</em></a></td>
    <td valign="top">store pixels in this format.</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#monitor">-monitor</a></td>
    <td valign="top">monitor progress</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#quantize">-quantize <em class="option">colorspace</em></a></td>
    <td valign="top">reduce image colors in this colorspace</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#quiet">-quiet</a></td>
    <td valign="top">suppress all warning messages</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#regard-warnings">-regard-warnings</a></td>
    <td valign="top">pay attention to warning messages.</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#respect-parentheses">-respect-parentheses</a></td>
    <td valign="top">settings remain in effect until parenthesis boundary.</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#sampling-factor">-sampling-factor <em class="option">geometry</em></a></td>
    <td valign="top">horizontal and vertical sampling factor</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#seed">-seed <em class="option">value</em></a></td>
    <td valign="top">seed a new sequence of pseudo-random numbers</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#set">-set <em class="option">attribute value</em></a></td>
    <td valign="top">set an image attribute</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#size">-size <em class="option">geometry</em></a></td>
    <td valign="top">width and height of image</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#storage-type">-storage-type <em class="option">type</em></a></td>
    <td valign="top">store pixels with this storage type.</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#transparent-color">-transparent-color <em class="option">color</em></a></td>
    <td valign="top">transparent color</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#verbose">-verbose</a></td>
    <td valign="top">print detailed information about the image</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#version">-version</a></td>
    <td valign="top">print version information</td>
  </tr>

  <tr>
    <td valign="top"><a href="../www/command-line-options.html#virtual-pixel">-virtual-pixel <em class="option">method</em></a></td>
    <td valign="top">access method for pixels outside the boundaries of the image</td>
  </tr>

  </tbody>
</table>

</div>

</div>

<div id="linkbar">
    <span id="linkbar-west">&nbsp;</span>
    <span id="linkbar-center">
      <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
      <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
    </span>
    <span id="linkbar-east">&nbsp;</span>
  </div>
  <div class="footer">
    <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
    <span id="footer-east"> <a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
  </div>
  <div style="clear: both; margin: 0; width: 100%; "></div>
  <script type="text/javascript">
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-17690367-1']);
    _gaq.push(['_trackPageview']);

    (function() {
      var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();
  </script>
</body>
</html>
