Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
5901092
initial darktable spektrafilm commit
piratenpanda Jul 12, 2026
5495dc1
Remove superflous mentions of the old module
piratenpanda Jul 12, 2026
bd3e4d6
fix film selection dropdown default
piratenpanda Jul 12, 2026
a4b58a6
fix for kodak_2302 negative bw paper
piratenpanda Jul 12, 2026
a5b6ec4
reorg files to /common
piratenpanda Jul 12, 2026
ad19384
Use dt_gaussian_mean_blur_cl instead of fast to avoid border artifacts
piratenpanda Jul 13, 2026
b51b6be
Add advanced options drop down menu to reduce default height of module
piratenpanda Jul 13, 2026
a645551
reset print exposure to 0 EV when enabling auto print exposure
piratenpanda Jul 13, 2026
80a98ad
move scan film option to the advanced section as it's a rather automa…
piratenpanda Jul 13, 2026
6dee4f0
remove tick from disabled auto print exposure toggle for positive films
piratenpanda Jul 13, 2026
789a2d1
Change module to lowercase and write better description
piratenpanda Jul 14, 2026
3044903
register spektrafilm in the legacy iop-order migration path
piratenpanda Jul 14, 2026
e488f17
Add tabbed interface to prepare for more options
piratenpanda Jul 15, 2026
b210af9
add remaining spektrafilm diffusion filters, add preflash, add pre co…
piratenpanda Jul 15, 2026
801c79d
allow manual right click gain amount up to 8
piratenpanda Jul 15, 2026
d5bddd3
Prevent accidental double clicking on film and print tab header reset…
piratenpanda Jul 15, 2026
0908b81
spektrafilm: add print diffusion stage
Arecsu Jul 16, 2026
1cf631a
spektrafilm: improve code comments
Arecsu Jul 16, 2026
4bdb6ab
spektrafilm: GPU optimization — gauss pre-allocation, async boost, tm…
Arecsu Jul 16, 2026
dfb7e6c
spektrafilm: CPU optimization — transposed blur, bilinear/trilinear, …
Arecsu Jul 16, 2026
3e9ef12
spektrafilm: -fno-math-errno flag + NEON matrix multiply for expose
Arecsu Jul 16, 2026
08b8ec1
add migration for new print diffusion stage
piratenpanda Jul 17, 2026
f9e66b7
Halation now behaves like original spektrafilm, per film and we now e…
piratenpanda Jul 17, 2026
d8ea8c2
Make halation amount behave like the original
piratenpanda Jul 17, 2026
bef01b0
add strength to halation and grain sliders to clarify
piratenpanda Jul 17, 2026
fe38622
additional safeguards to not reset to wrong values on tab double click
piratenpanda Jul 17, 2026
f0c1ade
spektrafilm: group film/print dropdowns by color/monochrome sections
Arecsu Jul 17, 2026
cef974a
spektrafilm: natural sort for profile lists
Arecsu Jul 18, 2026
9cd06fb
move away from darktable gaussians and use the same as spektrafilm
piratenpanda Jul 19, 2026
ef1d842
move grain to multi sublayer
piratenpanda Jul 19, 2026
162489b
add calibration constant to make grain behave more like spektrafilm
piratenpanda Jul 19, 2026
fcaae2f
improve performance
piratenpanda Jul 19, 2026
283f7a9
more performance improvements
piratenpanda Jul 19, 2026
738c728
spektrafilm: multiplicative unsharp mask after grain blur
Arecsu Jul 19, 2026
d869069
spektrafilm: fix grain brightness shift across zoom levels
Arecsu Jul 19, 2026
9eac864
spektrafilm: fix fireflies in grain recovery USM
Arecsu Jul 19, 2026
a05bdb6
fix grain changing exposure and add picker to pre compression boost
piratenpanda Jul 20, 2026
1bd571e
fix comment
piratenpanda Jul 20, 2026
858b71b
add development section with push pull and gamma settings
piratenpanda Jul 21, 2026
b46bf21
turn auto print exposure off by default and move development and pref…
piratenpanda Jul 21, 2026
53067a2
rename film and print to media
piratenpanda Jul 21, 2026
736e14c
fix picker segfaulting
piratenpanda Jul 21, 2026
3b94f1e
fix grain color cast
piratenpanda Jul 22, 2026
e23eb9d
fix module reset not always resetting to default parameters the first…
piratenpanda Jul 22, 2026
a5c84a0
use long side for film format and default to 35mm
piratenpanda Jul 23, 2026
0f78028
make grain adhere to reference implementation and set default parameters
piratenpanda Jul 23, 2026
7324a4e
restructure UI on feedback
piratenpanda Jul 23, 2026
4b4c351
fix USM oversharpening on zoom out
piratenpanda Jul 23, 2026
737eecf
safeguard scan button from resetting
piratenpanda Jul 25, 2026
557bfb7
remove stale code, make algorithms adhere to spektrafilm ref code, ad…
piratenpanda Jul 26, 2026
411751c
more fixes for BW films, expose development time for films and papers…
piratenpanda Jul 26, 2026
44c2bbb
Set development time slider to stock/paper default, have one slider i…
piratenpanda Jul 26, 2026
849f1e9
limit DIR coupler range to 1 to keep it invertible
piratenpanda Jul 26, 2026
67deff3
follow the Bauhaus checkbox changes
piratenpanda Jul 27, 2026
2de45a4
Reset module to v1, remove special checkbox handling as this is now a…
piratenpanda Jul 27, 2026
fde1c1f
move to float16 LUT as reference, fix grain opencl path again, fix di…
piratenpanda Jul 29, 2026
941fbc2
Updates to user feedback
piratenpanda Jul 31, 2026
16fcfb4
fix(ui): add spektrafilm to modules list
yuri1969 Jul 28, 2026
f0a8781
blur whole grained desity field and not only delta to match reference…
piratenpanda Aug 1, 2026
902e34d
spektrafilm: run grain USM on absolute density to match reference
Arecsu Aug 1, 2026
aa26701
Provide download functionality for missing pack data
piratenpanda Aug 2, 2026
33980ad
clarify tool tips on user feedback
piratenpanda Aug 2, 2026
0d6b4ae
add format header
piratenpanda Aug 2, 2026
ede2b49
move to inline labels again for film, paper and format. Soft limit pr…
piratenpanda Aug 3, 2026
34dbebb
support pack v2 files, fix Tri-X column layout to follow upstream spe…
piratenpanda Aug 3, 2026
2382216
add surface adaptation code
piratenpanda Aug 4, 2026
9300181
fix opencl for more than one opencl runtime
piratenpanda Aug 4, 2026
1f50dfe
Turn spectral adaptation off by default as in reference spektrafilm. …
piratenpanda Aug 5, 2026
b4270d9
add switch for bandwidth adaption and rename section to advanced
piratenpanda Aug 5, 2026
357168d
remove references to the reference
piratenpanda Aug 5, 2026
bcffcf2
port unit test suite from reference
piratenpanda Aug 8, 2026
f919705
remove patch file
piratenpanda Aug 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions data/darktableconfig.xml.in
Original file line number Diff line number Diff line change
Expand Up @@ -2685,6 +2685,27 @@
<shortdescription>crossover ISO for X-Trans FDC demosaicing</shortdescription>
<longdescription>up to, and including, this ISO, X-Trans frequency domain chroma demosaicing uses the hybrid mode for determining chroma; for all higher ISO values the pure FDC is used.</longdescription>
</dtconfig>
<dtconfig prefs="security" section="other">
<name>plugins/darkroom/spektrafilm/allow_download</name>
<type>bool</type>
<default>false</default>
<shortdescription>allow spektrafilm to download data packs</shortdescription>
<longdescription>allow the spektrafilm module to fetch its spectral data pack over the network when the pack an edit needs is not installed locally. every file is verified against a checksum from the repository manifest before it is installed, and downloaded packs are written to the spektrafilm/packs subfolder of the configuration folder, so they are backed up with the rest of the configuration and survive clearing the cache. a pack installed by hand directly in spektrafilm/ is always preferred over a downloaded one.</longdescription>
</dtconfig>
<dtconfig>
<name>plugins/darkroom/spektrafilm/repository</name>
<type>string</type>
<default>piratenpanda/darktable-spektrafilm</default>
<shortdescription>spektrafilm data repository</shortdescription>
<longdescription>repository holding the spektrafilm spectral data packs, as owner/repo. the files are read over https; git is not required.</longdescription>
</dtconfig>
<dtconfig>
<name>plugins/darkroom/spektrafilm/ref</name>
<type>string</type>
<default>main</default>
<shortdescription>spektrafilm data repository ref</shortdescription>
<longdescription>tag or branch to read the spektrafilm data packs from. a tag is preferable where one exists: an immutable ref is what lets an old edit fetch the exact spectral table it was developed against, where a branch hands over whatever is current.</longdescription>
</dtconfig>
<dtconfig>
<name>plugins/darkroom/denoiseprofile/show_compute_variance_mode</name>
<type>bool</type>
Expand Down
1 change: 1 addition & 0 deletions data/kernels/programs.conf
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,4 @@ capture.cl 38
agx.cl 39
colorharmonizer.cl 40
overlay.cl 41
spektrafilm.cl 42
Loading
Loading