darktable-cli - Man Page

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|false|true>
    --upscale <0|1|false|true>
    --export_masks <0|1|false|true>
    --style <style name>
    --apply-custom-presets <0|1|false|true>


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.

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

A flag that defines whether masks used in the image will be stored as layers in the exported image (provided the format supports it). Defaults to false.

--style <style name>

Specify the name of a style to be applied during export.  If a style is specified, the path to the darktable configuration directory must also be specified (i.e. --core --configdir ~/.config/darktable). Defaults to no style specified.


The specified style overwrites the history stack instead of being appended to it.


With this option you can decide if darktable loads its set of default parameters from data.db and applies them. Otherwise the defaults that ship with darktable are used.

Set this flag to false in order to run multiple instances.


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: Pascal Obry Aldric Renaudin Roman Lebedev parafin Edouard Gomez

* translators: Pascal Obry Victor Forsiuk Jeronimo Pellegrini Martin Straeten Kang-Wei Hsu EdgarLux Besmir Godolja Ryo Shinozaki Serkan ÖNDER mmardegan Luca Cignoni Marko Vertainen Maurizio Paglia Marcus Gama Nicolas Auffray Báthory Péter Matjaž Jeran Matt Maguire Petr Stasiak Stephan Hoek bajdero Matteo Mardegan alex alexbora Яна Тунгушпаева

* contributors (at least 4 commits): Hanno Schwalm Victor Forsiuk Diederik ter Rahe Miloš Komarčević jandren Jeronimo Pellegrini Nicolas Auffray Martin Straeten Kang-Wei Hsu Simone Gotti Sakari Kapanen EdgarLux rawfiner Besmir Godolja cyruscook quovadit Ryo Shinozaki Philippe Weyland Ralf Brown Chris Elston Serkan ÖNDER mmardegan Luca Cignoni Apfelkraut Marcus Gama Marko Vertainen Maurizio Paglia Simon Raffeiner

* Sub-module rawspeed contributors (at least 1 commit): Roman Lebedev Miloš Komarčević Daniel Vogelbacher maruncz Alex Tutubalin Artemis Tosini Georg Lukas Georg Niedrist LibRaw LLC Marko Toplak Milos Komarcevic Pascal Obry PeterWem Simon Raffeiner Sprite luz paz squid-f ubergeek801

* Sub-module integration contributors (at least 1 commit): Pascal Obry

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


2019-11-27 darktable 3.0