'\" t .\" Title: djxl .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 01/29/2023 .\" Manual: \ \& .\" Source: \ \& .\" Language: English .\" .TH "DJXL" "1" "01/29/2023" "\ \&" "\ \&" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" djxl \- decompress JPEG XL images .SH "SYNOPSIS" .sp \fBdjxl\fR [\fIoptions\fR\&...] \fIinput\&.jxl\fR [\fIoutput\fR] .SH "DESCRIPTION" .sp djxl decompresses a JPEG XL image or animation\&. The output format is determined by the extension of the output file, which can be \&.png, \&.jpg, \&.ppm, \&.pfm\&. If the JPEG XL input file contains an animation, multiple output files will be produced, with names of the form "\fIoutput\fR\-\fBframenumber\fR\&.ext"\&. .SH "OPTIONS" .PP \-V, \-\-version .RS 4 Print version number and exit .RE .PP \-\-num_reps=\fIN\fR .RS 4 Sets the number of times to decompress the image\&. Used for benchmarking, the default is 1\&. .RE .PP \-\-num_threads=\fIN\fR .RS 4 Sets the number of threads to use\&. The default 0 value means the machine default\&. .RE .PP \-\-bits_per_sample=\fIN\fR .RS 4 Sets the output bit depth\&. The default 0 value means the original (input) bit depth\&. .RE .PP \-\-display_nits=\fI0\&.3\-250\fR .RS 4 If set to a non\-zero value, tone maps the image the given peak display luminance\&. .RE .PP \-\-color_space=\fIRGB_D65_SRG_Rel_Lin\fR .RS 4 Defaults to original (input) color space .RE .PP \-s \fIN\fR, \-\-downsampling=\fIN\fR .RS 4 If set and the input JXL stream is progressive and contains hints for target downsampling ratios, the decoder will skip any progressive passes that are not needed to produce a partially decoded image intended for this downsampling ratio\&. .RE .PP \-\-allow_partial_files .RS 4 Allow decoding of truncated files\&. .RE .PP \-j, \-\-pixels_to_jpeg .RS 4 By default, if the input JPEG XL contains a recompressed JPEG file, djxl reconstructs the exact original JPEG file\&. This flag causes the decoder to instead decode the image to pixels and encode a new (lossy) JPEG\&. The output file if provided must be a \&.jpg or \&.jpeg file\&. .RE .PP \-q \fIN\fR, \-\-jpeg_quality=\fIN\fR .RS 4 Sets the JPEG output quality, default is 95\&. Setting an output quality implies \-\-pixels_to_jpeg\&. .RE .sp \-\-norender_spotcolors Disables rendering spot colors\&. .PP \-\-preview_out=\fIFILENAME\fR .RS 4 If specified, writes the preview image to this file\&. .RE .PP \-\-icc_out=\fIFILENAME\fR .RS 4 If specified, writes the ICC profile of the decoded image to this file\&. .RE .PP \-\-orig_icc_out=\fIFILENAME\fR .RS 4 If specified, writes the ICC profile of the original image to this file\&. This can be different from the ICC profile of the decoded image if \-\-color_space was specified, or if the image was XYB encoded and the color conversion to the original profile was not supported by the decoder\&. .RE .PP \-\-metadata_out=\fIFILENAME\fR .RS 4 If specified, writes decoded metadata info to this file in JSON format\&. Used by the conformance test script .RE .PP \-\-print_read_bytes .RS 4 Print total number of decoded bytes\&. .RE .PP \-\-quiet .RS 4 Silence output (except for errors)\&. .RE .PP \-h, \-\-help .RS 4 Displays the options that djxl supports\&. .RE .SH "EXAMPLES" .sp .if n \{\ .RS 4 .\} .nf # Decompress a JPEG XL file to PNG $ djxl input\&.jxl output\&.png # Reconstruct a losslessly\-recompressed JPEG file $ djxl lossless\-jpeg\&.jxl reconstructed\&.jpeg .fi .if n \{\ .RE .\} .sp # Lossless compression .sp Lossless pixel compression only preserves the pixels losslessly, not the input bitstream\&. To check that the pixels are identical, one can do something like the following (if this says 0, then the maximum pixel error is 0, so it\(cqs lossless): .sp .if n \{\ .RS 4 .\} .nf # Lossless compression of PNG: $ cjxl \-d 0\&.0 input\&.png lossless\&.png # Decompress a JPEG XL file to PNG $ djxl lossless\&.jxl lossless\&.png $ compare \-metric pae input\&.png lossless\&.png null: 0 (0) .fi .if n \{\ .RE .\} .SH "SEE ALSO" .sp \fBcjxl\fR(1)