-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Developer's guide
Peter Budai edited this page Feb 5, 2019
·
24 revisions
Some useful ressources to jump into digital color management, editing pipeline, calibrations, view transform, etc. :
- https://www.visualeffectssociety.com/sites/default/files/files/cinematic_color_ves.pdf
- https://acescentral.com/
- http://last.hit.bme.hu/download/firtha/video/Colorimetry/Fairchild_M._Color_appearance_models__2005.pdf
Modules are the interfaces for IOPs, i.e. image-processing filters stacked in the pixelpipe. IOPs can be found in src/iop and the IOP API can be found in the header src/iop/iop_api.h.
Most IOP have 3 variant of their pixel-filtering part:
- a pure C implementation, in
process()
- a C optimized version, with SSE2 intrinsics, in
process_sse2()
- an OpenCL version, offloading the computation to the GPU, in
process_opencl()
.
An example of a dummy IOP can be found in src/iop/useless.c and used as a boilerplate.
If you add a new IOP, be sure to add the C file in src/iop/CMakeLists.txt#L69 and deal with its priority in the pixelpipe by adding a new node in tools/iop_dependencies.py
darktable wiki is licensed under the Creative Commons BY-SA 4.0 terms.