Welcome to WSL!

New to the forum? Please read this and this.

VFX: Log - lin - Log

Moderator: SecondMan

User avatar
Kristianthu
Posts: 11
Joined: Fri Dec 20, 2019 3:18 am
Real name: Kristian Thuesen
Contact:

VFX: Log - lin - Log

#1

Post by Kristianthu »

Beginner question right here!

I am struggling to get this to a point where i can composite easily.

Usually i get rec709 or srgb plates and deliver in that same colorspace.

Using this footage as BG in my CG scenes and for affecting reflections, GI and so on also works well.


Now, What is the best way to comp with a log plate? Using the cineon tool, setting the source as LogC with a viewer lut at 709 or srgb it looks way off and will not match with my CG as well as the result i get with a LogC to rec709 conversion lut. Using a conversion lut seems fine to get it to match the CG, but its hard returning the finished comp to the same log as the input.

Any guidance here would be great. I feel like a total noob.
blerh.jpg
You do not have the required permissions to view the files attached to this post.

User avatar
SirEdric
Fusionator
Posts: 2377
Joined: Tue Aug 05, 2014 10:04 am
Answers: 12
Real name: Eric Westphal
Been thanked: 3 times
Contact:

Re: VFX: Log - lin - Log

#2

Post by SirEdric »

So you have log plates and want to output log again after comping?
The trick is to not only convert your bg plates to linear, but your cg plates as well (assuming they're sRGB or the like).
Then work your magic and finally, right before the Saver convert everything back to log.

What I normally do is using a cineonLog right after the loader and copy/paste an instance of that right before the saver,
deInstancing only the Mode in the second cineonLog. So whatever you fiddle with in the first one will be correctly taken over by the second one.

Basically like so:

Code: Select all

{
	Tools = ordered() {
		Merge1 = Merge {
			CtrlWZoom = false,
			Inputs = {
				Background = Input {
					SourceOp = "BrightnessContrast1",
					Source = "Output",
				},
				Foreground = Input {
					SourceOp = "Background1_1",
					Source = "Output",
				},
				PerformDepthMerge = Input { Value = 0, },
			},
			ViewInfo = OperatorInfo { Pos = { 440, 49.5 } },
		},
		Background1_1 = Background {
			Inputs = {
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				TopLeftAlpha = Input { Value = 0, },
			},
			ViewInfo = OperatorInfo { Pos = { 440, -16.5 } },
		},
		CineonLog1 = CineonLog {
			Inputs = {
				Depth = Input { Value = 1, },
				SLogVersion = Input { Value = FuID { "SLog2" }, },
				Input = Input {
					SourceOp = "Background1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 110, 82.5 } },
		},
		Background1 = Background {
			Inputs = {
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				TopLeftAlpha = Input { Value = 0, },
			},
			ViewInfo = OperatorInfo { Pos = { 0, 82.5 } },
		},
		Instance_CineonLog1 = CineonLog {
			SourceOp = "CineonLog1",
			Inputs = {
				SettingsNest = Input { },
				Mode = Input { Value = 1, },
				Input = Input {
					SourceOp = "Merge1",
					Source = "Output",
				},
				CommentsNest = Input { },
				FrameRenderScriptNest = Input { },
				StartRenderScripts = Input { },
				EndRenderScripts = Input { },
				EffectMask = Input { }
			},
			ViewInfo = OperatorInfo { Pos = { 605, 82.5 } },
		},
		Saver1 = Saver {
			Inputs = {
				ProcessWhenBlendIs00 = Input { Value = 0, },
				Clip = Input {
					Value = Clip {
						Length = 0,
						Saving = true,
						TrimIn = 0,
						ExtendFirst = 0,
						ExtendLast = 0,
						Loop = 1,
						AspectMode = 0,
						Depth = 0,
						GlobalStart = -2000000000,
						GlobalEnd = 0
					},
				},
				OutputFormat = Input { Value = FuID { "OpenEXRFormat" }, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				Input = Input {
					SourceOp = "Instance_CineonLog1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 715, 82.5 } },
		},
		BrightnessContrast1 = BrightnessContrast {
			Inputs = {
				Input = Input {
					SourceOp = "CineonLog1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 330, 49.5 } },
		},
		magic = Underlay {
			NameSet = true,
			ViewInfo = UnderlayInfo {
				Pos = { 388.333, -49.5 },
				Size = { 275.333, 164.121 }
			},
		}
	}
}

User avatar
Midgardsormr
Fusionator
Posts: 2017
Joined: Wed Nov 26, 2014 8:04 pm
Answers: 22
Location: Los Angeles, CA, USA
Been thanked: 4 times
Contact:

Re: VFX: Log - lin - Log

#3

Post by Midgardsormr »

You might also consider rendering in linear to begin with—convert all your light-producing texture sources to lin before using them in your 3d scene, and use a LUT in your render buffer to convert to sRGB for viewing. It will take some time to get used to the new values you need—every light will need to be brighter, and you might need to change the falloff mode to quadratic (following the inverse square law). That will produce a more physically correct scene. Note, however, that any HDRi you might use is already linear, if it was produced correctly.

User avatar
Kristianthu
Posts: 11
Joined: Fri Dec 20, 2019 3:18 am
Real name: Kristian Thuesen
Contact:

Re: VFX: Log - lin - Log

#4

Post by Kristianthu »

Thanks for good info siredric and midgardsormr.

When converting to linear with rec709 or srgb viewing lut enabled it all still looks very high contrast, like the image i posted. What do you do to normalize the image for compositing? Right now with such a high contrast image its hard to see if my work looks good or not.

User avatar
Midgardsormr
Fusionator
Posts: 2017
Joined: Wed Nov 26, 2014 8:04 pm
Answers: 22
Location: Los Angeles, CA, USA
Been thanked: 4 times
Contact:

Re: VFX: Log - lin - Log

#5

Post by Midgardsormr »

Hmmm… It's common these days for cinematographers to shoot very high exposure, especially on the ARRI Alexa, since it produces less noise, and there's a lot of headroom available. So you'll frequently see that issue. Since you've got a LUT that produces a nice-looking image, maybe combine the Cineon lin to log with your FileLUT into a MacroLUT and view through that.

Make a macro out of those two tools, and verify that when viewing the linear image that it looks like you expect. Then move the .setting file into the LUTs folder. It should become available as a new viewer LUT.

User avatar
Kristianthu
Posts: 11
Joined: Fri Dec 20, 2019 3:18 am
Real name: Kristian Thuesen
Contact:

Re: VFX: Log - lin - Log

#6

Post by Kristianthu »

Thats new to me. Works perfectly!

Thanks a lot!