Skip to main content

cryptomatte-api

ko-fi

About

The cryptomatte-api is a fast, memory-efficient and robust library for loading, validating and decoding cryptomattes. It is meant to serve as a de-facto standard implementation of cryptomatte loading that is DCC-agnostic and runs as a standalone.

It is written entirely using C++20 while also providing pre-built python binaries that are pip-installable.

Features

  • Robust and accurate decoding of cryptomattes (v1.2.0 spec)
  • Fully compliant with the specification
  • Extremely fast even at high resolutions
  • Very memory efficient
  • Rigorously tested

Performance

The cryptomatte-api allows you to decode hundreds of cryptomattes for billions of pixels in less than a second. It is fast and efficient for both small and large images. During our :ref:cmatte_benchmarks we test from just 320x140 pixels to 14480x8370 pixels for over 200 masks per-image.

We allow you to decode using in-memory compression or directly into a flat buffer giving you the flexibility to choose depending on your performance and memory needs.

Quickstart

This is a simple example of getting you up and running with the cryptomatte-api, loading a file from disk (which validates it) and then extract one or more masks from the image.

C++

#include <cryptomatte/cryptomatte.h>

auto matte = cmatte::cryptomatte::load("from/disk/path", false /* load preview channels */);
auto mask = matte.mask("my_mask"); // will throw if 'my_mask' is not available
auto all_masks = matte.masks_compressed(); // get all the masks as compressed channels.

Python

import cryptomatte_api as cmatte

matte = cmatte.Cryptomatte.load("from/disk/path", load_preview=False)
mask = matte.mask("my_mask") # will raise if 'my_mask' is not available
all_masks = matte.masks() # get all the masks of the cryptomatte mapped by names.

License

BSD 3-Clause License

Copyright (c) 2025, Emil Dohne

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
	list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
	this list of conditions and the following disclaimer in the documentation
	and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
	contributors may be used to endorse or promote products derived from
	this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Metadata

Release files for cryptomatte-api 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cryptomatte-api 1.0.0
File Size Uploaded
cryptomatte_api-1.0.0.tar.gz 25.6 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for cryptomatte-api 1.0.0
File
cryptomatte_api-1.0.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
cryptomatte_api-1.0.0-cp313-cp313-manylinux_2_34_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ x86-64 Details
cryptomatte_api-1.0.0-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
cryptomatte_api-1.0.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
cryptomatte_api-1.0.0-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details
cryptomatte_api-1.0.0-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
cryptomatte_api-1.0.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
cryptomatte_api-1.0.0-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
cryptomatte_api-1.0.0-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
cryptomatte_api-1.0.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
cryptomatte_api-1.0.0-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
cryptomatte_api-1.0.0-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details
cryptomatte_api-1.0.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
cryptomatte_api-1.0.0-cp39-cp39-manylinux_2_34_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.34+ x86-64 Details

Total release size: 138.6 MB

Release files / cryptomatte_api-1.0.0.tar.gz

Download URL cryptomatte_api-1.0.0.tar.gz
Size 25.6 MB
Tags Source
SHA-256 checksum
How to use checksums
f6d3256b0695b52fbfd04feac628ede36a4820dd500416d39e256d079c3fb663
BLAKE2b-256 checksum
How to use checksums
d4bf6f7a4f87db971a8946880397c027e65ba7d70751022c4b798d7ad854d370
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp313-cp313-win_amd64.whl

Download URL cryptomatte_api-1.0.0-cp313-cp313-win_amd64.whl
Size 7.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
b45261053ca9851f5f249bbc221b1007ed80dbeaf13df6037f3c5adea6fed519
BLAKE2b-256 checksum
How to use checksums
7f39d49b08796291ab90c2657ede71534e0e7d40d44395273a958791f0c716e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp313-cp313-manylinux_2_34_x86_64.whl

Download URL cryptomatte_api-1.0.0-cp313-cp313-manylinux_2_34_x86_64.whl
Size 10.9 MB
Tags CPython 3.13 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
a72b1b289fee011d601b08342ac19c3e080ebb6fb1524d86447cf896c3024fba
BLAKE2b-256 checksum
How to use checksums
186f70d8fa3cbf02f499319d6ab34e3c5966f7c498ee38a4ce7b7ae5c7f7d71b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp313-cp313-macosx_14_0_arm64.whl

Download URL cryptomatte_api-1.0.0-cp313-cp313-macosx_14_0_arm64.whl
Size 5.9 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
ed677bab36ad4f6b48ac45505407265c6f869444a351069c1911c5c1b3d28810
BLAKE2b-256 checksum
How to use checksums
2a2cc59ba7ebd7b3eb64eab902319b405943d2f76c530077c9812860024b706a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp312-cp312-win_amd64.whl

