Nikon Z8 Video exposure

PhotonDoe

Member
Messages
20
Reaction score
5
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
 
Last edited:
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
This primer may be of use for you:

 
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
Assuming you are going to grade the video, I have a very simple approach that works for both HDR and SDR video. Someone else may be better at explaining the detailed physics involved but basically the in-camera waveform monitor is not thinking in IRE, it is simply getting light readings from the sensor. Note there are no units on the scale

The most useful information you can get from the waveform is whether or not the highlights are clipping. Using ETTR with the Color Checker Passport means making sure the white bar does not clip as that is most likely going to be the brightest part of the scene if using it to monitor your lights.

So that would mean adjusting your lights so the white bar is not going over the top of the waveform (best to give it a little bit of leeway so not going right to the top). It is that simple. Using this method, I always get usable footage from an exposure perspective. Then it is a matter of adjusting in post to wherever you want your skintones or anything else to sit. You won't have clipped highlights and you will have minimised shadow noise.

This works for HDR where you are grading to a max of 1000 Nits say as well as SDR where you are grading to 100 Nits max. For the latter you might need to pull the exposure down a bit but you should not have clipped highlights. Practice is key.
 
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
This primer may be of use for you:

https://www.bhphotovideo.com/explor...introduction-to-waveforms-scopes-and-exposure

Thank you. Unfortunately it doesn’t bring much new to the table, the waveform and exposure measuring logic of the Z8 is not very clear, which raises my questions. I have absolutely no issues using the exposure tools on a Ninja for example.
 
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
Assuming you are going to grade the video, I have a very simple approach that works for both HDR and SDR video. Someone else may be better at explaining the detailed physics involved but basically the in-camera waveform monitor is not thinking in IRE, it is simply getting light readings from the sensor. Note there are no units on the scale

The most useful information you can get from the waveform is whether or not the highlights are clipping. Using ETTR with the Color Checker Passport means making sure the white bar does not clip as that is most likely going to be the brightest part of the scene if using it to monitor your lights.

So that would mean adjusting your lights so the white bar is not going over the top of the waveform (best to give it a little bit of leeway so not going right to the top). It is that simple. Using this method, I always get usable footage from an exposure perspective. Then it is a matter of adjusting in post to wherever you want your skintones or anything else to sit. You won't have clipped highlights and you will have minimised shadow noise.

This works for HDR where you are grading to a max of 1000 Nits say as well as SDR where you are grading to 100 Nits max. For the latter you might need to pull the exposure down a bit but you should not have clipped highlights. Practice is key.
Thank you.

Very interesting to find out the waveform is not really mapped to IRE.

I was thinking to go about it the same way, ettr.

I feel I should use the top of the waveform box, as the peaks seem to be there, not the upper third line, am I correct?

While this solves the overall exposure issue, I’d still like to have a way to measure skin, so I’ll have an easier time setting up my lights power.
 
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
Assuming you are going to grade the video, I have a very simple approach that works for both HDR and SDR video. Someone else may be better at explaining the detailed physics involved but basically the in-camera waveform monitor is not thinking in IRE, it is simply getting light readings from the sensor. Note there are no units on the scale

The most useful information you can get from the waveform is whether or not the highlights are clipping. Using ETTR with the Color Checker Passport means making sure the white bar does not clip as that is most likely going to be the brightest part of the scene if using it to monitor your lights.

So that would mean adjusting your lights so the white bar is not going over the top of the waveform (best to give it a little bit of leeway so not going right to the top). It is that simple. Using this method, I always get usable footage from an exposure perspective. Then it is a matter of adjusting in post to wherever you want your skintones or anything else to sit. You won't have clipped highlights and you will have minimised shadow noise.

This works for HDR where you are grading to a max of 1000 Nits say as well as SDR where you are grading to 100 Nits max. For the latter you might need to pull the exposure down a bit but you should not have clipped highlights. Practice is key.
Correct. If you're just starting out with video, this is basically the way I'd suggest working initially.
 
Hello. I’m trying to understand how to achieve optimal exposure in video using the tools Z8 gives me. I also have a Calibrite Passport Color Checker Video.

I shoot mostly in ProRes with log 10bit.

My general understanding is that for video ETTR approach is optimal, as shadow recovery might not be great.

Using the Z8 waveform I don't understand how it maps to IRE. Is the upper line 100 IRE or the top of the waveform window?

Let’s say another scenario, i want to set my lights so that skin tone is 70 IRE. How would I go about that? Would it be possible using zebras (dial lights until zebra is on the skin)? But what value would i set the zebra at? I know that for bit its a liner conversion (50 IRE = 128 zebra) but is it the same for nlog?

