The Proxy creation in the clip editor does not take color management into account #56703

Open
opened 2018-09-06 12:44:31 +02:00 by Sebastian Koenig · 6 comments

System Information
elementaryOS 0.4.1, GTX1080

Blender Version
Broken: 2.79.6, 7ff1750

Short description of error
When generating proxies from Blender's Clip Editor while using a different Color Management View profile other than Default, that color profile is not taken into account, making the proxies look different than the actual movie in the Clip Editor.

Exact steps for others to reproduce the error
The whole issue came up when trying to work with footage shot with the Arri Alexa.
The footage is a ProRes file, encode with Arri Wide Gamut in LogC. I am currently working with @troy_s on making that work inside Blender. The way we do that currently is as follows:
By using Blackmagic Fusion I convert the ProRes to a Linear EXR, but not rec709, instead it's Linear Arri Wide Gamut, in order to keep the data of that colorspace intact.
Loading this in Blender looks wrong of course, since Blender assumes an EXR file to be Linear Rec709.
In order to work around that, @troy_s thankfully created a new OpenColorIO config file, that uses the AWG colorspace when setting the view to Filmic.
Using that new config.ocio the Footage looks correct in the Clip Editor.
Obviously I need the Background Images in the 3D Viewport to look the same, since I want to integrate 3D elements into the footage.
However, when I generate the Proxies, they seem to use the Default Rec709 View Transform.
See this screenshot:
proxy_colors.jpeg
The colors in MCE at the bottom are correct, but wrong in the 3d View above.
I can understand that the 3D View cannot do realtime color conversions in order to maintain a decent playback. However, that's why I think the proxies need to take CM into account, including gamma and exposure.
For anyone who wants to try it, I have attached a folder with one frame from that footage, the proxy, the blendfile, as well as a the adjusted colormanagement folder with the new config.ocio. (I left out the film responce curves).
proxy_color.zip

**System Information** elementaryOS 0.4.1, GTX1080 **Blender Version** Broken: 2.79.6, 7ff1750 **Short description of error** When generating proxies from Blender's Clip Editor while using a different Color Management View profile other than Default, that color profile is not taken into account, making the proxies look different than the actual movie in the Clip Editor. **Exact steps for others to reproduce the error** The whole issue came up when trying to work with footage shot with the Arri Alexa. The footage is a ProRes file, encode with Arri Wide Gamut in LogC. I am currently working with @troy_s on making that work inside Blender. The way we do that currently is as follows: By using Blackmagic Fusion I convert the ProRes to a Linear EXR, but not rec709, instead it's Linear Arri Wide Gamut, in order to keep the data of that colorspace intact. Loading this in Blender looks wrong of course, since Blender assumes an EXR file to be Linear Rec709. In order to work around that, @troy_s thankfully created a new OpenColorIO config file, that uses the AWG colorspace when setting the view to Filmic. Using that new config.ocio the Footage looks correct in the Clip Editor. Obviously I need the Background Images in the 3D Viewport to look the same, since I want to integrate 3D elements into the footage. However, when I generate the Proxies, they seem to use the Default Rec709 View Transform. See this screenshot: ![proxy_colors.jpeg](https://archive.blender.org/developer/F4594896/proxy_colors.jpeg) The colors in MCE at the bottom are correct, but wrong in the 3d View above. I can understand that the 3D View cannot do realtime color conversions in order to maintain a decent playback. However, that's why I think the proxies need to take CM into account, including gamma and exposure. For anyone who wants to try it, I have attached a folder with one frame from that footage, the proxy, the blendfile, as well as a the adjusted colormanagement folder with the new config.ocio. (I left out the film responce curves). [proxy_color.zip](https://archive.blender.org/developer/F4595165/proxy_color.zip)
Author
Member

Added subscribers: @troy_s, @sebastian_k

Added subscribers: @troy_s, @sebastian_k
Sergey Sharybin was assigned by Sebastian Koenig 2018-09-06 12:44:49 +02:00

Added subscriber: @mont29

Added subscriber: @mont29

@Sergey guess that one is for you to handle? Though am not sure there is any bug here tbh…

@Sergey guess that one is for you to handle? Though am not sure there is any bug here tbh…
Author
Member

I would like to come back to this issue.
@Sergey told me a while ago that this is indeed a bug, and for the upcoming VFX course this should be fixed.

The issue does not just arise with fancy custom wide gamut colorspaces, it's already a problem with Filmic / Standard view transform.

When you load some footage into the Clip Editor, the view transform is applied to that clip as well, and that's fine.
Now, when you use that clip as Camera Background Images in the 3d Viewport in order to setup your scene, with lighting and textures, etc., the background images do NOT use Filmic as view transform! So it is not possible to match your scene to the footage in the 3d viewport.
So what to do? First idea is to build proxies.
But when you create Proxies from your clip in the Clip Editor, the resulting proxies do not have the view transform nor the look applied to them. I do think they should though!

Another way to deal with this would be an option to apply color management to background images.
It might make sense to not use colormanagement for background images if you use reference images for modeling or so, but when it comes to Camera Background Images, which are mostly used for VFX, there should at least some option to apply your scene's View Transform to the background images as well. "View as Render" from the image editor comes to mind...

Now, let's say I have proxies with Filmic baked into them, in that case I would want to disable the imaginary "View as Render" button from above, instead the Standard sRGB view transform would be used for them, just as it is the case now, probably for performance reasons.

I would like to come back to this issue. @Sergey told me a while ago that this is indeed a bug, and for the upcoming VFX course this should be fixed. The issue does not just arise with fancy custom wide gamut colorspaces, it's already a problem with Filmic / Standard view transform. When you load some footage into the Clip Editor, the view transform is applied to that clip as well, and that's fine. Now, when you use that clip as Camera Background Images in the 3d Viewport in order to setup your scene, with lighting and textures, etc., the background images do NOT use Filmic as view transform! So it is not possible to match your scene to the footage in the 3d viewport. So what to do? First idea is to build proxies. But when you create Proxies from your clip in the Clip Editor, the resulting proxies do not have the view transform nor the look applied to them. I do think they should though! Another way to deal with this would be an option to apply color management to background images. It might make sense to not use colormanagement for background images if you use reference images for modeling or so, but when it comes to Camera Background Images, which are mostly used for VFX, there should at least some option to apply your scene's View Transform to the background images as well. "View as Render" from the image editor comes to mind... Now, let's say I have proxies with Filmic baked into them, in that case I would want to disable the imaginary "View as Render" button from above, instead the Standard sRGB view transform would be used for them, just as it is the case now, probably for performance reasons.

So what to do?

There is only one answer, and it remains the same:

Always honour the intent of the RGB encoding. Always. That means there is never a case where pixel management is turned off or assumed, as it is a fundamental misunderstanding as to how pixel management works and what the intention of the encoded values in an RGB encoding represent.

>So what to do? There is only one answer, and it remains the same: Always honour the intent of the RGB encoding. *Always*. That means there is *never* a case where pixel management is turned off or assumed, as it is a fundamental misunderstanding as to how pixel management works and what the *intention of the encoded values in an RGB encoding represent*.
Sergey Sharybin was unassigned by Dalai Felinto 2019-12-23 16:36:00 +01:00

Added subscriber: @Sergey

Added subscriber: @Sergey
Philipp Oeser removed the
Interest
EEVEE & Viewport
label 2023-02-09 15:15:41 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#56703
No description provided.