[Cin] lut3d utils

Andrew Randrianasulu randrianasulu at gmail.com
Sat May 27 17:29:45 CEST 2023

Paul Mahol (ffmpeg dev) pointed me at this technology, available as ffmpeg
filter too:


*Concept: *

A Hald CLUT is an image that has a specific color pattern on it. In this
pattern all colors in the color space are represented. An application that
uses the HALD CLUT image to color correct an image, takes a source image
color and looks it up in the color pattern of the HALD CLUT, and the color
it finds in that place is the corrected color that should replace the
source color in the destination image. If the color doesn't exist in the
CLUT, one can look up several colors and interpolate between them.


files usually in png format ...



not HDR, just 8bit sRGB ...


sort of "extracts" processing in-camera as  look-up table image!


um, web application (!!) for generating those lut files for some cameras

A Web App for generating 1D and 3D Lookup Tables (LUTs) for video cameras
that shoot log gammas, principally the Sony CineAlta line.

LUTCalc generates 1D and 3D .cube format LUTs suitable for use in DaVinci
Resolve, Adobe Speedgrade and as user 3D LUTs in Sony's log-recording video
cameras. These include the PMW-F5, PMW-F55 and PXW-FS7.


сб, 27 мая 2023 г., 17:31 Andrew Randrianasulu <randrianasulu at gmail.com>:

> Hm ...
> https://github.com/google/lut3d_utils
> =====
> Tone Map Metadata (3D Look-Up-Table) Injector
> A tool for manipulating production metadata
> <https://github.com/google/lut3d_utils/blob/docs/Static-Colour-Mapping-Metadata-lut3d-rfc.md>,
> specifically tone map metadata (3D LUT), in MP4 and MOV files. It can be
> used to inject 3D LUT metadata into a file or validate metadata in an
> existing file.
> <https://github.com/google/lut3d_utils#usage>Usage
> Python 3.11 <https://www.python.org/downloads/> must be used to run the
> tool. From within the directory above lut3d_utils:
> <https://github.com/google/lut3d_utils#help>Help
> python lut3d_utils -h
> Prints help and usage information.
> <https://github.com/google/lut3d_utils#inject>Inject
> python lut3d_utils -inject_lut3d -i ${input_file} -o ${output_file} -l ${lut3d_file} -p COLOUR_PRIMARIES_BT709 -t COLOUR_TRANSFER_CHARACTERISTICS_GAMMA22
> Loads a tone mapping (3D LUT) metadata from lut3d_file and inject it to
> input_file(.mov or .mp4). The specified output_colour_primaries and
> output_colour_transfer_characteristics are injected too. It saves the
> result to output_file.
> input_file and output_file must not be the same file.
> <https://github.com/google/lut3d_utils#examine>Examine
> python lut3d_utils -retrieve_lut3d -i ${input} -l ${lut3d_file}
> Checks if input_file contains 3D LUT metadata. If so, parses the metadata
> and prints it out. In addition, it saves the 3D LUT entries to lut3d_file
> as a ".cube" file.
> =====
> soooooo .... in theory you can use those for injecting and exporting those
> 3d luts in mp4/mov ..
> I wonder if ffmpeg/libavformat can be teached to do this, too?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20230527/b2e8639a/attachment.htm>

More information about the Cin mailing list