heckflosse
6646c2dc5c
Speedup for thumbnail and editor processing, also reduced base memory usage a bit
2016-05-06 21:51:57 +02:00
heckflosse
31b2589b9b
Fix crashes caused by aligned access to unaligned memory in CLUT code, fixes #3154 , fixes #3278 , fixes #3277
2016-05-06 17:16:45 +02:00
Flössie
2ad89f9464
Fix buffer overrun when applying HaldCLUT ( #3154 )
...
Ingo found a buffer overrun due to an inverted mask when deciding
whether to take the SSE path or not. This fix applies his suggested
pattern for boder cases. Kudos to @heckflosse.
2016-05-04 20:23:28 +02:00
heckflosse
5e0a859cea
Fix buffer overrun in rgbProc()
2016-05-03 20:01:59 +02:00
Flössie
39f4db609a
Final code cleanup
...
- Corrected whitespace and comments
- Replaced `VECTLENSP` with `__SSE2__` and `4`
- Removed redundant `inline`
(see: http://programmers.stackexchange.com/a/35436 and
http://stackoverflow.com/a/5971755 )
2016-05-01 11:10:11 +02:00
Flössie
eceb024ba8
Add Ingo's gamma_srgbclipped
patch
2016-05-01 10:41:21 +02:00
heckflosse
2dd2f5ca17
Speedup for thumbnail processing
2016-05-01 00:16:06 +02:00
Flössie
beaea22779
Vectorize color space conversion for HaldCLUT
...
Vectorize color space conversion for HaldCLUT depending on the
definition of `VECTLENSP`. It's not fully AVX compatible because `F2V`,
`LVF`, and `STVF` are SSE only.
2016-04-29 20:35:37 +02:00
Flössie
29fe23e517
Move film_simulation_strength
calculation into HaldCLUT::getRGB()
...
- Moved `film_simulation_strength` calculation into `HaldCLUT::getRGB()`
- Removed unneeded base class `CLUT`
- Used `_MM_SHUFFLE`
2016-04-29 17:26:56 +02:00
Flössie
9dee6dddf1
Hoist out_rgbx
allocation out of the loops
2016-04-26 22:16:23 +02:00
Flössie
bf499055e1
Apply HaldCLUT::getRGB()
per tile line
...
`getRGB()` now takes a whole tile line instead of a single pixel.
2016-04-26 21:57:58 +02:00
Flössie
b1a9e96836
Store HaldCLUT as flat RGBx array
...
Instead of using an `Image16`, which is organized in planes, store the
HaldCLUT in an `AlignedBuffer<std::uint16_t>` with sequential RGBx
values. This gives a speedup of roughly 23% here.
2016-04-23 22:55:28 +02:00
Flössie
f639cd6b82
Use Image16 instead of Imagefloat for CLUT
...
Gain speed and reduce memory by using Image16 instead of Imagefloat for
the CLUT.
2016-04-23 22:55:28 +02:00
Flössie
e495093b18
Clean up clutstore.* and add LRU cache
...
This commit adds a true LRU cache to `rtengine` which is used in the new
`CLUTStore` class. The code in `clutstore.*` was cleaned up with C++11
features and small optimizations taken from my `clutbench` project.
The `CLUTStore` class was converted to a true singleton.
2016-04-23 22:55:28 +02:00
heckflosse
2f2421442b
Raw false colour suppression: additional 38% speedup
2016-03-06 01:14:35 +01:00
Ingo Weyrich
4df5e64056
Merge pull request #3188 from Beep6581/cbdlbw
...
Adapt Cbdl to B&W tools
2016-03-01 20:31:14 +01:00
heckflosse
755f7568bb
removed big block of inactive code which I forgot to remove in last commit
2016-03-01 19:30:48 +01:00
heckflosse
51de80b558
Fixed bug with combination of cbdl and ciecam, cleaned code, made SSE version for lab2rgb
2016-03-01 19:16:34 +01:00
heckflosse
1b220543f3
Replace all x^(1/3) with std::cbrt(x)
2016-02-25 16:50:21 +01:00
heckflosse
e52b1fcdd4
Reduce start time and memory usage by removing redundant lookup tables and fillig remaining lookup tables in parellel
2016-02-24 01:35:47 +01:00
heckflosse
a15fe1de3e
Cbdl before b&w, fix ciecam02 issue and clean the code a bit
2016-02-19 21:52:02 +01:00
Desmis
5f988861b0
Init CBDL before Black and White
2016-02-19 16:58:23 +01:00
Hombre
4665b88788
Modified Preview Canvas
...
- Now the Preview can show free space around the image (the image's
corner will coincide with the center of the preview area)
- Editing objects can now be manipulated in this free space
- The editing mechanism has been split : it was completely handled in
rtengine before, now rtengine still handle the pipette's data provider,
but rtgui now handle the objects data provider.
- Bugfix: when using coarse rotate in the Editor panel, the Gradient
widgets are now correctly displayed
2016-02-05 01:40:31 +01:00
Adam Reichold
5fd5d5bece
Remove the soft proof button and internal flag as it was decided not to mix this with the output profile handling.
2016-01-01 19:43:09 +01:00
Hombre
bcbb45454a
Updated icons (from Drslony), code cleanup and bugfix
2015-12-29 03:52:50 +01:00
Adam Reichold
4ecf463f9f
Merge master for the C++11 ABI fixes.
2015-12-20 20:53:59 +01:00
Hombre
e9141dd98c
Cleaning up the GUI for the monitor profile and rendering intent +
...
output profile rendering intent + soft-proof button.
DCP profile GUI switched from 2x2 array to a single column.
2015-12-18 01:45:59 +01:00
Hombre
32eb6b996c
Adding softproofing. Now the output profile and the new rendering intent
...
profile for the output profile will only be shown when the new softproof
toggle button (bottom of the preview in the Editor panel) will be on.
2015-12-15 01:06:38 +01:00
heckflosse
b856e210ae
Fix Win32 Debug build part one
2015-12-08 19:00:35 +01:00
Adam Reichold
5f59156bb0
Simplify querying the default monitor profile as suggested by Hombre57.
2015-12-07 23:22:41 +01:00
Adam Reichold
22bffabe7f
Extend the editor panel to support selection of a monitor profile and rendering intent and extend the preferences to provide a default profile and intent for the editor panel.
2015-12-07 23:22:32 +01:00
Adam Reichold
35919bddc9
Copy-edit the ICC store for better performance and maintainability and add a method to load profile lists from arbitrary directories.
2015-12-07 19:55:14 +01:00
Adam Reichold
594b4f9b6e
Reenable the colorimetric intent selector on the color management tab, but display it below the monitor profile to indicate that this is the only place where it is used.
2015-12-05 21:20:51 +01:00
bobobo1618
6ec6e51c35
Add explicit type conversions to satisfy C++11 requirements.
...
(cherry picked from commit b93c730)
2015-11-05 19:16:54 -08:00
heckflosse
33b2d643b1
Cleaned code and removes StopWatch
2015-08-20 19:52:53 +02:00
heckflosse
f7907a5474
Speedup for perceptual curve, #2817
2015-08-17 13:31:20 +02:00
heckflosse
161fa15922
removed unsupported character in improcfun.cc, no Issue
2015-08-17 12:07:33 +02:00
Morgan Hardwood
91f67f0cb6
Issue 2846: Filter preview through output profile when using a monitor profile.
...
- Removed the "Rendering intent" setting from Preferences,
- Hard-code "relative colorimetric" intent everywhere,
- Filter through output profile before filtering through monitor
profile if using a monitor profile,
- If not using a monitor profile, a direct sRGB conversion is done,
2015-08-12 13:27:45 +02:00
DrSlony
0e0cfb9b25
Formatted all .cc and .h code in rtengine, rtexif and rtgui using astyle
2015-08-11 11:55:03 +02:00
torger
6bb0d15ff0
Issue 2837: added 'Perceptual' tone curve
2015-07-26 20:37:44 +02:00
torger
b2836b388f
Issue 2850: normalized RGB-pipeline curve gammas to sRGB, make curve algorithms operate on linear image data
2015-07-23 21:34:00 +02:00
torger
094ad23cce
Issue 2843: Hl compression function restored (restored some bad changes caused by new DCP look table code)
2015-07-15 17:13:06 +02:00
torger
d5ca351c20
Issue 2134: removed obsolete raw highlight preservation setting from GUI (still left in procparams for backwards compatilibility)
2015-07-10 12:00:36 +02:00