pixtreme-aces
ACES Color Management for pixtreme (OCIO ACES 1.2 Compliant)
Overview
pixtreme-aces provides professional ACES color management functionality for VFX and color grading workflows. It implements the Academy Color Encoding System (ACES) 1.2 standard with full GPU acceleration.
Features
- ACES 1.2 Compliance: Matrix values match OpenColorIO-Config-ACES standard
- Industry Standard Workflow: Compatible with Nuke, Houdini, Maya color pipelines
- GPU Accelerated: All operations run on CUDA-enabled GPUs via CuPy
- Type Preservation: Seamlessly works with both NumPy and CuPy arrays
Installation
Requirements:
- Python >= 3.12
- CUDA Toolkit 12.x
- NVIDIA GPU with compute capability >= 6.0
pip install pixtreme-aces
Requires pixtreme-core and CUDA Toolkit 12.x.
Quick Start
import pixtreme_aces as aces
import pixtreme_core as px
# Read display-referred image (Rec.709/sRGB)
img = px.imread("input.jpg")
# Convert to ACES2065-1 (scene-referred, linear AP0)
aces_img = aces.rec709_to_aces2065_1(img)
# Work in ACES color space
# ... color grading, compositing, etc.
# Convert back to Rec.709 for display
output = aces.aces2065_1_to_rec709(aces_img)
px.imwrite("output.jpg", output)
Color Space Conversions
ACES Working Spaces
- ACES2065-1: Archive format (linear AP0, wide gamut)
- ACEScg: CG/VFX working space (linear AP1)
- ACEScct: Grading space (log-encoded AP1)
# ACES2065-1 ↔ ACEScg
acescg = aces.aces2065_1_to_acescg(aces_img)
aces_img = aces.acescg_to_aces2065_1(acescg)
# ACES2065-1 ↔ ACEScct
acescct = aces.aces2065_1_to_acescct(aces_img)
aces_img = aces.acescct_to_aces2065_1(acescct)
Transfer Functions
The IEC 61966-2-1 sRGB and ITU-R BT.1886 transfer functions are available as
independent building blocks. BT.1886 supports configurable display white and
black luminance through L_w and L_b.
# sRGB signal ↔ linear light
linear = aces.srgb_eotf(img)
encoded = aces.srgb_inverse_eotf(linear)
# BT.1886 signal ↔ normalized display luminance
linear = aces.bt1886_eotf(img, L_w=100.0, L_b=0.1)
encoded = aces.bt1886_inverse_eotf(linear, L_w=100.0, L_b=0.1)
ACES AP0 and CIE XYZ
Low-level matrix transforms convert between ACES2065-1 AP0 and CIE XYZ with a D60 white point.
xyz_d60 = aces.ap0_to_xyz_d60(aces_img)
aces_img = aces.xyz_d60_to_ap0(xyz_d60)
All conversions above accept NumPy and CuPy arrays, preserve the input array
kind and shape, and normalize computation to float32 without clipping
scene-referred values.
References
- ACES Central
- ACES Technical Documentation
- OpenColorIO-Config-ACES
- SMPTE ST 2065-1: ACES2065-1 specification
License
MIT License - see LICENSE file for details.
ACES® is a trademark of the Academy of Motion Picture Arts and Sciences (A.M.P.A.S.). This software is not endorsed by A.M.P.A.S.
Links
- Repository: https://github.com/sync-dev-org/pixtreme
Metadata
Release files for pixtreme-aces 0.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pixtreme_aces-0.9.0.tar.gz | 15.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pixtreme_aces-0.9.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 26.8 kB
Release files / pixtreme_aces-0.9.0.tar.gz
| Download URL | pixtreme_aces-0.9.0.tar.gz |
|---|---|
| Size | 15.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ab06a62362d500df84d7e4003c366b08a9743cbb56bf8a221b7682bb14864f4e
|
|
BLAKE2b-256 checksum How to use checksums |
c564e450b401a7fa7037cdb8581669182b0b2a09ae6d65abbc9da2edaa48ed2a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Release files / pixtreme_aces-0.9.0-py3-none-any.whl
| Download URL | pixtreme_aces-0.9.0-py3-none-any.whl |
|---|---|
| Size | 11.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ab1934cd9daac6fe6d137a43021fccb06de1def701f351a39ff0dafa10bf81b3
|
|
BLAKE2b-256 checksum How to use checksums |
f0270ddbd98184360cd88e46157a917fe79b2a285057055987f15468a000ddde
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Security for pixtreme-aces 0.9.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.