DOKK / manpages / debian 12 / libjxl-devtools / benchmark_xl.1.en
BENCHMARK_XL(1) User Commands BENCHMARK_XL(1)

benchmark_xl - benchmark_xl

benchmark_xl [OPTIONS...]

benchmark_xl v0.7.0 [AVX2,SSE4,SSSE3,Unknown]

--input=<string>

File or file pattern matching input files.

--codec=<string>

Comma separated list of image codec descriptions to benchmark.

--print_details

--noprint_details

Prints size and distortion for each image. Not safe for concurrent benchmark runs.

--print_details_csv

--noprint_details_csv

When print_details is used, print as CSV.

--extra_metrics=<string>

Extra metrics to be computed. Only displayed with --print_details or --print_details_csv. Comma-separated list of NAME:COMMAND pairs; COMMAND is invoked with the original image as the first argument, the decompressed image as a second argument, and the name of the file where to write the metric value (as a single floating point number) as the third argument.

--print_more_stats

--noprint_more_stats

Prints codec-specific stats. Not safe for concurrent benchmark runs.

--print_distance_percentiles

--noprint_distance_percentiles

Prints distance percentiles for the corpus. Not safe for concurrent benchmark runs.

--silent_errors

--nosilent_errors

If true, doesn't print error messages on compression or decompression errors. Errors counts are still visible in the 'Errors' column of the result table. Please note that depending depending on the JXL build settings, error messages and asserts from within the codec may be printed irrespective of this flag anyway, use release build to ensure no messages.

--save_compressed

--nosave_compressed

Saves the compressed files for each input image and each codec.

--save_decompressed

--nosave_decompressed

Saves the decompressed files as PNG for each input image and each codec.

--output_extension=<string>

Extension (starting with dot) to use for saving output images.

--output_description=<string>

defaults to sRGB.

--intensity_target=<scalar>

Intended viewing intensity target in nits. Defaults to 255 for SDR images, 4000 for HDR images (when the input image uses PQ or HLG transfer function)

--dec-hints=<string>

Color encoding hints for the input images to encoder. Comma separated key=value pairs. The key color_space indicates ColorEncoding (see ParseDescription; e.g. RGB_D65_SRG_Rel_709) for input images without color encoding (such as PNM)

--override_bitdepth=<unsigned>

If nonzero, store the given bit depth in the JPEG XL file metadata (1-32), instead of using the bit depth from the original input image.

--mul_output=<scalar>

If nonzero, multiplies linear sRGB by this and clamps to 255

--heatmap_good=<scalar>

If greater than zero, use this as the good threshold for creating heatmap images.

--heatmap_bad=<scalar>

If greater than zero, use this as the bad threshold for creating heatmap images.

--write_html_report

--nowrite_html_report

Creates an html report with original and compressed images.

--html_report_self_contained

--nohtml_report_self_contained

Base64-encode the images in the HTML report rather than use external file names. May cause very large HTML data size.

--markdown

--nomarkdown

Adds formatting around ASCII table to render correctly in Markdown based interfaces

--more_columns

--nomore_columns

Print extra columns in the table

--originals_url=<string>

Url prefix to serve original images from in the html report.

--output_dir=<string>

If not empty, save compressed and decompressed images here.

--num_threads=<integer>

The number of threads for concurrent benchmarking. Defaults to 1 thread per CPU core (if negative).

--inner_threads=<integer>

The number of extra threads per task. Defaults to occupy cores (if negative).

--encode_reps=<unsigned>

How many times to encode (>1 for more precise measurements). Defaults to 1.

--decode_reps=<unsigned>

How many times to decode (>1 for more precise measurements). Defaults to 1.

--sample_tmp_dir=<string>

Directory to put samples from input images.

--num_samples=<integer>

How many sample areas to take.

--sample_dimensions=<integer>

How big areas to sample from the input.

--error_pnorm=<scalar>

smallest p norm for pooling butteraugli values

--hf_asymmetry=<scalar>

Multiplier for weighting HF artefacts more than features being smoothed out. 1.0 means no HF asymmetry. 0.3 is a good value to start exploring for asymmetry.

--profiler

--noprofiler

If true, print profiler results.

--show_progress

--noshow_progress

Show activity dots per completed file during benchmark.

--skip_butteraugli

--noskip_butteraugli

If true, doesn't compute distance metrics, only compression and decompression speed and size. Distance numbers shown in the table are invalid.

--decode_only

--nodecode_only

If true, only decodes, and the input files must be compressed with a compatible format for the given codec(s). Only measures decompression speed and sizes, and can only use a single set of compatible decoders. Distance numbers and compression speeds shown in the table are invalid.

--custom_codec_extension=<string>

Converts input and output of codec to this file type (default: png).

--custom_codec_colorspace=<string>

If not empty, converts input and output of codec to this colorspace.

--custom_codec_quiet

--nocustom_codec_quiet

Whether stdin and stdout of custom codec should be shown.

--xmul=<scalar>

Multiplier for the difference in X channel in Butteraugli.

--quant_bias=<scalar>

Bias border pixels during quantization by this ratio.

--use_ac_strategy

--nouse_ac_strategy

If true, AC strategy will be used.

--qprogressive

--noqprogressive

Enable quantized progressive mode for AC.

--progressive

--noprogressive

Enable progressive mode for AC.

--progressive_dc=<integer>

Enable progressive mode for DC.

--noise=0|1

Enable(1)/disable(0) noise generation.

--dots=0|1

Enable(1)/disable(0) dots generation.

--patches=0|1

Enable(1)/disable(0) patch dictionary.

--log_search_state

--nolog_search_state

Print out debug info for tortoise mode AQ loop.

--debug_image_dir=<string>

If not empty, saves debug images for each input image and each codec that provides it to this directory.

--avif_chroma_subsampling=444/422/420/400

default AVIF chroma subsampling (default: 444).

-h, --help

Prints this help message.

This manual page was written by Mathieu Malaterre <malat@debian.org> for the Debian GNU/Linux system (but may be used by others).

January 2023 benchmark_xl 0.7.0