ComfyUI-CoCoTools_IO
Advanced image input and output: EXR, 32 bit support and more
Nodes (8)
Why your EXR looks washed out, and the node that fixes it
Pulling crypto passes out of EXR — the parts that actually work
A file loader that hands Qwen-VL a path, not just pixels
The hub that turns 3D render passes into usable tensors
Nuke's Shuffle node, for ComfyUI
Animation frames and their AOVs, all in one batch
The node that finally writes real EXR (and 16-bit PNG) files
Taming raw depth ranges so ControlNet can actually read them
CoCoTools_IO
A set of nodes focused on advanced image I/O operations, particularly for EXR file handling.
Features
- Advanced EXR image input with multilayer support
- EXR layer extraction and manipulation
- High-quality image saving with format-specific options
- Standard image format loading with bit depth awareness
Installation for comfyui portable (tested on 0.3.44)
Manual Installation
-
Clone the repository into your ComfyUI
custom_nodesdirectory -
Install dependencies from the python_embeded/ folder
python.exe -m pip install -r ./ComfyUI/custom_nodes/ComfyUI-CoCoTools/requirements.txt -
Restart ComfyUI
Current Nodes
Image I/O
- Image Loader: Load standard image formats (PNG, JPG, WebP, etc.) with proper bit depth handling
- Load EXR: Comprehensive EXR file loading with support for multiple layers, channels, and cryptomatte data
- Load EXR Sequence: Load EXR image sequences with #### frame patterns and batch processing
- Load EXR Layer by Name: Extract specific layers from EXR files (similar to Nuke's Shuffle node)
- Cryptomatte Layer: Specialized handling for cryptomatte layers in EXR files (WIP - not fully implemented)
- Image Saver: Save images in various formats with format-specific options (bit depth, compression, etc.)
Image Processing
- Colorspace Converter: Convert between various colorspaces (sRGB, Linear, ACEScg, etc.)
- Z Normalize: Normalize depth maps and other single-channel data
To-Do
IO
- [x] Implement proper EXR loading
- [x] Implement EXR sequence loader
- [x] Implement EXR saver using OpenImageIO
- [x] Implement multilayer EXR system (render passes, AOVs, embedded images, etc.)
- [x] Add contextual menus based on selected file type in saver
- [x] Add support for EXR sequences
- [ ] Complete cryptomatte layer implementation
- [ ] Adopt filename parsing for saving files into datestamped folders
Third-Party Libraries and Licensing
This project uses the following third-party libraries:
- Colour Science for Python: Used for colorspace transformations in the Colorspace Converter node. Licensed under the New BSD License.
- OpenColorIO: Used for color space transformations. Licensed under the BSD 3-Clause License.
For detailed licensing information, please see the THIRD_PARTY_NOTICES.md file.
This project is licensed under the MIT License. The BSD 3-Clause License used by OpenColorIO and the New BSD License used by colour-science are compatible with the MIT License, allowing us to include and use these components within this MIT-licensed project.