Preamble
The HLG Normalized OFX Plugin has been developed to support quick and easy normalization of Hybrid Log Gamma (HLG) content in Editing and VFX applications. The HLG Normalized plugin includes support for the HLG BT.2100 specification, the HLG BT.2408 recommendations as well as Sony’s custom HLG1, HLG2 and HLG3 implementations.
This plugin builds upon the development of the HLG Normalized DCTL Transform that was specific to DaVinci Resolve and expands it into an OFX Plugin with support for multiple Video Editing and Visual Effects applications across numerous platforms. The Premise for the HLG Normalized Transform and Plugin was the lack of proper support for transforming Scene referred HLG content in Video Editing (NLE) applications – especially in ACES workflows. To date, many of the existing HLG options continue to be inaccurate as they mainly target HLG in a Display referred context (i.e. HLG as an Output format) and not a Scene referred context (i.e. HLG as-shot on camera), hence the need for the HLG Normalized plugins.
To add further to the issue, there is quite a lot of confusion around exposing for Hybrid Log Gamma and Camera manufacturers don’t make the job any easier. Some cameras will correctly calculate the HLG (BT.2100) Exposure Values on the in-camera exposure meter. Others, such as the current range of Sony cameras, show completely wrong readings on the Exposure Meter. In the case of Sony, these calculations appear aligned to Rec.709 Scene instead of HLG BT.2100. In those situations, the Custom Zebra settings may need to be configured to the respective Middle Gray IRE parameters – assuming the Zebra settings can go below 22 IRE for the designated camera.
HLG Exposure Settings
For future reference, the table on the right identifies the IRE values that each respective HLG implementation should be exposed to with reference to an 18% Middle Gray card.
When using a Waveform Monitor, the Middle Gray chart/card readouts should align to these values.
HLG Type | IRE Value |
HLG BT.2100 | 21% |
HLG BT.2408 | 38% |
Sony HLG1 | 19% |
Sony HLG2 | 20% |
Sony HLG3 | 21% |
The following table documents the Camera Native IRE values when over-exposing or under-exposing footage with Hybrid Log Gamma profiles aligned to BT.2100, relative to 18% Middle Gray at 21.2% IRE.
IRE % | 7.5 | 8.9 | 10.6 | 12.6 | 15 | 17.8 | 21.2 | 25.2 | 30 | 35.7 | 42.4 | 50.5 | 58.6 |
Stops | -3 | -2.5 | -2 | -1.5 | -1 | -0.5 | 0 | +0.5 | +1 | +1.5 | +2 | +2.5 | +3 |
The following table documents the appropriate IRE values when over-exposing or under-exposing footage with Hybrid Log Gamma profiles aligned to BT.2408, relative to 18% Middle Gray at 38% IRE (37.8% IRE to be precise).
IRE % | 13.4 | 15.9 | 18.9 | 22.5 | 26.7 | 31.8 | 37.8 | 44.5 | 53.3 | 61.1 | 68.4 | 75.4 | 82.1 |
Stops | -3 | -2.5 | -2 | -1.5 | -1 | -0.5 | 0 | +0.5 | +1 | +1.5 | +2 | +2.5 | +3 |
HLG Characteristic Curves
For reference, the diagram below plots the characteristic curves of HLG BT.2100, HLG BT.2408, Sony HLG1, HLG3 and HLG3 profiles against 10-bit coding values.
Prerequisites
The HLG Normalized Plugin has been developed using the OpenFX 1.4 standard.
It includes GPU acceleration using OpenCL 1.2, CUDA 10.2 and Metal 2.0 as well as CPU Multi-threading support.
The Plugin is supported on 64-bit instances of Linux, Windows and MacOS.
MacOS support is built from OSX 10.13 onwards, though the plugin may also work on older OSX releases.
Installation
The installer files must be extracted from the zip file. The respective installer will manage installation to the required locations.
The HLGNormalized.ofx.bundle package MUST be installed to the designated OFX Plugin folder for the relevant operating system.
Windows
The Windows Installer will place the OFX Plugin to the following folder:
C:\Program Files\Common Files\OFX\Plugins\
MacOS
The MacOS Package Installer will place the OFX Plugin to the following folder:
/Library/OFX/Plugins/
Note that some Mac Users may experience issues with Gatekeeper Security. A security prompt may appear and prevent the plugin from being installed or used. In this scenario, the OFX Plugin will need to be allowed through the Mac Security settings under System Preferences > Security & Privacy > General.
Linux
The OFX Installer will need to be executed through a command terminal. The run command may look like:
./HLGNormalized_OFX_v1.0_Linux.run
The OFX Plugin will be copied to the following folder:
/usr/OFX/Plugins/
Uninstall
The Plugin can be uninstalled on Windows systems via the “Add or remove programs” feature.
For the MacOS and Linux operating systems, simply delete the HLGNormalized.ofx.bundle package from the designated folder of your Operating System.
For MacOS, this package is located under:
/Library/OFX/Plugins/
For Linux, this package is located under:
/usr/OFX/Plugins/
Usage
The HLG Normalized Plugin has been developed to work across numerous workflows, including ACES. The plugin has been developed with some internal smarts, allowing default parameters to be altered based on the host application. The sections below will outline the parameters available and sample workflows.
Usage Parameters
Exposure Correction
The Exposure Correction Parameter allows for exposure adjustment in Exposure Values (EV) from -8 to +8.
The values can be manipulated using the slider or by inputting the EV directly in the designated field. Source footage that is either over-exposed or under-exposed can be corrected this way.
HLG Type
The HLG Type setting allows for the desired HLG implementation to be selected. The options are as follows:
- HLG BT.2100
- HLG BT.2408
- Sony HLG1
- Sony HLG2
- Sony HLG3
- iPhone HLG
The default selection is HLG BT.2408
HLG Color Gamut
This setting allows for the desired Color Gamut to be selected based on different HLG settings. This has been specifically added for Sony’s HLG1 – HLG3 implementations. The options are Rec.709 and Rec.2020. The default option is Rec.2020 as per the HLG BT.2100 specification. When the HLG Type is set to HLG BT.2100 or HLG.BT2408, the HLG Color Gamut setting is locked to Rec.2020 and cannot be changed.
To Color Space
This setting will transform the source to the desired color space, normally aligning with the Timeline Color Space in the host application.
The Color Space Options are:
- ACES AP0
- ACES AP1
- P3 (D65)
- Rec. 709 (D65)
- BT. 2020 (D65)
- DaVinci Wide Gamut
The default selection is dependent on the Host application.
Note: When the To Gamma is set to ACEScc or ACEScct, the To Color Space is automatically locked to ACES AP0 and the plugin internally converts to AP0, then down to AP1. ACES AP1 is the color space associated with ACEScc, ACEScct and ACEScg, whilst ACES AP0 consists of the ACES 2065-1 color primaries.
To Gamma
This setting will convert the source to the desired Gamma, normally aligning with the Timeline Gamma settings in the host application.
The Gamma Options are:
- Linear
- ACEScc
- ACEScct
- Scene (ITU-R BT.709)
- Gamma 2.2
- Gamma 2.4
- Gamma 2.6
- DaVinci Intermediate
- sRGB
The default Gamma setting is dependent on the host application.
Bypass Color
This setting allows all color parameters to be bypassed so that only the Gamma is affected. If checked, the HLG Color Gamut and To Color Space options are disabled.
Advanced Parameter: Custom IRE
The Custom IRE parameter allows the selection of Custom IRE values for footage that is exposed to non-standard IRE values. The values can be manipulated using the slider or by inputting the IRE value directly in the designated field. The default value is set to the HLG.BT2408 recommendation of 38% IRE (37.83% to be exact).
Advanced Parameter: Highlight Rolloff
Tone mapping adjustment. Set to zero for no tone mapping or set to highest level for significant tone mapping and smoother highlight rolloff.
Advanced Parameter: Gamut Mapping
Gamut compression mapping is now enabled by default if outputting to smaller color space.
Advanced Parameter: Desaturate
Toggle desaturation of colors. If enabled, saturation is reduced down to 85%.
Example Workflows
DaVinci Resolve
ACEScc or ACEScct
Using the HLG Normalized plugin inside an ACES workflow is fairly straightforward. Any source media must firstly be set to have No Input Transform. The HLG Normalized plugin can then be added into the Node structure of the designated clip. The To Gamma must be set to the required ACEScc(t) parameter as per the project settings. The To Color Space will automatically change to ACES AP0 as a result.
DaVinci YRGB & YRGB Color Managed
When editing in DaVinci YRGB Color Managed workflows, the source media’s Input Color Space must be set to Bypass or Same as Timeline depending on the version of Resolve. The To Color Space and To Gamma must also match the settings of the project appropriately. In a Color Managed workflow, these parameters will be dependent on the project Timeline color settings. In a Non-Color Managed workflow, these will be dependent on the Output color settings.
In Resolve 16 and below, the default timeline option is normally Rec.709 for Color Space and Gamma 2.4 for Gamma. In Resolve 17 and above, the default gamma option will vary between Gamma 2.4 and Scene, depending on whether the installation is completely new or updated from earlier versions.
There are additional caveats to be aware of when using Resolve 17 and above. In Color Managed workflows, Resolve will now set Tone and Gamut mapping on input and output settings by default – these are referred to as Input DRT and Output DRT. Enabling DRT may have adverse impacts to the scene before it is normalized. To avoid issues with tone and gamut mapping when using SDR presets, it is recommended to select the Custom preset and to disable the Input DRT by selecting None. One may also choose to select the the DaVinci Wide Gamut preset first before changing to Custom and output to an SDR format such as Rec.709. This preset will expand the project to a wider Color Gamut and Dynamic Range, similar to an ACES workflow. Regardless, it is recommended that Input DRT be explicitly disabled across all projects.
Assimilate Scratch
When using the HLG Normalized plugin inside Assimilate Scratch, the source media must be set to either a Rec.2020 or a Rec.709 Color Space depending on the color gamut of the recorded media. The Gamma of the source media must also be set to Linear. Within the HLG Normalized plugin, the To Gamma selection must be set to Linear and the Bypass Color checkbox must also be ticked. These parameters allow Assimilate to perform the source Color Space conversion whilst the plugin will manage the HLG to Linear conversion. By default, the plugin automatically sets these required parameters when first loaded inside Assimilate Scratch.
Vegas Pro
The default output in Vegas Pro is set to Rec.709 Color Space and Scene (ITU-R BT.709) Gamma. This is to cater for the most common 8-bit project settings. When switching to 32-bit floating point, consider changing Timeline Color Space and Timeline Gamma to align with the project settings.
VFX Applications
When using the HLG Normalized plugin inside VFX applications such as Fusion Studio, Nuke and Natron, the To Color Space option automatically defaults to ACES AP1 (also referred to as ACEScg). The To Gamma setting also defaults to Linear in order to cater for the required Visual Effects workflows.