mirror of
https://github.com/storytold/craft-libs.git
synced 2026-11-12 08:52:32 +00:00
* craft-exr: bounded part listing, flat decoding and writing (feature decode) PhotoCraft's exr-crate wrapper (preview check, per-part and total size limits, file-size plausibility, part ranking, one-part decode) and EffectCraft's streaming channel filter, as one reader that returns a neutral model: part headers with text attributes, and the kept channels in their stored type. * craft-exr: deep data and Cryptomatte samples (feature decode) PhotoCraft's deep OpenEXR reader (NONE, RLE and ZIPS deep scan lines and tiles, every allocation admitted against the byte budget) and its flattening, and its Cryptomatte layer listing and rank decoding, on the decode module.
25 lines
969 B
TOML
25 lines
969 B
TOML
[package]
|
|
name = "craft-exr"
|
|
description = "OpenEXR for the Craft apps: channel and layer naming, colour channel selection, Cryptomatte, and (feature `decode`) bounded part listing, flat decoding and writing on top of the exr crate."
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
repository.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[features]
|
|
# Reading and writing pixels through the `exr` crate (BSD-3-Clause). The naming and Cryptomatte
|
|
# modules need none of it.
|
|
decode = ["dep:exr", "dep:half", "dep:thiserror", "dep:flate2"]
|
|
|
|
[dependencies]
|
|
serde_json = { workspace = true }
|
|
exr = { version = "1.73", default-features = false, optional = true }
|
|
half = { version = "2", optional = true }
|
|
thiserror = { workspace = true, optional = true }
|
|
# zlib for deep ZIPS chunks, which the `exr` crate does not read.
|
|
flate2 = { version = "1", default-features = false, features = ["rust_backend"], optional = true }
|