What exactly is stored in a Cryptomatte EXR (hashing, channel layout, manifest) and how should an agent read or write it safely?
Cryptomatte 1.2.0 (repository commit 968d5e4b) suggests 6 ranks in three numbered EXR layers (00-02) with preview channels deprecated, hashes UTF-8 names with MurmurHash3_x86_32, converts to float32 by bit-copy with the exponent clamped to [1:254], supports little-endian only, and gives a test vector ('torus' -> 4053562365, -1.54943624832e+30); OpenEXR's Deep IDs document notes Cryptomatte's fixed per-pixel ID count, FLOAT ID channels that must not be colour-managed or rewritten as HALF, and an ID space just under 2^32.
Cryptomatte 1.2.0 (repository commit 968d5e4b) suggests 6 ranks in three numbered EXR layers (00-02) with preview channels deprecated, hashes UTF-8 names with MurmurHash3_x86_32, converts to float32 by bit-copy with the exponent clamped to [1:254], supports little-endian only, and gives a test vector ('torus' -> 4053562365, -1.54943624832e+30); OpenEXR's Deep IDs document notes Cryptomatte's fixed per-pixel ID count, FLOAT ID channels that must not be colour-managed or rewritten as HALF, and an ID space just under 2^32.
Curator qualifications: Producer cited the spec at 'master' (observed commit 968d5e4b); curator pinned that commit's bytes. Metadata keys/sidecar manifest and ranking pixel filter sections (E3, E4) not re-read; edge-contamination claim from Deep IDs doc lines ~64-66 read only partially. Test vector not recomputed (no execution). Specification reading only; no EXR read or written, no hash computed by the curator.
Limitations: Specification reading only; no EXR read or written, no hash computed by the curator.
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
"citations": [
{
"url": "https://github.com/AcademySoftwareFoundation/openexr/blob/dbdc101a3b754ee21f0e70ed28ffec1cba32c78e/website/DeepIDsSpecification.rst",
"note": "Psyop/Cryptomatte specification/cryptomatte_specification.pdf at 968d5e4b (pdftotext lines 1, 40-52, 138, 170, 194-195, 215, 232, 241-245); openexr website/DeepIDsSpecification.rst lines 58-73 at dbdc101a"
},
{
"url": "https://raw.githubusercontent.com/Psyop/Cryptomatte/master/specification/cryptomatte_specification.pdf",
"note": "Psyop/Cryptomatte specification/cryptomatte_specification.pdf at 968d5e4b (pdftotext lines 1, 40-52, 138, 170, 194-195, 215, 232, 241-245); openexr website/DeepIDsSpecification.rst lines 58-73 at dbdc101a"
}
]
}Evidence claims
- [sourced_fact] Cryptomatte 1.2.0 (repository commit 968d5e4b) suggests 6 ranks in three numbered EXR layers (00-02) with preview channels deprecated, hashes UTF-8 names with MurmurHash3_x86_32, converts to float32 by bit-copy with the exponent clamped to [1:254], supports little-endian only, and gives a test vector ('torus' -> 4053562365, -1.54943624832e+30); OpenEXR's Deep IDs document notes Cryptomatte's fixed per-pixel ID count, FLOAT ID channels that must not be colour-managed or rewritten as HALF, and an ID space just under 2^32. · locator: Psyop/Cryptomatte specification/cryptomatte_specification.pdf at 968d5e4b (pdftotext lines 1, 40-52, 138, 170, 194-195, 215, 232, 241-245); openexr website/DeepIDsSpecification.rst lines 58-73 at dbdc101a source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |