Following up from the Logik Live with the specific question regarding the challenge of exporting/rendering mixed color space timelines. (@fredwarren The devs asked to post the example here.)
The test case is a short-film timeline colored in Flame. Color space rules setup with the ACES 1.1 preset. Most clips on timeline are Arri LogC and tagged as such, but there are a few select graphics that are in Rec709.
Viewing rules are setup by the preset, and everything looks good on the reference display and in the viewer. But exporting this timeline yields unexpected results.
Based on this old forum post Solved: ACES Export Nightmares! - Autodesk Community I’ve got it to work by adding a gap effect with color space transform, and then adding some gfx below and some gfx above that gap effect (as Grant suggested).
Without the gap effect, when starting the export by dragging timeline in media hub, warning appears stating that color space management will be based on first frame of timeline. With the gap effect that warning is not present.
3 different variations:
Expected look (as seen on reference monitor):
All default settings: image exports low-contrast (LogC non-transformed)
No gap effect, but enabled advanced settings / with LUT + view transform (looks correct):
But if a Rec709 graphic is stacked (footage is good, graphic is wrong:
Adding gap effect with color transform to view (looks as expected)
But if a Rec709 graphic id stacked (graphic right, footage reverts to LogC during stack and snaps back to correct where stack ends):
In summary - two separate problems:
Without gap effect there is hard to decipher warning message. It can be resolved by adding the gap effect - which has the same result as setting the advanced LUT option with rules. It might be helpful to clarify this workflow.
Regardless of gap effect / advanced settings, if two clips of different color spaces are stacked, they don’t render correctly. You have to transform one with a gap effect to the color space of the other, and then use the viewing transform during render. A similar problem exists in dissolves, if the one side of the dissolve is in a different color space, there is a visible transform step between the last frame of the dissolve and the next frame.
Expected behavior (as seen in other color space aware apps like Resolve for example):
There should be a clearly defined output transform for the export (not buried in advanced options). Could possibly be integrated into all the rules of the color space dialog as well.
During the render each clip on the timeline should be transformed to the working color space to be in a normalized state, blending operations should happen in the working color space, and then transform to output color space avoiding any conflicts of stacked color space differences.
The end goal should be that I can take any timeline that is color space managed with ACES, and where each clip is tagged correctly, and render it to a defined output color space without having to add any operations to the timeline. Then this process could be repeated for different outputs, if the timeline has to be exported for different deliverables.
The primary goal of ACES is allow for mixed color space application through workflow rules and eliminate all explicit color space transforms in timelines or nodegraphs. And should not require transcodes of the footage, but be purely metadata driven.
Maybe I’m overlooking something as I’m still relatively new to Flame…