HDfury Diva

HDR and Dolby Vision

EOTF

Electro-Optical Transfer Function

In short

Electro-Optical Transfer Function: the curve that maps a digital code value to the amount of light a display emits.

EOTF is the least visible field in HDR metadata and the one most likely to be wrong. On the Diva it is a dropdown in the metadata you build for yourself.

EOTF stands for Electro-Optical Transfer Function: the curve that turns a code value in the signal into a quantity of light on screen. Its counterpart at the camera is the OETF, the opto-electronic transfer function. Between them they decide how the brightness of a scene survives the trip.

SDR used a gamma curve of roughly 2.2 to 2.4, standardised as BT.1886, and it is relative: the top code means the brightest the display can manage, whatever that happens to be. HDR10 uses SMPTE ST 2084, published in 2014 and usually called PQ, which is absolute, so a code value names a number of nits up to 10000. HLG, from ITU-R BT.2100, is a hybrid that keeps a gamma-like lower half so the same signal stays watchable on a display that knows nothing about HDR.

The curve is not carried in the picture. It is declared in the HDR infoframe the source sends alongside it, and the display switches mode accordingly. Declare the wrong one and nothing breaks, it simply looks wrong: PQ content interpreted as gamma is dark and heavy, and gamma content interpreted as PQ is pale and flat.

Setting the EOTF on the HDfury Diva

The HDR/DV section shows what is arriving and lets you build your own. CAPTURED HDR METADATA holds the infoframe from the source in hex and deciphered into readable form. Below it, the custom HDR metadata generator has an EOTF field with four choices: SDR Luminance Range, HDR Luminance Range, HLG ITU-R BT.2100-0 and SMPTE ST 2084.

Set it along with Primaries, White Point, Max Luminance, MaxCLL, Min Luminance and MaxFALL, then click Create IF and the result appears in the text box as hex. Nothing is injected until you tick one of the boxes above, all of which are unchecked by default and persist over hot plugs and power cycles.

Use custom HDR for TX0 and TX1
Sends your infoframe unconditionally, ignoring the original metadata if the input is already HDR. The command is set hdrcustom on.
When input is HDR10
The same, but only when the input is already HDR. The command is set hdrcustomhdr10only on.
When input is HLG
Applies only to HLG input, ignoring its original metadata. This is how you render HLG content on an HDR display. The command is set hdrcustomhlgonly on.
When input is HLG and display has no HLG support
Conditional on the sink as well, so with two televisions connected, one HLG capable and one not, turning off the HLG set changes the metadata automatically. The command is set hdrcustomhlgonlyauto on.

Send HDR only changes the values, it never stops injection, which avoids a television resync. Unchecking the box is the off switch, and Default Value restores the original hex.

Related terms

In the manual

The pages of the HDfury Diva manual where this comes up.

All glossary terms