AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO

Allow parsing a LUT from a memory buffer rather than a file

Open
#2,076 1 comment 1 reaction 0 assignees View on GitHub
Feature Request help wanted
Dominant language
C++
Stars
2.1k
Forks
503
PR merge metrics
No merged PRs in 30d

Description

OCIO's LUT file parsing is set up to work from files on disk. It would be very helpful to be able to have a function that would take a memory buffer and use the LUT parsers to turn it into a GroupTransform.

There is a way to do this already using the recent ConfigIOProxy class. However, it takes a fair amount of code and a fair amount of OCIO expertise to write it. This task is to write that code and turn it into a parseFromBuffer method on the GroupTransform class.

The unit tests for ConfigIOProxy in Config_tests.cpp provide some good sample code that could be used as a starting point.

Contributor guide

Open the contributing guide

Research direction

Start with the ConfigIOProxy unit tests in Config_tests.cpp, then trace how GroupTransform currently uses the LUT parsers for files. Implement and expose GroupTransform::parseFromBuffer using the existing buffer-based approach, and add coverage showing that a memory-buffer LUT produces the expected GroupTransform.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
computer-graphics
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
62/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.