Darktable

From Wikipedia, the free encyclopedia
(Redirected from Darktable 4.4.2)
Jump to navigation Jump to search
darktable
Original authorJohannes Hanika[1]
Initial releaseApril 2009; 17 years ago (2009-04)[2]
Repositorygithub.com/darktable-org/darktable
Written inC and GTK
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemFreeBSD
    Linux
    macOS
    Solaris
    Windows
    Platformx86-64, ARM64
    Size8.72 MiB (source (tar.gz))
    108 MiB (Windows)
    91 MiB (macOS)
    Available in18 languages[3][4]
    TypePhoto post-production
    LicenseGPL-3.0-or-later[5]

    Darktable (stylized as darktable) is a free and open-source photography application and raw developer. Rather than being a raster graphics editor like Adobe Photoshop or GIMP,[6] it comprises a subset of image editing operations specifically aimed at non-destructive raw image post-production. It is primarily focused on improving a photographer's workflow by facilitating the handling of large numbers of images. It is freely available in versions tailored for most major Linux distributions, macOS, Solaris and Windows and is released under the GPL-3.0-or-later software license.[5]

    Features

    [edit | edit source]

    Darktable involves the concept of non-destructive editing, similar to that of some other raw manipulation software. Rather than being immediately applied to raster data of the image, the program keeps the original image data until final rendering at the exporting stage — while parameter adjustments made by a user display in real-time. The program features built-in ICC profiles, GPU acceleration (based on OpenCL), and supports most common image formats.

    Main features

    [edit | edit source]
    • Non-destructive editing with the XMP change description entry
    • Works in 32-bit float mode on a color channel in CIE LAB space
    • Full implementation of color management
    • Supports RAW, JPG, RGBE, PFM and more
    • Modular architecture
    • Over 30 modules for transformation, color correction, quality improvement and artistic effects
    • Organize images and search by parameters
    • Translated into 19 languages
    • Support for shooting directly through camera (tethered capture)
    • Find similar photos
    • Support for geographical coordinates labels with display of photo locations on map
    • An integrated mover for executing Lua scripts optionally linked to hotkeys or specific events, such as when importing new images

    Masks

    [edit | edit source]

    Support for drawn masks was added in Darktable version 1.4, allowing application of effects to manually specified areas of an image. There are five mask types available: brush, circle, ellipse, Bézier path, and gradient; all are resizable, allow fade-out radius for smooth blending and can have their opacity controlled. An arbitrary number of masks can be created and are collected into a "mask manager" on the left hand side of the darkroom UI.[7]

    Color

    [edit | edit source]

    Darktable has built-in ICC profile support for sRGB, Adobe RGB, XYZ and linear RGB color spaces.[8]

    Importing and exporting

    [edit | edit source]

    Raw image formats, JPEG, HDR and PFM images can be imported from disk or camera, and exported to disk, Picasa Web Albums, email, and to a simple HTML-based web gallery as JPEG, PNG, JPEG XL, TIFF, WebP, PPM, PFM and EXR images.[9] Images can be exported to Wikimedia Commons using an external plugin.[10]

    Scripting

    [edit | edit source]

    Darktable can be controlled by scripts written in Lua version 5.2. Lua can be used to define actions which Darktable should perform whenever a specified event is triggered. One example might be calling an external application during file export in order to apply additional processing steps outside of Darktable.[11]

    Multi-mode histogram

    [edit | edit source]

    Multiple histogram types are available, all with individually selectable red, green and blue channels: linear, logarithmic and waveform (new in version 1.4).[7]

    User interface

    [edit | edit source]
    Darktable 2.4.2 as it appears after installation
    Darktable 4.4.2 in lighttable view
    Darktable 4.4.2 in darkroom view

    Darktable has two main modes: "lighttable" and "darkroom". Each represents a step in the image development process. Two more modes are tethering and a map view. Upon launching, lighttable opens by default, where image collections are listed. All panels in all modes can be minimized to save screen real estate.[12]

    Lighttable

    [edit | edit source]

    The left panel is for importing images, displaying Exif information, and filtering. Rating and categorizing buttons are at the top, while the right-side panel features various modules such as a metadata editor and a tag editor. A module used to export images is located at the bottom-right.

    Darkroom

    [edit | edit source]

    The second mode, "darkroom", displays the image at center, with four panels around it; most tools appear on the right side. The left panel displays a pannable preview of the current image, an undo history stack, a color picker, and Exif information. A filmstrip with other images is displayed at the bottom, and can be sorted and filtered using lists from the upper panel. The latter also gives access to the preferences configuration. Darktable's configuration allows custom keyboard shortcuts and personalized defaults.

    Tethering

    [edit | edit source]

    The third mode allows tethering through gPhoto to cameras which offer suitable support.[13]

    The fourth mode can display maps from different online sources and geotags images by drag-and-drop. It also uses maps to show images already geotagged by a camera.

    Plugins

    [edit | edit source]
    Old plugin palette with 14 active plugins, of which 2 are set as favorites (in red)
    Current plugin palette used in Darktable 1.2

    As of December 2019, darktable includes 67 image adjustment plugins, which it divides into 5 groups;[9]

    Basic group

    [edit | edit source]

    Plugins for simple well-known photo adjustment operations include: contrast brightness saturation module; shadows and highlights; color reconstruction; base curve with presets to automatically improve contrast and colors; crop and rotate; orientation; exposure; demosaic; highlight reconstruction; white balance; invert and raw black/white point.

    Tone group

    [edit | edit source]

    Plugins related to contrast and lighting include: fill light for modifying the exposure based on pixel lightness; levels to set black; tone curve; zone system; filmic; local contrast; global tone mapping and tone mapping.

    Color group

    [edit | edit source]

    Plugins related to hue and saturation include: velvia, which mimics Velvia film colors by increasing saturation on lower saturated pixels more than on highly saturated pixels; channel mixer; output color profile; color contrast; color correction, to modify the global saturation or to give a tint; monochrome; color zones; color balance; vibrance; color look up table; input color profile and unbreak input color profile.

    Correction group

    [edit | edit source]

    Plugins for repairing visual imperfections include: dithering; sharpen; equalizer; denoise (non-local means); defringe; haze removal; denoise (bilateral filter); scale pixel; rotate pixels; liquify; perspective correction; lens correction using the LensFun library; retouch; spot removal; denoise (profiled); raw denoise; hot pixels and chromatic aberrations.

    Effect group

    [edit | edit source]

    Artistic postprocessing plugins used for visual effects include: watermark; framing; split-toning; vignetting; soften; grain; highpass; lowpass; lowlight vision; bloom; color mapping; colorize and graduated density.

    Development

    [edit | edit source]

    Google Summer of Code

    [edit | edit source]

    In 2011, the Darktable team participated in the Google Summer of Code (GSoC). The main goals were to remove libglade dependency from Darktable and to make room for more modularity. The input system for handling shortcuts was also rewritten and incorporated into version 0.9.[14][15]

    Distribution

    [edit | edit source]

    Darktable is released under the GPL-3.0-or-later as free software.[16] The current version of Darktable works on Linux, macOS and Windows. Many Linux distributions include Darktable in their default repositories, including Debian, Fedora, openSUSE, Arch Linux, and Gentoo Linux.

    Darktable also runs on Solaris 11,[17] with packages in IPS format available from the maintainer.[18]

    Localization

    [edit | edit source]

    Darktable is available in multiple languages, but the availability of various locales has varied across Darktable releases. Darktable is notable for using all-lowercase literals in every language by default. Since version 4.4.0, a new locale called "en@truecase" allows users to apply conventional casing to English.[19]

    ver. en En sq af ca cs da de es eo fi fr it ja he hu nl nb pt-BR pl sl sk ru uk tr zh-CN zh-TW
    3.0.0[20] Yes No No No Yes Yes Yes Yes Yes No No Yes Yes Yes Yes Yes Yes Yes No Yes Yes No Yes No No No No
    3.0.2[21] Yes No No No Yes Yes Yes Yes Yes No No Yes Yes Yes Yes Yes Yes No No Yes Yes No Yes No No No No
    3.2.1[22] Yes No No No No No No Yes Yes No No Yes Yes No Yes No No No Yes Yes Yes No No No No No No
    3.4.0[23] Yes No No Yes No Yes No Yes Yes No Yes Yes Yes No Yes Yes No No Yes Yes Yes Yes Yes No No No No
    3.4.1[24] Yes No No Yes No Yes No Yes Yes No Yes Yes Yes No Yes Yes No No Yes Yes Yes Yes Yes No No No No
    3.6.0[25] Yes No No Yes No No No Yes Yes Yes No Yes Yes No Yes Yes Yes No Yes No Yes No Yes Yes No No No
    3.6.1[26] Yes No No Yes No No No Yes Yes Yes No Yes Yes No Yes Yes Yes No Yes No Yes No Yes Yes No No No
    3.8.0[27] Yes No No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No Yes Yes Yes No No Yes No Yes No
    3.8.1[28] Yes No No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes No No Yes No Yes No
    4.0.0[29] Yes No No No No Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes No Yes No Yes Yes No Yes No
    4.0.1[30] Yes No No No No Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes No Yes No Yes Yes Yes Yes Yes
    4.2.0[31] Yes No Yes No No No No Yes Yes No Yes Yes Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes Yes No Yes
    4.2.1[32] Yes No Yes No No No No Yes Yes No Yes Yes Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes Yes No Yes
    4.4.0[19] Yes Yes Yes No No No No Yes Yes No No Yes No Yes No Yes No No Yes Yes Yes No No Yes No Yes Yes
    4.4.1[33] Yes Yes Yes No No No No Yes Yes No Yes Yes No Yes Yes Yes No No Yes Yes Yes No Yes Yes No Yes Yes
    4.4.2[34] Yes Yes Yes No No No No Yes Yes No Yes Yes No Yes Yes Yes No No Yes Yes Yes No Yes Yes Yes Yes Yes
    4.6.0[35] Yes Yes Yes No No Yes No Yes Yes No Yes Yes Yes Yes No Yes Yes No Yes Yes Yes No Yes Yes No Yes Yes
    5.2.0[36] Yes Yes Yes No No Yes No Yes Yes No Yes Yes Yes Yes No Yes Yes No Yes No Yes No Yes Yes No Yes Yes
    File:I18n list darktable 5.2.0 2025-12-18 (18).png
    All 18 locales available in Darktable 5.2.0, including "en@truecase"

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    16. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    17. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    18. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    19. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    20. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    21. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    25. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    26. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    27. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    28. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    29. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    30. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    31. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    32. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    33. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    34. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    35. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    36. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).

    Bibliography

    [edit | edit source]
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]
    • Lua error in Module:Official_website at line 94: attempt to index field 'wikibase' (a nil value).