v2.0.0
Pre-release
Pre-release
Release 2.0.0 (December ?? 2025) -- compared to 1.1.0
This version is not API- or ABI-compatible with the previous versions.
MAIN CHANGES:
The core library (rawtoaces-idt):
- The core library has been renamed from
rawtoaces_idttorawtoaces_core. - The
Idtclass has been renamed torta::core::SpectralSolver, the public interface of the class has been cleaned up. Refer to core_usage.cpp for usage examples. - The
DNGIdtclass has been renamed torta::core::MetadataSolver, the public interface of the class has been cleaned up. Refer to util_usage.cpp for usage examples. - Reshaping of spectral data has been added, so camera curves with other than 380..780nm with 5nm step sampling can be used.
- The dependency on boost::json has been removed in favour of nlohmann-json.
The util library (rawtoaces-util):
- The
AcesRenderclass has been renamed torta::util::ImageConverter, the public interface of the class has been cleaned up. - The dependency on Libraw has been removed in favour of OpenImageIO.
- The dependency on AcesContainer has been removed in favour of OpenImageIO.
- The proprietary command line parcer has been replaced with OpenImageIO.
The command line tool (rawtoaces):
- Because of the new command line parser, all command line parameters have been changed. Please refer to
rawtoaces --help, or README for more info. - The switch to using OpenImageIO instead of Libraw directly required us to drop some optional command line parameters, since those options are not exposed in OpenImageIO yet. We had to drop the functionality, like providing black frames or dead pixel masks, etc. We will look at reintroducing those options on the OpenImageIO side in the future, if a need arises. Here is the list of dropped parameters:
-P- bad pixel mask-K- dark frame-j- fuji-rotate-m- median filter-f- four-colour RGB-T- print Libraw-supported cameras-F- use big file-s- image index in the file-G- green_matching() filter
- Functionality added: multiple crop modes supported via
--crop-mode. - Functionality added: specify output directories via
--output-dir. - Functionality added: automatically create missing output directories via
--create-dirs. - Functionality changed:
rawtoacesdoes not overwrite existing files by default any more. Use--overwriteto override.
Other:
- Removed dependencies: boost, Libraw, AcesContainer.
- Added dependencies: OpenImageIO, nlohmann-json.
- The data files are now being installed into
/usr/local/share, not/usr/local/include. The old path is still being resolved for backward compatibility. - The database (external rawtoaces-data repo) dependency has been switched to v1.0.0, which changes the data schema version to v1.0.0 and adds multiple new camera measurements, see
All changes:
- feat: implement a data class for storing spectral curves, replace boost:json with nlohmann-json #164
- feat: add
--data-dirargument andautomatrix method #189 - feat: Python bindings - WIP, not fully functional yet #205, #208
- api: further tweaks to the public API #178, #183, #215, #219
- api: switch to rawtoaces-data v1.0.0 which also bumps the supported data schema version to v1.0.0 #221
- fix: install to /usr/local/share, not /usr/local/include #172
- fix: reading of data folders from env #171
- fix: fix command line parsing error 186
- refactor: remove dependency on Libraw from the core library #162
- refactor: rename rawtoaces_idt to rawtoaces_core #160
- refactor: cleanup public interfaces #159, #169, #173
- refactor: refactor the usage timer #165, #166
- deps: replace libraw and aces_container with OIIO #167
- deps: replace proprietary command line parser with OIIO #168
- deps: replace boost::unittest with oiio::unittest #170
- deps: replace boost::filesystem with std::filesystem #161
- ci: fix CI broken on aswf-2024+ images #163
- ci: various CI fixes #179, #209, #210, #213, #214, #217
- ci: improve Windows CI performance by caching #218
- tests: improve unittest coverage #190, #192, #193, #194, #200, #207, #212, #216
- tests: test coverage report with badge and logo by #188
- analysis: add static analysis #206, #211
- build: fix build issues caused by the order of OIIO includes #198
- cleanup: code cleanup #174, #182, #185, #195, #197
- admin Add CONTRIBUTING and other documents #199