Linear workflow for Rec709


#21

In film production they will generally spell this out for you.

You will have a LUT (shared between vendors and the client) that is for a specific format. (Usually DPX)

So you all view the Cineon file with the LUT on a monitor capable of that gamut (decent quality monitor) that is calibrated for the correct color space. And you all should be seeing relatively the same image.

The trouble you have is if you are sending things to people (clients, ahem) viewing it incorrectly.

For instance, Hereafter had a LUT provided by Technicolor that was for DCI-P3 color space. So we viewed everything on monitors calibrated to DCI-P3 (Dreamcolors with the correct gamut that they could reproduce) and through the LUT. We even had a monitor LUT version for sRGB so the client could view images at home on an sRGB screen that was calibrated to sRGB (he didn’t have a Dreamcolor). So despite being different color spaces, the LUT made things reasonably close.

View in a darkened environment and away from things like red painted walls. :slight_smile:


#22

What a thread …

I cannot believe the poster as a lighting TD is having to sort this out. Where on earth is your Comp sup and more importantly where on earth is your CG sup.?

b


#23

Out having a beer?

A lot of places don’t have a correct color pipeline. Some places know of one but don’t want to take the time to implement one.

Of the places I have worked, only 2 had a correct color pipeline.

I decline to be specific, but yeah, it was disappointing at some places given their reputation.


#24

Each day we learn a new type, thanks guys.
/Rachid


#25

Hi, this is me again :slight_smile:

After playing a little bit I discovered that putting a gamma node at 0.513 is quite different than converting the textures from Rec709 to linear (everything is coming out more saturated and dark).
I’m not able to use Maya color profiles cause the textures are maps files and so the renderer ignore them.
I was able to do a converter in nuke with an expression node using this

na =  0.099
nb = 4.5
nc =  2.2222
tresh =  0.0801

r>tresh?pow((r+na) / (1+na), nc):r/nb
g>tresh?pow((g+na) / (1+na), nc):g/nb
b>tresh?pow((b+na) / (1+na), nc):b/nb

I was wondering if someone could help me doing the same in maya (if it’s possible)

Thank you :slight_smile:


#26

Maya’s color picker is sRGB so it should be linearized based on that.

Were the textures painted from an sRGB colorspace or rec 709? Your source is important. Chances are they were painted in sRGB. Since the primaries are the same for sRGB and rec 709 then a gamma linearization is probably good *enough.

I would just linearize in Nuke, turn into a .map file and render. Or better, maketiledexr.exe from OpenEXR from linearized EXRs from Nuke.


#27

Hi Bitter!

I own you a couple of beers, so nice to know you are out there helping :slight_smile:
Gamma linearization at 0.513 is way better than at 0.4545 but I still get deep red were it’s supposed to be orange, I’m able to compensate with lights but I have to see that it’s a bit of a pain :slight_smile:
Most of the problems are in the darks (where the curves get different http://i1.creativecow.net/u/182404/rec709encodecurvecompare.jpg).
I’m not in charge of changing the pipeline, I discussed the option of using Nuke to convert the files before getting them in Maya but I was also trying to find a workaround.

I guess a MR shader to do that math would be really easy to write, but I have 0 experience with that eheh.
In Nuke is really easy to write that expression, no way to do the same in Maya?


#28

Linearizing an sRGB texture with the wrong gamma is technically wrong, since you’re not cancelling out the curve. But if it looks nice, oh well.

You can look at this: http://download.autodesk.com/global/docs/maya2012/en_us/Nodes/colorProfile.html

But I’m not a developer so you’re a bit on your own there. Maybe someone looking at this can tell you how to use a custom color profile created in Maya.


#29

Ok so this is more proof of concept than anything else - I’ve written a colour utility node which converts a colour from SRGB to Linear.

http://earlyworm.org/3d/python/srgbToLinear.py

Seems to work well for me in Maya 2009, although it is slow when given a texture as an input colour, but that’s more it being a scripted plugin rather than a proper c++ plugin. If you do want to use this I’d probably only use it for picked colours (ie. picking the colour of your lights).


#30

wow man, lots of code there :slight_smile:
I didn’t know you could do that in python.

It’s really nice from you but I was able to write and compile (only for linux right now) a “colorspace” shader for mental ray :beer:
Actually you can convert from Rec709, sRGB, gamma 2.2 and gamma 1.8 to linear (I’m just trying to replicate nuke’s node :p) and it’s working quite well (i can’t believe it eheh).
I´m still doing some testing, it’s working with textures, shaders, lights and passes but you never know.
If you are interested I would love to share it with the community, and if someone has some recommendations for compiling shaders on windows, please help! I’m getting crazy.


#31

Finally I had some time to compile the shader for win64 and to put it on myMentalRay.com.
Here is the link if someone is interested: download
I also wrote a little bit about it on my blog if you want to know more: blog

Cheers


#32

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.