Download URL cryptomatte_api-1.0.0-cp312-cp312-win_amd64.whl
Size 7.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
38bc505f4b5802a26fb616b1956515974c86580c1ded7648c15f1783f6aebc8b
BLAKE2b-256 checksum
How to use checksums
391fb38decb2f9974961f1321d1e3e620967dae56bab02e73342f6dfa851ff1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL cryptomatte_api-1.0.0-cp312-cp312-manylinux_2_34_x86_64.whl
Size 10.9 MB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
8770c718014a75953f6d409faf52dc73e69a1528592fe3699343acb76406492c
BLAKE2b-256 checksum
How to use checksums
e63128ff71aa4728e65ee0bfeaf8a6b8d02637cd85fdd2b376d76771e84dc16a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp312-cp312-macosx_14_0_arm64.whl

Download URL cryptomatte_api-1.0.0-cp312-cp312-macosx_14_0_arm64.whl
Size 5.9 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
0bdb3b5780df1f6b4eac75309eca677051e91f51965dd049eab8305b0b5cafe4
BLAKE2b-256 checksum
How to use checksums
27625417d5668774b6a6bc8074a3fb4524095203324bc89329b461dc913bd90d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp311-cp311-win_amd64.whl

Download URL cryptomatte_api-1.0.0-cp311-cp311-win_amd64.whl
Size 7.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
e74e66e1a420d69d59769702bb0300d01fcbd0ce18d2b74067386189f5cdd942
BLAKE2b-256 checksum
How to use checksums
fa84a6368cc409c791835e8a964be16c59cd713b6b38ea575e5e7a961f28ac96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL cryptomatte_api-1.0.0-cp311-cp311-manylinux_2_34_x86_64.whl
Size 10.9 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2edf366c3e83ad74118027e85054547578030b45b1b4b79dd7295f56e0c0c6ec
BLAKE2b-256 checksum
How to use checksums
990e249cd026453064fc60365aa6ed6bfb432d6772b4ab60aa27418f36418b84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp311-cp311-macosx_14_0_arm64.whl

Download URL cryptomatte_api-1.0.0-cp311-cp311-macosx_14_0_arm64.whl
Size 5.9 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
2c3e6ea81c9c8e534d54a183e01f79f52e5aac87cc317822412115d14ed9b419
BLAKE2b-256 checksum
How to use checksums
632a731af937857a8697a41f0a48b3abf53e63ccdb1b97761c6d50222ff8ce9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp310-cp310-win_amd64.whl

Download URL cryptomatte_api-1.0.0-cp310-cp310-win_amd64.whl
Size 7.0 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
8977154594ab1d2b85e00da3d6364addc807c3dd80ee780e5912fde9bce963b8
BLAKE2b-256 checksum
How to use checksums
b3e0d6b62f39e207cc5baec34096eaea956761ca34f563beb040066c2c25f3f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL cryptomatte_api-1.0.0-cp310-cp310-manylinux_2_34_x86_64.whl
Size 10.9 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
1ca7ff949f17a0f6875ffe64464970d68d9353a608cda825aae445fb4f0b281d
BLAKE2b-256 checksum
How to use checksums
264e7fb774eb1eb721a053a656dd4fe7139df547c8dc3a1c09527af1f1f6c4c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp310-cp310-macosx_14_0_arm64.whl

Download URL cryptomatte_api-1.0.0-cp310-cp310-macosx_14_0_arm64.whl
Size 5.9 MB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
2227561198cbc97029bfd170f80ba77426dc58253ad8dce24a58b2ca4e29333e
BLAKE2b-256 checksum
How to use checksums
eb5ebc6a74f65c576f0a2db661bb29808e3fcea9db9b1c0f302c66c4dc931783
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp39-cp39-win_amd64.whl

Download URL cryptomatte_api-1.0.0-cp39-cp39-win_amd64.whl
Size 7.0 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
5b798c6ca0c99f25940c23ab8f669dd9d935c79b4132237abc0d534d37650b9c
BLAKE2b-256 checksum
How to use checksums
7c0a2cf8f4d98dc4bcb3e2ca42f727cc717e45faa9df298da68630acb28f3ba2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release files / cryptomatte_api-1.0.0-cp39-cp39-manylinux_2_34_x86_64.whl

Download URL cryptomatte_api-1.0.0-cp39-cp39-manylinux_2_34_x86_64.whl
Size 10.9 MB
Tags CPython 3.9 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
76ffda6f1b0ff7758143c2140091cf82102ded74f5a3ef88ecad729c0defd537
BLAKE2b-256 checksum
How to use checksums
96715757a300fdfe48d3c6f7a3953f6d76ca46f941096fecceb8ac1ea006baef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.0 This release

15 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page