How to get /perform colors matching exports from Movie File Out

I’m trying to work out how to get what I see within TD (in the /perform window or just displayed behind the network) matching what I output from TD using a Movie File Out TOP.

I’ve tried exporting as PNGs and videos with a couple of different codecs – they all seem consistent with each-other, but none match the colors that I see within TD itself. Broadly, some colors in TD seem more saturated. I’m assuming there is a colorspace mis-match somewhere but having read the article on sRGB and played around with the OpenColorIO TOP I’ve not been able to improve things.

Any suggestions to get the preview and exported outputs in alignment? Thanks!

How are you viewing the outputs? If you are viewing them in TD they should look correct. However if you are viewing them in another tool they may be doing a colorspace conversion that we arn’t

Here’s how I’ve been testing:

  • Place a Move File In with the CalWedge.tif sample image.
  • Export that image out again with a Movie File Out to a PNG.
  • Comparing the input image and the output image in TD they match perfectly. The same when comparing the two images in Photoshop.
  • Comparing what I see within TD to what I see within Photoshop (or Preview or Chrome or…) the display within TD is different to other apps. I can see that just putting the windows side by side or taking a screenshot and checking the values.

Right, it’s because TD isn’t really handling colorspaces right now. We just show pixel’s as-is, without adjusting the colorspace. Photoshop is applying some colorspace conversion which ideally matches your monitor so things look ‘right’.
The OpenColorIO TOP is the correct solution for this right now, you just need to have the right colorspace conversions. You want to go from ‘Linear’ to the correct space for your monitor.

1 Like

That makes total sense. But I don’t seem to be getting the results I expect :upside_down_face:

I did a little more investigating today and made some observations:

  • I should have mentioned at the start I’m on a MacBook Pro here.
  • By default the MBP’s screen uses a profile just called Color LCD. If I switch this to sRGB IEC61966-2.1 then everything matches across apps (without any use of OpenColorIO). Of course I would prefer to stick with the profile designed for this screen.
  • When switching monitor color profiles a visible change is seen in both Photoshop and TD. But the change must be different, as the apps vary when Color LCD is selected, and they match when sRGB is selected.
  • Introducing OpenColorIO seems to move things in the wrong direction. If I do Linear > sRGB color space transform then everything ends up very bright. I’m not sure if there’s a way to load in the Color LCD profile or if I’m using this incorrectly?

FWIW, here is a screenshot when the screen profile is set to Color LCD showing (left to right) TD ‘default’, TD Linear > sRGB, Photoshop. They’re all different.

I think you actually need to apply the inverse of the colorspace transform when displaying to a monitor. This is because the monitor applies the transform, so if you want your colors to end up ‘linear’, then you apply the inverse before showing it, the monitor will apply the ‘normal’ direction, and it’ll balance out.
TBH I’m not 100% sure how to do that with OpenColorIO, could be going from colorspace->linear?

I guess for that I would need a way to load in the Color LCD profile – which I don’t think is possible right?
Edit: I did try loading the screen’s ICC profile into the file transform tab but didn’t get any useful results.

So how is everyone getting the expected colors in their renders? :slight_smile:

Following this topic. I’ve had some confusing discrepancies with movs exported from Touch and haven’t had the time to dig deeper into it just yet.

+1
Using TD on a Mac and Movie File Out files are not matching the colors that I see in TouchDesigner. Tried messing around with the OpenColorIO Top but still no results. Has anyone figured out a workaround for this?

In your case are you playing back the files within TD, or in another tool? Do they look the same within TD?

I was attempting to play back using Mac’s preview (spacebar) and with Quicktime. When loaded into TD, they seem to look consistent.

What resolution are they? I wonder if quicktime is using a different colorspace transform than we are

I’ve noticed it at different resolutions - I’ve tried 1280x720 and 1920x1080 so far. The inconsistency is also there when I use “Save Image…” on the out TOP.

I’m facing this problem so far, by using my 2020 M1 macbook. Has anyone solved this problem yet??

Facing the same problem, the color becomes lighter after each output
don’t know how to solve it ??

Have the same problem and it’s causing a massive headache when trying to match videos with clients colour charts. Nvidia HEVC/H264 exports the right colors. Mpeg part 2 exports a slightly more yellow and washed out version.

Are you able to share an example video so I can see exactly what you are seeing?

So this makes sense to me. The content you are showing must be sRGB, and since TD does nothing with colorspaces automatically right now, it shows it as-is, which ends up being the correct result. The other apps are also leaving it as-is since they detect that it’s in the correct colorspace. However if your monitor is in a different colorspace, the other apps will apply a transform to match that monitors colorspace, while TouchDesigner is still showing it as-is.

Arriving late to this thread. Has anyone figured out a good workflow?