I’ve tried to understand this by reading the nlog specification but it’s not very clear.
Assuming you are going to grade the video, I have a very simple approach that works for both HDR and SDR video. Someone else may be better at explaining the detailed physics involved but basically the in-camera waveform monitor is not thinking in IRE, it is simply getting light readings from the sensor. Note there are no units on the scale

The most useful information you can get from the waveform is whether or not the highlights are clipping. Using ETTR with the Color Checker Passport means making sure the white bar does not clip as that is most likely going to be the brightest part of the scene if using it to monitor your lights.

So that would mean adjusting your lights so the white bar is not going over the top of the waveform (best to give it a little bit of leeway so not going right to the top). It is that simple. Using this method, I always get usable footage from an exposure perspective. Then it is a matter of adjusting in post to wherever you want your skintones or anything else to sit. You won't have clipped highlights and you will have minimised shadow noise.

This works for HDR where you are grading to a max of 1000 Nits say as well as SDR where you are grading to 100 Nits max. For the latter you might need to pull the exposure down a bit but you should not have clipped highlights. Practice is key.
Correct. If you're just starting out with video, this is basically the way I'd suggest working initially.
 
The waveform represents IRE, with 0% at the bottom line and 100% at the top line. The three lines in between are 25%, 50%, and 75%.

IRE is a measure of the encoded video signal, not a measure of the light from the scene. Obviously there is a correlation between the two, but that correlation changes depending on how the camera is configured to encode light. With N-Log, the encoding is logarithmic, using the curve described in Nikon's N-Log specification. The N-Log specification says middle gray scene reflectance is encoded as 35% IRE in N-Log. Regardless of the encoding, 0% IRE always refers to clipped blacks and 100% IRE refers to clipped whites.

I'm working on a video tentatively entitled "Log demystified". It will explain how log formats like N-Log work in a level of detail not available anywhere else. My goal is to make log as relatable to video shooters as raw images are to photographers. It's an ambitious project :-)

Here's a quick tip whenever you're at a loss about how to expose a scene in N-Log to the waveform. There are exceptions but this will get you going:
  1. While in video mode, switch from N-Log to SDR
  2. Set the ISO to 3 stops below your N-Log ISO. For example, for N-Log ISO of 800, set the SDR ISO to 100. The reason for this is explained here.
  3. Expose your scene to the SDR waveform however you're accustomed.
  4. Switch back to N-Log and restore the ISO back to your N-Log value (the camera will do this automatically if your non N-Log ISO was < 800).
  5. Look at how the waveform changed when you switched back to N-Log. This is your future waveform target for that same exposure. In other words, use this technique to train yourself on what the waveforms should look like in N-Log for the exposures you want.
If you prefer to expose in photographic terms (for example, to the exposure meter), follow the same procedure as above but using the stills mode of the camera instead of video mode. Use the "Neutral" picture control when doing so, as that's the closest to Nikon's N-Log intent (for the LUT anyway).
 
Last edited:
I do an even simpler version of this (which is what Paul Leeming suggests for his N-log LUTs): I set peaking to 100%, and make sure no highlight detail I want preserved has zebra stripes. I increase exposure up til I just see zebra stripes, and then back down 1 click which is usually 1/3 stop to make them disappear, and that's my ETTR exposure. I've confirmed this by taking it through my Resolve workflow and looking at where the highlights end up on Resolve's scopes, and they're just right below clipping. I have View Assist on in the camera as well.

For your skin reference, you can run tests with bracketed exposures with a chart and a representative person, and then see/measure in your editor which exposure places the skin level you want in your final output space and gamma (say rec.709A for Mac people), and determine from that what your camera metering has to look like on its waveforms to replicate it. It shouldn't take very long to run this test.

In either case, be sure your WB is set to what you want already as that can affect the metering. Usually I WB off the WB panel in my test chart for my tests, but in the field, your WB choices can be pretty different so YMMV.

--
https://www.instagram.com/lolcar/
 
Last edited:
I did some tests,

I set my camera on a tripod and varied Zebras until I saw them appear on the Calibrite white upper strip (test 1) or a Nikon made gray card I have since film times (test 2), by varying the light (Test One) or by varrying the ND filter (Test Two).

Test 2 is more accurate, because for test one I used an Amaran light but the percentage setting is abrupt in some cases, so I couldn't get it to the exact point i wanted zebra to exactly show on the swatches.

Then I recorded, imported all in DaVinci and applied CST nlog/REC2020 -> Rec709/Gamma 2.2 with a timeline level node.

I measured for each clip where on the waveform the zebra portions land (I used a power window).

I'm not a data scientist, but I managed to make this graph in Google Docs. If anyone needs the data, I can send it to you.

Please also note that when switching to zebras lower than 120, I had to use Mid Zebras in Z8, and set the latitude to +/- 5. I also noticed that under 25 zebras don't seem to show anymore, could be a Log thing.

