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>
    --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.

--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.


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 Tobias Ellinghaus Ulrich Pegelow parafin Pascal de Bruijn Stefan Schöfegger Peter Budai johannes hanika Edouard Gomez

* translators: Pascal Obry EdgarLux Ger Siemerink Timur I. Davletshin Michel Leblond Nilvus Jakub Filipowicz Matjaž Jeran Josep V. Moragues mepi0011 Heiko Bauke Maurizio Paglia Milan Knížek Novy Sawai Tomasz Golinski maruncz Báthory Péter Jacques Le Clerc Ragnar Wisloff Thomas Pryds Tobias Ellinghaus shlomi braitbart Denis Dyakov Edgar De la Luz Shlomi Alon-Braitbart Simon Raffeiner Tomasz Goliński archont00 chri johannes hanika lkarcz

* contributors (at least 4 commits): Aurélien PIERRE Andreas Schneider edgardoh rawfiner Philippe Weyland Nilvus EdgarLux Ger Siemerink Heiko Bauke hanno@schwalm-bremen.de Jakub Filipowicz Jacques Le Clerc Timur I. Davletshin Michel Leblond Timur Davletshin Bill Ferguson Sam Smith Alexis Mousset Matjaž Jeran mepi0011 Matthieu Moy Rikard Öxler junkyardsparkle Hanno Schwalm Denis Dyakov Diederik ter Rahe luzpaz Dan Torop Josep V. Moragues Marcello Mamino Wolfgang Goetz maruncz mondoman712

* Sub-module rawspeed contributors (at least 1 commit): Roman Lebedev Robert Bridge bobobo1618 luz.paz parafin Bastian Bechtold Martijn Courteaux Pascal de Bruijn chrunchyjesus dllu hanno@schwalm-bremen.de junkyardsparkle

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