jpegtran man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



     JPEGTRAN(1)       UNIX System V (3 August 1997)	   JPEGTRAN(1)

     NAME
	  jpegtran - lossless transformation of JPEG files

     SYNOPSIS
	  jpegtran [ options ] [ filename ]

     DESCRIPTION
	  jpegtran performs various useful transformations of JPEG
	  files.  It can translate the coded representation from one
	  variant of JPEG to another, for example from baseline JPEG
	  to progressive JPEG or vice versa.  It can also perform some
	  rearrangements of the image data, for example turning an
	  image from landscape to portrait format by rotation.

	  jpegtran works by rearranging the compressed data (DCT
	  coefficients), without ever fully decoding the image.
	  Therefore, its transformations are lossless:	there is no
	  image degradation at all, which would not be true if you
	  used djpeg followed by cjpeg to accomplish the same
	  conversion.  But by the same token, jpegtran cannot perform
	  lossy operations such as changing the image quality.

	  jpegtran reads the named JPEG/JFIF file, or the standard
	  input if no file is named, and produces a JPEG/JFIF file on
	  the standard output.

     OPTIONS
	  All switch names may be abbreviated; for example, -optimize
	  may be written -opt or -o.  Upper and lower case are
	  equivalent.  British spellings are also accepted (e.g.,
	  -optimise), though for brevity these are not mentioned
	  below.

	  To specify the coded JPEG representation used in the output
	  file, jpegtran accepts a subset of the switches recognized
	  by cjpeg:

	  -optimize
	       Perform optimization of entropy encoding parameters.

	  -progressive
	       Create progressive JPEG file.

	  -restart N
	       Emit a JPEG restart marker every N MCU rows, or every N
	       MCU blocks if "B" is attached to the number.

	  -scans file
	       Use the scan script given in the specified text file.

	  See cjpeg(1) for more details about these switches.  If you
	  specify none of these switches, you get a plain baseline-

     Page 1					    (printed 12/16/98)

     JPEGTRAN(1)       UNIX System V (3 August 1997)	   JPEGTRAN(1)

	  JPEG output file.  The quality setting and so forth are
	  determined by the input file.

	  The image can be losslessly transformed by giving one of
	  these switches:

	  -flip horizontal
	       Mirror image horizontally (left-right).

	  -flip vertical
	       Mirror image vertically (top-bottom).

	  -rotate 90
	       Rotate image 90 degrees clockwise.

	  -rotate 180
	       Rotate image 180 degrees.

	  -rotate 270
	       Rotate image 270 degrees clockwise (or 90 ccw).

	  -transpose
	       Transpose image (across UL-to-LR axis).

	  -transverse
	       Transverse transpose (across UR-to-LL axis).

	  The transpose transformation has no restrictions regarding
	  image dimensions.  The other transformations operate rather
	  oddly if the image dimensions are not a multiple of the iMCU
	  size (usually 8 or 16 pixels), because they can only
	  transform complete blocks of DCT coefficient data in the
	  desired way.

	  jpegtran's default behavior when transforming an odd-size
	  image is designed to preserve exact reversibility and
	  mathematical consistency of the transformation set.  As
	  stated, transpose is able to flip the entire image area.
	  Horizontal mirroring leaves any partial iMCU column at the
	  right edge untouched, but is able to flip all rows of the
	  image.  Similarly, vertical mirroring leaves any partial
	  iMCU row at the bottom edge untouched, but is able to flip
	  all columns.	The other transforms can be built up as
	  sequences of transpose and flip operations; for consistency,
	  their actions on edge pixels are defined to be the same as
	  the end result of the corresponding transpose-and-flip
	  sequence.

	  For practical use, you may prefer to discard any
	  untransformable edge pixels rather than having a strange-
	  looking strip along the right and/or bottom edges of a
	  transformed image.  To do this, add the -trim switch:

     Page 2					    (printed 12/16/98)

     JPEGTRAN(1)       UNIX System V (3 August 1997)	   JPEGTRAN(1)

	  -trim
	       Drop non-transformable edge blocks.

	  Obviously, a transformation with -trim is not reversible, so
	  strictly speaking jpegtran with this switch is not lossless.
	  Also, the expected mathematical equivalences between the
	  transformations no longer hold.  For example, -rot 270 -trim
	  trims only the bottom edge, but -rot 90 -trim followed by
	  -rot 180 -trim trims both edges.

	  Another not-strictly-lossless transformation switch is:

	  -grayscale
	       Force grayscale output.

	  This option discards the chrominance channels if the input
	  image is YCbCr (ie, a standard color JPEG), resulting in a
	  grayscale JPEG file.	The luminance channel is preserved
	  exactly, so this is a better method of reducing to grayscale
	  than decompression, conversion, and recompression.  This
	  switch is particularly handy for fixing a monochrome picture
	  that was mistakenly encoded as a color JPEG.	(In such a
	  case, the space savings from getting rid of the near-empty
	  chroma channels won't be large; but the decoding time for a
	  grayscale JPEG is substantially less than that for a color
	  JPEG.)

	  jpegtran also recognizes these switches that control what to
	  do with "extra" markers, such as comment blocks:

	  -copy none
	       Copy no extra markers from source file.	This setting
	       suppresses all comments and other excess baggage
	       present in the source file.

	  -copy comments
	       Copy only comment markers.  This setting copies
	       comments from the source file, but discards any other
	       inessential data.

	  -copy all
	       Copy all extra markers.	This setting preserves
	       miscellaneous markers found in the source file, such as
	       JFIF thumbnails and Photoshop settings.	In some files
	       these extra markers can be sizable.

	  The default behavior is -copy comments.  (Note: in IJG
	  releases v6 and v6a, jpegtran always did the equivalent of
	  -copy none.)

	  Additional switches recognized by jpegtran are:

     Page 3					    (printed 12/16/98)

     JPEGTRAN(1)       UNIX System V (3 August 1997)	   JPEGTRAN(1)

	  -maxmemory N
	       Set limit for amount of memory to use in processing
	       large images.  Value is in thousands of bytes, or
	       millions of bytes if "M" is attached to the number.
	       For example, -max 4m selects 4000000 bytes.  If more
	       space is needed, temporary files will be used.

	  -outfile name
	       Send output image to the named file, not to standard
	       output.

	  -verbose
	       Enable debug printout.  More -v's give more output.
	       Also, version information is printed at startup.

	  -debug
	       Same as -verbose.

     EXAMPLES
	  This example converts a baseline JPEG file to progressive
	  form:

	       jpegtran -progressive foo.jpg > fooprog.jpg

	  This example rotates an image 90 degrees clockwise,
	  discarding any unrotatable edge pixels:

	       jpegtran -rot 90 -trim foo.jpg > foo90.jpg

     ENVIRONMENT
	  JPEGMEM
	       If this environment variable is set, its value is the
	       default memory limit.  The value is specified as
	       described for the -maxmemory switch.  JPEGMEM overrides
	       the default value specified when the program was
	       compiled, and itself is overridden by an explicit
	       -maxmemory.

     SEE ALSO
	  cjpeg(1), djpeg(1), rdjpgcom(1), wrjpgcom(1)
	  Wallace, Gregory K.  "The JPEG Still Picture Compression
	  Standard", Communications of the ACM, April 1991 (vol. 34,
	  no. 4), pp. 30-44.

     AUTHOR
	  Independent JPEG Group

     BUGS
	  Arithmetic coding is not supported for legal reasons.

	  The transform options can't transform odd-size images
	  perfectly.  Use -trim if you don't like the results without

     Page 4					    (printed 12/16/98)

     JPEGTRAN(1)       UNIX System V (3 August 1997)	   JPEGTRAN(1)

	  it.

	  The entire image is read into memory and then written out
	  again, even in cases where this isn't really necessary.
	  Expect swapping on large images, especially when using the
	  more complex transform options.

     Page 5					    (printed 12/16/98)

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net