Alcedo Studio is an open-source RAW photo editor and digital asset management (DAM) project. It is designed to provide a new choice to photographers who seek a lightweight, high-performance, and largely industry-compatible workflow for their photo editing and library management needs.
Alcedo Studio is NOT an alternative to the existing commercial software nor other open-source projects.
RAW files are from signatureedits 100% Free Raw Files.
- CUDA, Metal, and OpenCL accelerated image processing paths, with the Windows CUDA preview path reaching 300 FPS at the highest real-time preview resolution on modern NVIDIA GPUs with large RAW files (e.g., 45MP). Even full-resolution 42MP preview generation takes only around 20ms on a mid-range GPU (RTX 3080 Laptop 8GB).
- Runtime GPU backend selection for supported operators, including OpenCL coverage for RAW processing, point operators, linear reference conversion, highlight reconstruction, DRT/LMT, lens calibration, geometry adjustment, DNG warp, and scope analysis.
- Fine-grained memory management, resolution-separated thumbnail requests, and disk-backed thumbnail caching to optimize memory usage during large library browsing. The average DRAM usage for browsing a library of 786 42MP RAW files is around 767MB while achieving smooth scrolling and instant preview generation.
- Written in modern C++20 with a focus on code quality, modularity, and maintainability (unfortunately, still largely a WIP).
- 32-bit floating-point processing pipeline.
- Support ACES 2.0 Output Rendering and OpenDRT with display color space, EOTF, and peak-luminance controls.
- Film-like highlight transition, highlight reconstruction, sigmoid contrast curve, and RCD demosaic support for high-quality RAW reconstruction.
- CUBE LUT support for creative color grading, including a curated set of packaged Kodak, Fuji, and Agfa film-emulation LUTs.
- Support JPEG/TIFF/PNG/EXR output with metadata write-back.
- Unlimited history stack with Git-like version control and branching, log-only versioning, stable project UUIDs, Merkle-tree version hashes, and project checksum validation.
- OpenImageIO/Exiv2-based image output with support for various formats and metadata handling.
- Planning to support HDR workflow and output in the future.
- A simple but flexible inode-like file system using DuckDB as the storage backend, designed to manage both the original RAW files and the generated metadata (previews, thumbnails, edit history, etc.) in a unified way.
- Lean project management with a single project file that contains all the metadata and references to the original files, enabling easy project sharing and backup without worrying about missing sidecar files or broken links.
- Collection membership, folder pagination, cache invalidation, duplicate/history handling, and batch database mutation paths for smoother large-project operations.
- Advanced search and filtering capabilities, including EXIF facets, fuzzy/exact global search, thumbnail-backed search results, star ratings, and rating filters. Planning to support semantic search and AI-assisted tagging in the future.
- Windows 10/11 x64 for the current CUDA editor build, which now defaults to the Qt RHI/D3D12 viewer path.
- macOS on Apple platforms for the Metal-backed Qt application build.
- NVIDIA GPU with CUDA support (minimum compute capability 6.0 (10-series or later), recommended 7.0+ (20-series or later) for optimal performance) and preferably 6GB+ VRAM for smooth performance with high resolution RAW files (40MP+) on the Windows/CUDA build.
- A Metal-capable Mac for the macOS/Metal build.
- At least 8GB of system RAM (16GB+ recommended for larger libraries and smoother performance).
- 500MB of free disk space for the installation and temporary working files.
- 60+ MB for installation package and partial update support.
Detailed bilingual instructions are in:
构建细节(中英对照)已单独维护在:
Quick commands:
# Required submodules for current CMake layout
git submodule update --init --recursive `
alcedo_studio/src/third_party/lensfun `
alcedo_studio/src/third_party/libultrahdr `
alcedo_studio/src/third_party/metal-cpp
# Windows debug (MSVC wrapper + preset)
cmd /c scripts\msvc_env.cmd --preset win_debug -DCMAKE_PREFIX_PATH="D:/Qt/6.9.3/msvc2022_64/lib/cmake"
cmd /c scripts\msvc_env.cmd --build --preset win_debug --parallel 8
# Windows release
cmd /c scripts\msvc_env.cmd --preset win_release -DCMAKE_PREFIX_PATH="D:/Qt/6.9.3/msvc2022_64/lib/cmake"
cmd /c scripts\msvc_env.cmd --build --preset win_release --parallel 8
cmd /c scripts\msvc_env.cmd --install build/release --prefix build/install
# macOS debug and packaging
cmake --preset macos_debug
cmake --build --preset macos_debug --target alcedo_main
cmake --preset macos_release
cmake --build --preset macos_release
cmake --build --preset macos_packageRoadmap and ongoing milestones:
Alcedo Studio builds on research, open-source implementations, and community data from the wider imaging ecosystem:
- Distributed film-emulation LUTs are from JanLohse/spectral_film_lut.
- Some camera color matrices are from AcademySoftwareFoundation/rawtoaces-data.
- The highlight reconstruction algorithm is adapted from RawTherapee's hilite_recon.cc.
- The RCD demosaic algorithm is from LuisSR/RCD-Demosaicing.
- OpenDRT is ported from OpenDRT.dctl.
- ACES 2.0 support is ported from aces-aswf/aces-core.
The v0.1.1 tag and earlier releases remain under Apache-2.0.
Development after v0.1.1 is licensed under GPL-3.0-only, with an additional permission under GPLv3 section 7 for combining/distributing required NVIDIA CUDA components.
See LICENSE and NOTICE.







