- From: Simon Thompson - NM <Simon.Thompson2@bbc.co.uk>
- Date: Thu, 7 Sep 2023 16:17:40 +0000
- To: "public-colorweb@w3.org" <public-colorweb@w3.org>
- Message-ID: <AS8PR01MB8258698F2589B0CB7DE7201FFDEEA@AS8PR01MB8258.eurprd01.prod.exchangelabs>
Hi all, I just thought I’d make comment on the two agenda items that we didn’t get to last night, so that they can be discussed at next week’s face-to-face meetings. Incorrect sRGB to HDR conversions listed in Canvas document: The current document lists the transforms from the TTML specification. These have different design constraints to a canvas application in that they’re designed for closed caption/subtitle rendering in a consumer television graphics plane. This plane is usually lower bit-depth, lower resolution, and has limited processing (e.g. 1D LUTs and limited precision matrices) when compared to the video plane. The TTML algorithm is sufficient to map a limited palette of text colours whilst maintaining enough separation between them to identify speakers. It was not designed to be colour accurate. Please could we use the colour accurate code snippets from a previous version of the document for HLG: Process: 1. Linearize using the sRGB EOTF 2. Convert from srgb color space to rec2100-hlg color space 3. Scale pixel values - See Note 1 4. Apply HLG Inverse EOTF to convert to HLG from Pseudo-Display Light with Lw = 302 cd/m2 - See Note 1 * apply HLG Inverse OOTF * apply HLG OETF - See Note 2 Note 1: As rec2100-hlg is a relative format, the brightness of the virtual monitor used for mathematical transforms can be chosen to be any level. In this transform it is chosen to be 302 cd/m2 so that the brightness of diffuse white matches the diffuse white of sRGB (80 cd/m2). Using the extended range gamma formula in footnote 2 of BT.2100, this also sets the HLG Inverse OOTF to be unity. The value 0.265 is calculated by taking the inverse OETF of 0.75, the rec2100-hlg diffuse white level. Note 2: See section 5.3 in ITU-R BT.2408-4 relating to negative transfer functions in format conversions. function convertSRGBtoREC2100HLG(r, g, b) { const systemGamma = 1.0; // Can be removed, included for completeness const linearLightScaler = 0.26496256042100724; const r1 = srgb_eotf(r); const g1 = srgb_eotf(g); const b1 = srgb_eotf(b); const [r2, g2, b2] = matrixXYZtoBT2020(matrixSRGBtoXYZ(r1,g1,b1)); const r3 = linearLightScaler * r2; const g3 = linearLightScaler * g2; const b3 = linearLightScaler * b2; const [r4, g4, b4] = hlg_inverse_ootf(r3, g3, b3, systemGamma); // Can be removed, included for completeness const [r5, g5, b5] = hlg_oetf(r4, g4, b4); return [r5, g5, b5] } Chris Needham and I will endeavour to add this to the example webpage before the next Zoom call. Question on the use of mDCv Maximum and Minimum Luminance for HLG HLG is a relative scene light signal, so the settings of the mastering monitor are not required by the target display. There are published formulas for how a display should adapt the OOTF (system gamma) for different display peak luminance and different ambient illumination, i.e. the distributed signal remains constant irrespective of display, the display adapts the incoming signal appropriately. These adaptations have been tested over a wide range of available screen luminances from lower than 400 cd/m2 to 4000 cd/m2 (we’ve no reason to believe that it won’t work above this luminance, just we haven’t seen any production screens above that level to test it on). In professional monitors the black level is set using a PLUGE signal (i.e. set to the lowest perceptible black level for the given ambient conditions) and the white level and OOTF set to suit usage. The incoming signal is then mapped according to these parameters. (For example, in a dark OB truck environment, many operators are turning down the brightness of an HDR monitor to 600 cd/m2 to a) better match luminance of shadow and mid-tones to the SDR monitors and b) reduce eyestrain from prolonged use. Because of the display OOTF adaptation, this signal is still valid when displayed at any other luminance) In consumer television displays and monitors, this OOTF adaptation is also applied to the input signal in the device based on the screen’s peak luminance and ambient viewing environment (sometimes by ambient light sensor, sometimes by having different viewing condition modes). Unlike in a professional monitor, the parameter values are not usually exposed to the user. Adaptation for screen peak luminance is given in Note 5f (and associated footnote) in https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.2100-2-201807-I!!PDF-E.pdf Description of PLUGE signal for setting screen black level and adaptation for ambient illumination is given in https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.814-4-201807-I!!PDF-E.pdf -- Simon Thompson Senior R&D Engineer BBC Research and Development
Received on Thursday, 7 September 2023 16:20:23 UTC