)]}'
{
  "log": [
    {
      "commit": "792b150a708a61faedaaa5983fbc5c5185984f50",
      "tree": "d45dba99bbb180dd1ceae9da7c336859249fe7cc",
      "parents": [
        "8a186104276cdf57d552c54dbad488e14f0d3d16"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Tue May 02 00:03:08 2023 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Tue May 02 00:08:26 2023 +0000"
      },
      "message": "Don\u0027t overdim SDR content in an HLG screenshot.\n\nAligning HLG and PQ to 1.0 \u003d\u003d 203 nits made SDR assets in screenshots\ntoo dim, since both the colorspace and the color transform applied\ndimming. Removing dimming application from the color transform is a\nlarger change, so just compensate when configuring the screenshot in\nSurfaceFlinger instead.\n\nBug: 280347733\nTest: HwAccelerationTest\nTest: Navigate in and out of recents\nChange-Id: Idfdb74c0c3b977717b870b2bb9a469be37d27dc9\n"
    },
    {
      "commit": "8a186104276cdf57d552c54dbad488e14f0d3d16",
      "tree": "d43bdd4c0dccd8eb83286c978ab896dffaca02f8",
      "parents": [
        "3e5965f3184a828a1b7ee2b5bd5d5c2177807a35"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Tue Apr 25 00:34:30 2023 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Mon May 01 21:27:32 2023 +0000"
      },
      "message": "Align HLG and PQ color management to 203 nits \u003d\u003d SDR max by default\n\nThe public HLG and PQ definitions map 203 nits to SDR white by scaling\nthe respective transfer functions.\n\nBug: 278121691\nBug: 278122024\nTest: HwAccelerationTest test gradients\nTest: HDR test videos match DPU and GPU composition\nTest: SilkFX test HLG and PQ images\nChange-Id: Id830e2ac72f5bcf8566556053fcf3af6b945581b\n"
    },
    {
      "commit": "3e5965f3184a828a1b7ee2b5bd5d5c2177807a35",
      "tree": "9e437e8f7ab0350753552acbf457c005a25e6e31",
      "parents": [
        "8aedbf30dd4123c3050a040ce1c1b6e9d07b96ec"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Apr 07 18:00:58 2023 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Tue Apr 25 22:28:10 2023 +0000"
      },
      "message": "Support screenshots of HDR content\n\nPreviously screenshots always rendered to either an SDR or a wide gamut\ncolorspace. For screenshotting HDR content, this is only appropriate\nwhen the resulting screenshot (a) never leaves the device and (b) the\nrelevant code has workarounds for the display to appropriately handle\nits luminance range.\n\nHDR screenshots will now have two paths:\n* A standard path for rendering to HLG. HLG was chosen because the OOTF\n  shape is less hand-wavey than PQ\u0027s, does not require metadata, and\n  bands less at 8-bits of color.\n* A special path for \"display-native\" screenshots. This is for\n  use-cases like screen rotation where there are stricter color accuracy\n  requirements for round-tripping.\n\nSkia already encodes the resulting screenshot by supplying an HLG CICP\nalongside a backwards-compatible transfer function, so it\u0027s only\nsufficient to change how SurfaceFlinger renders.\n\nBug: 242324609\nBug: 276812775\nTest: screencap binary\nTest: rotation animation\nTest: swiping in Recents\nChange-Id: Ic9edb92391d3beb38d076fba8f15e3fdcc2b8f50\n"
    },
    {
      "commit": "3c51bc5024b849c9ed5defbea058133399cdda3e",
      "tree": "a0f32a4912315cf647a33ec9b6624751c62f707f",
      "parents": [
        "89ea6a91e3ceb2abbc6cfce890dd622c7e219dbb"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Nov 04 01:28:55 2022 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Sat Nov 05 00:58:18 2022 +0000"
      },
      "message": "Improve tonemapping utilities\n\n* Add util for getting buffer dataspace from metadata, since some\n  ANativeWindow queries are unreliable when Surface endpoints are passed\n  between processes, e.g., camera\n* Let libshaders generate SkSL for SkColorFilters\n\nBug: 238395777\nTest: Switching HDR cameras don\u0027t color shift\nChange-Id: I7c3b917eeafcf8d028f8f52f38aa1389025bc607\n"
    },
    {
      "commit": "6ba7f2b4870df952ff8bb470fd52d91d9f206ae6",
      "tree": "546acf824881a4a51a01fd27836d7ece0b0efd5d",
      "parents": [
        "1821df6cd73fd31ef0b3d0c6e8fc4219bdce2002"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Jun 02 22:55:05 2022 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Mon Jun 06 16:40:33 2022 +0000"
      },
      "message": "Use the correct dataspace in shaders.cpp\n\nThis improves the quality of HDR-\u003eSDR tone-mapping in TextureView by\nremoving an incorrect gamut mapping which was causing undesired hue\nshift.\n\nThe technical detail is that in TextureView, skia will color manage the\ninput image to the destination colorspace prior to tone-mapping. The\ntone-mapping shader library compensates when authoring the shader to use\nthe correct EOTF when re-decoding the image, but did not compensate when\nbinding uniforms. This patch compensates accordingly so that the correct\ngamut-\u003egamut mapping is applied.\n\nThis patch adds a brief test suite for libshaders to verify that the\ncorrect color gamut matrices are being selected.\n\nBug: 234355355\nTest: Observe accurate HLG colors in Photos and Instagram where\nTextureView is used for media playback.\nTest: libshaders_test\n\nChange-Id: I801349cfe1780880a55528fd7e91ff1ac553281b\n"
    },
    {
      "commit": "575fb073170e38103ba3f18663ab25dadad45353",
      "tree": "2a54ead1601c2935b6e456d3dcab455e58978b51",
      "parents": [
        "0f24a7c37b3e65996c9bb88c3e22038ae2ca58ef"
      ],
      "author": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Mon May 09 12:34:52 2022 -0700"
      },
      "committer": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Mon May 09 12:34:52 2022 -0700"
      },
      "message": "Fix shader calculation equations that causes SDR grayscale mess-up.\n\nBug: 219698906\nTest: play YouTube videos with Focus Mode on\nChange-Id: Ic1d3ef72778da4e69d33c11dc11872356b856a41\n"
    },
    {
      "commit": "fcedb9ca3fa14607451ca24f32539a36f2261912",
      "tree": "8b09a3c0a491b2f53d8826a9380ef3383cd2a6c2",
      "parents": [
        "168f6ccfce328a1224297ba5b7af2779fcee0d9a"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Mon Apr 11 20:02:17 2022 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Apr 14 22:59:27 2022 +0000"
      },
      "message": "Support RenderIntents in libtonemap.\n\nAdd RenderIntent as a supported uniform which is needed as some devices\nmay perform contrast enhancements intended for SDR content which must be\ncompensated for pre-blend for HDR content.\n\nBug: 227779465\nTest: builds\nChange-Id: Id74277e727d73cb9e371c37a83bef805e66271f4\n"
    },
    {
      "commit": "7a577450e536aa1e99f229a0cb3d3531c82e8a8d",
      "tree": "324da642f325123cf62f9c688f481614942a9d1e",
      "parents": [
        "1a3c5456dd9e05642c3d0f388102c511e80b5108"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Mar 04 23:41:38 2022 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Mar 18 23:54:08 2022 +0000"
      },
      "message": "Push HLG OOTF down to libtonemap.\n\nUsage of current display brightness may be vendor-configured when the\ndisplay brightness is very low, so keep the OOTF in libtonemap as part\nof the reference implementation.\n\nConcretely, this means that:\n* The BT2100 recommended OOTF for HLG-\u003eoutput format is moved from\n  ScaleLuminance in libshaders to be the first part of the tonemapping\n  operator in libtonemap\n* The inverse OOTF for input format-\u003eHLG is moved from\n  NormalizeLuminance in libshaders to the end of the tonemapping operator\n  in libtonemp\n* Current display brightness is only taken into account in the default\n  tonemapping for Android T. The historic tonemapper does not take into\n  account current display brightness, as it treats the \"nominal peak\n  brightness\" of the display as 1000 nits instead of the current\n  brightness.\n\nAlso add a default lower-bound for using the current display brightness,\nbecause not having a bound looks really terrible on existing shipping\ndevices\n\nBug: 208933319\nTest: builds\nTest: HLG test video looks okay\nTest: HDR10 test video didn\u0027t break\nChange-Id: I4f489c68f635a8ecc4d497b98c32e91c297d0765\n"
    },
    {
      "commit": "1a3c5456dd9e05642c3d0f388102c511e80b5108",
      "tree": "d22652abd251e4be763ba8f21df8c486bd97c957",
      "parents": [
        "63d679d2eb41ca10dedfb14487beae1b4c38319a"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Mar 04 22:44:51 2022 +0000"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Mar 17 17:54:17 2022 +0000"
      },
      "message": "Add AHardwareBuffer as a tone-mapping input.\n\nThis is to allow for partners to take gralloc4 metadata into account for\ntheir tone-mapping operation.\n\nBug: 212641375\nTest: builds\nChange-Id: Id20291fc1a1a0350a7fff0a8e703f242c68d2b28\n"
    },
    {
      "commit": "5a49372252e8ef08387800effe6d39196f274027",
      "tree": "00733a2feb02dd8b067cca7730a3f8d5286a570a",
      "parents": [
        "d029092f6bdba62f9fc9d6e0c180b0bb0b0d1111"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Wed Jan 26 16:43:02 2022 -0800"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Tue Feb 01 00:25:41 2022 +0000"
      },
      "message": "Use BT2100 OOTF for HLG...\n\n...which it turns out we already do, except we apply a tone-map for\nHDR10 after scaling the luminance. Don\u0027t apply the HDR10 tone-map, and\ninstead linearly normalize to max display luminance.\n\nFurthermore, adjust the gamma used in the default HLG OOTF in\nlibshaders to take into account current display luminance according to\nthe BT2100 spec, which says that the OOTF gamma should be adjusted if\nthe effective luminance differs from 1000 nits\n\nBug: 208933319\nTest: librenderengine_test\nTest: libtonemap_test\nTest: HLG and PQ test videos on youtube\nChange-Id: I622096ad387420ce4769f6f080b8756cd57baa7d\n"
    },
    {
      "commit": "b21d94e6b46a269e9960118c7c8d61ce984aea3e",
      "tree": "3b34cb2634b169182c126dcc3601852d0c07f453",
      "parents": [
        "d4c6a656d265504207e79fde2fcd988548cf4c37"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Jan 13 17:44:10 2022 -0800"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Jan 14 14:00:54 2022 -0800"
      },
      "message": "Supply extra brightness parameters to RenderEngine\n\nA future CL will update the HLG-\u003eSDR tonemapping algorithm to consider\ncurrent display brightness, as recommended by BT2100.\n\nIn preparation for this:\n* Fix an issue where maxLuminance was using the current display\nbrightness if supplied from DisplayManager instead of the max luminance\n* Add currentDisplayBrightnessNits to the RenderEngine interface to\nsupport the current brightness\n* Plumb current display brightness all the way to libtonemap, where\nnothing uses it (yet)\n\nBug: 206035964\nTest: libcompositionengine_test\n\nChange-Id: I3e9f0fdb23fbb08c50e4733e5a16bcd20948d750\n"
    },
    {
      "commit": "2019fd2341d4ca14b898018260b5dde57ef14b57",
      "tree": "2fec09de6e6fac0eebb4b9b7fae34d6fa5c833ff",
      "parents": [
        "772b32776fb14cce1f03ce87676aacaf9f877565"
      ],
      "author": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Mon Nov 22 10:19:04 2021 -0800"
      },
      "committer": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Wed Dec 01 10:43:13 2021 -0800"
      },
      "message": "Enable more ColorSpaces in RenderEngine\n\nBug: 200307628\nTest: librenderengine_test pass\nChange-Id: I81d9e86e8a826a74d65ce378d01ab55496cdd944\n"
    },
    {
      "commit": "492c85c613ac94495c567465ad82b147b4526fb3",
      "tree": "937fdb1378be5973ede761449488e65957582a45",
      "parents": [
        "97634355322051ea353983f517ab399efcac6dff"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Fri Nov 19 15:58:10 2021 -0800"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Wed Nov 24 13:24:20 2021 -0800"
      },
      "message": "Introduce libshaders static library\n\nThis library is for exposing system-only shader implementations in SkSL.\nNotably: libshaders depends on the vendor available libtonemap, but\nlibtonemap is vendor available as it is a single source of truth for\ntonemap operations, whereas libshaders is not meant to be shared with\nthe vendor partition. Rather, the intent is to allow for sharing of SkSL\nbetween librenderengine and libhwui.\n\nBug: 200309590\nIgnore-AOSP-First: Introduces internal-only library\nTest: builds\nChange-Id: I611b79eb3addd15528f0cdb70e9f2f3d62473ec1\n"
    }
  ]
}
