darktable-cli man page

darktable-cli — a command line darktable variant


    darktable-cli IMG_1234.{RAW,...} [<xmp file>] <output file> [options] [--core <darktable options>]


    --width <max width>
    --height <max height>
    --bpp <bpp>
    --hq <0|1|true|false>
    --upscale <0|1|true|false>


darktable is a digital photography workflow application for Linux, Mac OS X and several other Unices. It's described further in darktable(1).

darktable-cli is a command line variant to be used to export images given the raw file and the accompanying xmp file.


The user needs to supply an input filename and an output filename. All other parameters are optional.

<input file>

The name of the input file to export.

<xmp file>

The optional name of an XMP sidecar file containing the history stack data to be applied during export. If this option is not given darktable will search for an XMP file that belongs to the given input file.

<output file>

The name of the output file. darktable derives the export file format from the file extension. You can also use all the variables available in darktable's export module in the output filename.

--width <max width>

This optional parameter allows one to limit the width of the exported image to that number of pixels.

--height <max height>

This optional parameter allows one to limit the height of the exported image to that number of pixels.

--bpp <bpp>

An optional parameter to define the bit depth of the exported image; allowed values depend on the file format. Currently this option is not yet functional. If you need to define the bit depth you need to use the following workaround:

    --core --conf plugins/imageio/format/<FORMAT>/bpp=<VALUE>

where FORMAT is the name of the selected output format, for example png.

--hq <0|1|true|false>

A flag that defines whether to use high quality resampling during export. Defaults to true.

--upscale <0|1|true|false>

A flag that defines whether to allow upscaling during export. Defaults to false.


Enables verbose output.

--core <darktable options>

All command line parameters following --core are passed to the darktable core and handled as standard parameters. See darktable(1) for a detailed description of the options.

See Also



The principal developer of darktable is Johannes Hanika. The (hopefully) complete list of contributors to the project is:

* developers: Roman Lebedev, Tobias Ellinghaus, Peter Budai, johannes hanika, Ulrich Pegelow, Stefan Schöfegger, Pascal Obry, parafin, Jérémy Rosen, Christian Tellefsen, Alexandre Prokoudine.

* translators: Pascal Obry, Ger Siemerink, Michel Leblond, Tobias Ellinghaus, shlomi braitbart, tatica, Novy Sawai, Alexandre Prokoudine, Germano Massullo, Báthory Péter, Josep V. Moragues, Matjaž Jeran, Matthieu Moy, Tomasz Golinski, Ulrich Pegelow, johannes hanika.

* contributors (at least 4 commits): Dan Torop, Ger Siemerink, Michel Leblond, Matthieu Moy, Heiko Bauke, Žilvinas Žaltiena, itinerarium, Maximilian Trescher, Wolfgang Mader, Andrea Volpato, Matthieu Volat, shlomi braitbart, Dominik Markiewicz, tatica.

* RawSpeed contributors (at least 1 commit): Axel Waggershauser, Nathaniel Watson, Dan Torop, Marco Caimi, Martijn Courteaux, Uwe Müssel, Vasily Khoruzhick.

And all those of you that made previous releases possible

This man page was written by Richard Levitte <richard@levitte.org>. Additions were made by Tobias Ellinghaus <me@houz.org>.

Referenced By


2017-01-20 darktable 2.3