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 Aurélien PIERRE Aldric Renaudin parafin Roman Lebedev

* translators: Pascal Obry Jeronimo Pellegrini Martin Straeten EdgarLux Marcus Gama Matt Maguire 篠崎亮 Ryo Shinozaki Philippe Weyland Victor Forsiuk vertama Matjaž Jeran Aurélien PIERRE Matteo Mardegan Miloš Komarčević Michel Leblond Nicolas Auffray Tianhao Chai Bogusław Ciastek Báthory Péter PeterWem Tomasz Golinski Wiktor Nowak sbraitbart

* contributors (at least 4 commits): ralfbrown Diederik ter Rahe Dan Torop Hubert Kowalski Philippe Weyland Miloš Komarčević Bill Ferguson Jeronimo Pellegrini hanno@schwalm-bremen.de Marco Carrarini Martin Straeten Daniel Vogelbacher Mark-64 EdgarLux rawfiner Nicolas Auffray Chris Elston Chris.Elston Marcus Gama Sakari Kapanen Victor Forsiuk Arnaud TANGUY wpferguson Matt Maguire David-Tillmann Schaefer Marco Paolo DePetrillo quovadit 篠崎亮 Ryo Shinozaki vertama Matjaž Jeran darkelectron piratenpanda

* Sub-module rawspeed contributors (at least 1 commit): Roman Lebedev Jordan Neumeyer Miloš Komarčević Andreas Schneider Marko Toplak hanno@schwalm-bremen.de helloqiu luz paz

* Sub-module integration contributors (at least 1 commit): Pascal Obry Sakari Kapanen ralfbrown Aurélien PIERRE

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