Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
JPEGOPTIM(1)		    General Commands Manual		  JPEGOPTIM(1)

       jpegoptim - utility to optimize/compress	JPEG/JFIF files.

       jpegoptim [ options ] [ filenames ]

       jpegoptim  is  used  to	optimize/compress jpeg files. Program supports
       lossless	optimization, which is based on	optimizing the Huffman tables.
       And  so	called	"lossy"	 optimization  where in	addition to optimizing
       Huffman tables user can specify upperlimit for image quality.

       NOTE! By	default	jpegoptim modifies the input files (if they are	 opti-
       mized),	to  preserve original files use	option -d to specify alternate
       directory for saving the	optimized files	to.

       Only normal files are optimized (symbolic links and special  files  are
       skipped).   Also,  any other hard links to the file being optimized (as
       created using link(2)) are unaffected.

       Options may be either the traditional POSIX one letter options, or  the
       GNU style long options.	POSIX style options start with a single	``-'',
       while GNU long options start with ``--''.

       Options offered by jpegoptim are	the following:

       -d<path>, --dest=<path>
	     Sets alternative destination directory where  to  save  optimized
	     files  (default  is to overwrite the originals). Please note that
	     unchanged files won't be added to the destination directory. This
	     means  if	the  source  file can't	be compressed, no file will be
	     created in	the destination	path.

       -f, --force
	     Force optimization, even if the result would be larger  than  the
	     original file.

       -h, --help
	     Displays short usage information and exits.

       -m<quality>, --max=<quality>
	     Sets  the	maximum	 image quality factor (disables	lossless opti-
	     mization mode, which is by	default	enabled). This option will re-
	     duce  quality  of those source files that were saved using	higher
	     quality setting.  While files that	 already  have	lower  quality
	     setting  will  be	compressed  using  the	lossless  optimization

	     Valid values for quality parameter	are: 0 - 100

       -n, --noaction
	     Don't really optimize files, just print results.

       -S<size>, --size=<size>
	     Try to optimize file to given size	(disables  lossless  optimiza-
	     tion  mode). Target size is specified either in kilobytes (1 - n)
	     or	as percentage (1% - 99%) of the	original file size.

       -T<threshold>, --threshold=<threshold>
	     Keep the file unchanged if	the compression	gain is	lower than the
	     threshold (%).

	     Valid values for threshold	are: 0 - 100

       -b, --csv
	     Print progress info in CSV	format.

       -o, --overwrite
	     Overwrite target file even	if it exists (when using -d option).

       -p, --preserve
	     Preserve file modification	times.

       -P, --preserve-perms
	     Preserve file permissions (owner/group) by	overwriting the	origi-
	     nal file. This is slightly	less safe than the default mode	of op-
	     eration (where new	file is	first saved as temporary file and then
	     renamed over the original file).  In this mode a  backup  of  the
	     original  file  is	 made  with .jpegoptim.bak extension, and this
	     file is removed after the original	file has been successfully re-
	     placed.  NOTE! if running jpegoptim as root there is generally no
	     need to use this option, as jpegoptim is able  to	preserve  file
	     permissions when run by root in default mode.

       -q, --quiet
	     Quiet mode.

       -t, --totals
	     Print totals after	processing all files.

       -v, --verbose
	     Enables verbose mode (positively chatty).

	     Force all output files to be non-progressive. Can be used to con-
	     vert all input files to progressive JPEGs when used with  --force

	     Force  all	output files to	be progressive.	Can be used to convert
	     all normal	(non-progressive) JPEGs	 input	files  to  progressive
	     when used with --force option.

       -s, --strip-all
	     Strip  all	 markers from output file. (NOTE! by default only Com-
	     ment & Exif/IPTC/PhotoShop/ICC/XMP	markers	are  kept,  everything
	     else  is  discarded).  Output JPEG	still likely will contains one
	     or	two markers (JFIF and Adobe  APP14)  depending	on  colorspace
	     used  in the image, as these markers are generated	by the libjpeg
	     encoder automatically.

	     Preserve "all" markers in the image. This will leave all  markers
	     untouched	in  the	 image,	 except	 JFIF (APP0) and Adobe (APP14)
	     markers as	those get regenerated by the libjpeg library.

	     Strip Comment (COM) markers from output file.

	     Strip EXIF	markers	from output file.

	     Strip IPTC	/ Adobe	Photoshop (APP13) markers from output file.

	     Strip ICC profiles	from output file.

	     Strip XMP profiles	from output file.

	     Send output image	to  standard  output.  Note,  if  optimization
	     didn't  create  smaller  file than	the input file,	then no	output
	     (image) is	sent to	standard output. (Option -f  can  be  used  to
	     force  output  of	image  always, even if optimized image was not
	     smaller than input).

	     Read input	image from standard input. When	this  option  is  used
	     then only one image is read from standard output. Any (other) in-
	     put files specified on command line are ignored.  Note, if	 input
	     file  '-' is seen on command line then standard input is also as-

	     Currently this option will	explicitly enable -f option, thus out-
	     put image is always sent to standard output (even if no optimiza-
	     tion was possible).

       When using --size option, resulting file	is not always exactly the  re-
       quested	size. Workaround is to re-run jpegoptim	on the same file again
       which often will	result file closer to target size.


       Timo Kokkonen <>

       Copyright (C) 1996-2018	Timo Kokkonen

       This program is free software; you can redistribute it and/or modify it
       under  the  terms of the	GNU General Public License as published	by the
       Free Software Foundation; either	version	2 of the License, or (at  your
       option) any later version.
	This  program  is  distributed in the hope that	it will	be useful, but
       WITHOUT ANY  WARRANTY;  without	even  the  implied  warranty  of  MER-
       Public License for more details.
	You should have	received a copy	of  the	 GNU  General  Public  License
       along with this program;	if not,	write to the Free Software Foundation,
       Inc., 51	Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

4th Berkeley Distribution	  17 Apr 2018			  JPEGOPTIM(1)


Want to link to this manual page? Use this URL:

home | help