I think the relationship between REC709 IRE and Zebras is somewhat linear. Not sure about the dip in Test 1 tho.

802d419d28d143bfa0d7fa81b4ff18d7.jpg.png

Following this math, for REC 709 IRE around 70% for white skin tones, zebra should be around 178, if one wants to expose exactly for skin. But as said above, overall ETTR is a good idea.

So I think I could:

1. Expose the scene to have most of the data in the middle of the waveform

2. Set Zebra to 180 and dial in light until I see skin to 180

3. Push exposure upwards for the whole scene to the top, without clipping.

Or as someone else said, expose for REC 709 not nlog, set zebra 180, dial in light until I see zebra on the skin, switch to log and ETTR (basically same thing but 1st step would be more accurate).
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

 

Attachments

  • 4433180.jpg
    4433180.jpg
    109 KB · Views: 0
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,



Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
 
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).

IRE/Luminance to RGB values (0,255) translate according to the formula in Nikon's document and in your graph.

This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?

On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)

I've feel I gone down a technical-math rabbit hole, which is fun, but I just wanted to know best way to set my light output for the talent after setting ambient exposure.
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).
The x-axis luminance is the scene-referred luminance. The IRE is actually the same as the RGB zebra values on the y-axis, just with a different scale. You can convert the y-axis RGB value to IRE via RGB/256. For example, 93/256 = IRE 36% (which is the N-Log 18% grey IRE) - so N-Log middle grey is 93 on the Zebra, which corresponds to IRE 36% on the waveform.
This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?
Yes, the bit-depth on the scale (8/10/12 bit) doesn't matter - the values scale accordingly.
On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)
Nikon says 35% IRE for N-Log 18% grey (page 12 of Nikon Z7/Z6 II Professional Technical Guide N-Log Recording)
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).
The x-axis luminance is the scene-referred luminance. The IRE is actually the same as the RGB zebra values on the y-axis, just with a different scale. You can convert the y-axis RGB value to IRE via RGB/256. For example, 93/256 = IRE 36% (which is the N-Log 18% grey IRE) - so N-Log middle grey is 93 on the Zebra, which corresponds to IRE 36% on the waveform.
This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?
Yes, the bit-depth on the scale (8/10/12 bit) doesn't matter - the values scale accordingly.
On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)
Nikon says 35% IRE for N-Log 18% grey (page 12 of Nikon Z7/Z6 II Professional Technical Guide N-Log Recording)


Yes, thank you, got it after I asked. IRE0-100 = Zebras0-255 on camera screen. I put your formulas in google sheets, replicated your graph, thank you so much easier to understand now.

But why does nLog curve ends at 150? There is definitely space above if I set the zebras to values higher than 150.
 
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).
The x-axis luminance is the scene-referred luminance. The IRE is actually the same as the RGB zebra values on the y-axis, just with a different scale. You can convert the y-axis RGB value to IRE via RGB/256. For example, 93/256 = IRE 36% (which is the N-Log 18% grey IRE) - so N-Log middle grey is 93 on the Zebra, which corresponds to IRE 36% on the waveform.
This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?
Yes, the bit-depth on the scale (8/10/12 bit) doesn't matter - the values scale accordingly.
On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)
Nikon says 35% IRE for N-Log 18% grey (page 12 of Nikon Z7/Z6 II Professional Technical Guide N-Log Recording)
Yes, thank you, got it after I asked. IRE0-100 = Zebras0-255 on camera screen. I put your formulas in google sheets, replicated your graph, thank you so much easier to understand now.

But why does nLog curve ends at 150? There is definitely space above if I set the zebras to values higher than 150.
N-Log continues to 255 for input luminances from 1.0 to 8.0. Those represent the 3EV of extra highlight headroom created by N-Log when its "fake" ISO 800 induces exposures that are -3EV "underexposed".
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).
The x-axis luminance is the scene-referred luminance. The IRE is actually the same as the RGB zebra values on the y-axis, just with a different scale. You can convert the y-axis RGB value to IRE via RGB/256. For example, 93/256 = IRE 36% (which is the N-Log 18% grey IRE) - so N-Log middle grey is 93 on the Zebra, which corresponds to IRE 36% on the waveform.
This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?
Yes, the bit-depth on the scale (8/10/12 bit) doesn't matter - the values scale accordingly.
On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)
Nikon says 35% IRE for N-Log 18% grey (page 12 of Nikon Z7/Z6 II Professional Technical Guide N-Log Recording)
Yes, thank you, got it after I asked. IRE0-100 = Zebras0-255 on camera screen. I put your formulas in google sheets, replicated your graph, thank you so much easier to understand now.

