r/CamacApp

Change camera metadata

I would add the ability to change the files that are shot in camac to a different one, give custom names as if I shot the image on a different camera like a sony, fujifilm or even another smartphone, ability to change it’s mm, F stop and what lens was used.

reddit.com
u/iiyamaprolitex — 8 days ago

Shot into the sun

Shot this a few weeks a go using 16ev RAW setting. I was testing the wide lens on my new (to me) but used iPhone 15pro. This is a small webp image but the TIFF colours are very good. I find it quite amazing the sun is clearly in the shot yet I can still get a nice dynamic range in the image.

Into the Sun

reddit.com
u/HyperPhoto — 10 days ago

Proraw support?

It would allow 2x 12mpx shots and Ik proraw isn’t real raw but it has better detail than heif and would be useful for 16EV mode. Manual control isn’t possible but dropping exp by -4EV is still possible.

reddit.com
u/iiyamaprolitex — 13 days ago

Tutorial: How to Use Log LUTs in Camac

This guide shows how to use the Fujifilm F-Log2(Not F-Log2C) LUT in Camac as an example.

https://www.fujifilm-x.com/global/support/download/lut/

(This is an independent tutorial. Fujifilm, F-Log2, F-Gamut, and related LUT files are trademarks or property of FUJIFILM Corporation. Camac is not affiliated with or endorsed by FUJIFILM.)

TL;DR

  1. Paste the code below into Custom shader(Settings -> Format -> Rendering method: Custom):
constant float3x3 kBT709_to_FGamut = float3x3(
    float3(0.6274038959f, 0.0690972894f, 0.0163914389f),
    float3(0.3292830384f, 0.9195403951f, 0.0880133079f),
    float3(0.0433130657f, 0.0113623156f, 0.8955952532f)
);

[[stitchable]] float4 render(sample_t s) {
    float3 x = max(0, kBT709_to_FGamut * s.rgb);
    float3 linear_part = 8.799461 * x + 0.092864;
    float3 log_part = 0.245281 * log10(5.555556 * x + 0.064829) + 0.384316;
    float3 out = select(linear_part, log_part, x > 0.000889);
    return float4(out, 1.0);
}
  1. Load the FLog2_to_XXXX.cube LUT.

Why this works

To understand this code, we need to refer to the F-Log2 datasheet:

https://dl.fujifilm-x.com/technical-data/F-Log2_DataSheet_E_Ver.1.1.pdf

The key idea is simple:

  • The custom shader receives non-clipping ITU-R BT.709 input.
  • Fujifilm F-Log2 uses F-Gamut.
  • So we must first convert the input color from BT.709 to F-Gamut.
  • After that, we apply the F-Log2 curve.

Step 1: Get kBT709_to_FGamut

According to the datasheet, F-Log2 uses F-Gamut as its color space.

However, the input of the custom shader is non-clipping ITU-R 709.

That means we need to convert BT.709 into F-Gamut first.

To do that, open:

https://suikapps.com/colorspace-matrix

Then enter the F-Gamut values from the last page of the F-Log2 datasheet into the target settings.

The tool will generate the conversion matrix for you automatically.

That is how we get this part of the code:

float3 x = max(0, kBT709_to_FGamut * s.rgb);

This line converts the incoming BT.709 color into F-Gamut.

The max(0, ...) part prevents negative values from going into the next step.

Step 2: Write the render function

The F-Log2 datasheet provides the conversion formula on pages 2–3.

That formula is implemented in this part:

float3 linear_part = 8.799461 * x + 0.092864;
float3 log_part = 0.245281 * log10(5.555556 * x + 0.064829) + 0.384316;
float3 out = select(linear_part, log_part, x > 0.000889);

This means:

  • use the linear formula for very dark values,
  • use the log formula for the rest.

The function:

select(a, b, c)

means:

  • if c is true, use b,
  • otherwise use a.

So in this case:

  • when x > 0.000889, the shader uses log_part,
  • otherwise it uses linear_part.

Finally, the result is returned as:

return float4(out, 1.0);

The 1.0 here means the output is fully opaque.


Summary

To use the Fujifilm F-Log2 LUT correctly:

  1. Convert the input from BT.709 to F-Gamut.
  2. Apply the F-Log2 transfer function.
  3. Load the matching .cube LUT file.

That is all you need to make the LUT work inside a custom rendering method in Camac.

reddit.com
u/qdwang — 13 days ago