But why does nLog curve ends at 150? There is definitely space above if I set the zebras to values higher than 150.
N-Log continues to 255 for input luminances from 1.0 to 8.0. Those represent the 3EV of extra highlight headroom created by N-Log when its "fake" ISO 800 induces exposures that are -3EV "underexposed".
Thank you, all clear.

I measured on the Calibrite, it seems the light skin swatches in log should be 105/115 on zebras which corresponds to 41 / 44 IRE.

Also tested, setting zebras to 115 and getting them on skin, then importing to DaVinci and CST to Rec709 gives correct exposure, with IRE for skin highlights at 70.
 
Last edited:
Here are the input -> output values for Rec.709 and N-Log. You can use these to set the Zebras to the value you want anywhere on the curve. I've included data callouts for 18% grey.

Hi,

Thank you. How did you do it? By using the nlog specifications document ? What about REC 709, I found nothing in that document.

It doesn't seem linear, so I'm quite curious now why my two tests gave a very different curve shape.
Yep, I converted the formulas in the N-Log and Rec.709 specifications to Excel formulas then graphed them. Here are the Excel formulas I created if you'd like to graph it yourself:

Rec.709, Input -> Output
=IF(B2<0.018,4.5 * B2, B2^0.45*1.09929682680944 - 0.099)*255

N-Log, Input -> Output
=IF(B2<0.328,650*(B2+0.0075)^(1/3), 150*LN(B2)+619)/1023*255

Put your input values of 0.0 to 1.0 in B2, B3, B4, ...., copying the above formula into C2, C3, C4...

Rec.709 isn't linear, although many mistakenly believe it to be. It's actually logarithmic, just using a different curve than the log formats like N-Log.
Thanks, a lot of math there! Excellent work!

So middle gray in nlog should be at 93 zebras or 105 for rec 709 (quite far from my 180 conclusion, if one wants to expose skin same as middle gray).

To recap, to see if I understand correctly, and for others that might read:

Luminance from 0 to 1 translates to IREs from 0 to 1023 (or 0% to 100%).
The x-axis luminance is the scene-referred luminance. The IRE is actually the same as the RGB zebra values on the y-axis, just with a different scale. You can convert the y-axis RGB value to IRE via RGB/256. For example, 93/256 = IRE 36% (which is the N-Log 18% grey IRE) - so N-Log middle grey is 93 on the Zebra, which corresponds to IRE 36% on the waveform.
This applies regardless of 8-bit or 10-bit or 12-bit (not that I find a good idea to shoot log in 8bit), or is it just for 10 bit ?
Yes, the bit-depth on the scale (8/10/12 bit) doesn't matter - the values scale accordingly.
On another note, if Nikon says 32% IRE for Gray 18 in LOG, things I've read say to expose skin at 60% IRE (Rec 709), but considering many say skin should be in middle gray area, it sounds like a huge difference in exposure, even looking at your graph, unless i'm looking at it wrong (skin 60% IRE Rec709 vs 32% IRE nLog)
Nikon says 35% IRE for N-Log 18% grey (page 12 of Nikon Z7/Z6 II Professional Technical Guide N-Log Recording)
Yes, thank you, got it after I asked. IRE0-100 = Zebras0-255 on camera screen. I put your formulas in google sheets, replicated your graph, thank you so much easier to understand now.

But why does nLog curve ends at 150? There is definitely space above if I set the zebras to values higher than 150.
N-Log continues to 255 for input luminances from 1.0 to 8.0. Those represent the 3EV of extra highlight headroom created by N-Log when its "fake" ISO 800 induces exposures that are -3EV "underexposed".
Thank you, all clear.

I measured on the Calibrite, it seems the light skin swatches in log should be 105/115 on zebras which corresponds to 41 / 44 IRE.

Also tested, setting zebras to 115 and getting them on skin, then importing to DaVinci and CST to Rec709 gives correct exposure, with IRE for skin highlights at 70.
Great, glad to hear. Like I said earlier, I have a tutorial video planned that I think will bring a lot of people to N-Log and other log formats like S-Log and V-Log. I just have to find the time to work on it :)
 
Last edited:
This is fine if you are recording video in controlled lighting conditions and can set precise exposure before you press the record button. But what are people doing when light conditions are constantly changing while shooting? (I shoot with the Z8 and Z9 in a professional kitchen where light hitting the sensor changes second to second. I don't have the luxury of scopes/charts/zebras in extremely unpredictable conditions.)

In the "old" days, I used to ride the iris (aperture) because even small increases in gain (ISO) were too noisy. Thank goodness for modern sensors and auto ISO with manual exposure. I still get some unusable footage, but adding a few clicks of exposure control, playing around with different exposure modes, and judicious use of AE Lock usually get good results that can be made much better in post.

What are others doing in unpredictable lighting conditions?
 
Last edited:

Keyboard shortcuts

Back
Top