)]}'
{
  "commit": "7a428ba2435e5a1b22269d69b842d3374cfb3006",
  "tree": "74a791afe08623bb7ac0102c1a9f896989b19b71",
  "parents": [
    "48b1cb35bb804094fb93c333088f0f2249122457"
  ],
  "author": {
    "name": "Yushin Cho",
    "email": "ycho@mozilla.com",
    "time": "Thu Jan 12 16:28:49 2017 -0800"
  },
  "committer": {
    "name": "Yushin Cho",
    "email": "ycho@mozilla.com",
    "time": "Mon Jan 23 20:24:57 2017 +0000"
  },
  "message": "Add a new experiment, DAALA_DIST\n\nThis commit adds a new experiment, Daala\u0027s distortion function,\nwhich is designed to better approximate perceptual distortion\nin 8x8 pixel blocks.\n\nThis experiment is expected to work best with PVQ.\n\nIt measures the variance of overlapped 4x4 regions in the 8x8 area,\nthen uses these variances to scale the MSE of weighted frequency domain\ndistortion of 8x8 block.\n\nSince AV1 calculates distortion in blocks as small as 4x4, it is not possible to\ndirectly replace the existing distortion functions of AV1,\nsuch as dist_block() and block_rd_txf().\nHence, there has been substantial changes in order to apply\nDaala\u0027s 8x8 distortion function.\nThe daala distortion function is applied\nafter all 4x4 tx blocks in a 8x8 block are encoded (during RDO),\nas in below two cases:\n1) intra/inter sub8x8 predictions and\n2) 4x4 transform with prediction size \u003e\u003d 8.\n\nTo enable this experiment, add \u0027--enable-daala-dist\u0027 with configure.\n\nTODO: Significant tuning of parameters is required since the function has\noriginally came from Daala thus most parameters would not work\ncorrectly outside Daala.\nThe fact that chroma distortion is added to the distortion of AV1\u0027s RDO is\nalso critical since Daala\u0027s distortion function is applied to luma only\nand chroma continues to use MSE.\n\nChange-Id: If35fdd3aec7efe401f351ba1c99891ad57a3d957\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5011e3116c63417b9c5063a81aec37c14ba2eb88",
      "old_mode": 33188,
      "old_path": "av1/common/blockd.c",
      "new_id": "b9e5073821567c27fc1d973a56eb2e8ae7860cad",
      "new_mode": 33188,
      "new_path": "av1/common/blockd.c"
    },
    {
      "type": "modify",
      "old_id": "7642b63e25c8dcc1696f2e3ff788333e81a13463",
      "old_mode": 33188,
      "old_path": "av1/common/blockd.h",
      "new_id": "c30786ea4d1c8ab11fc255686d83d863332c3673",
      "new_mode": 33188,
      "new_path": "av1/common/blockd.h"
    },
    {
      "type": "modify",
      "old_id": "8f6512d09cf77c53824801c4dd697963385f91b0",
      "old_mode": 33188,
      "old_path": "av1/common/pvq.c",
      "new_id": "28de41ad83eca99852baff8a9d41b32031262f91",
      "new_mode": 33188,
      "new_path": "av1/common/pvq.c"
    },
    {
      "type": "modify",
      "old_id": "2836263e90701f1efaa53f3a720086a7fe116188",
      "old_mode": 33188,
      "old_path": "av1/common/pvq.h",
      "new_id": "8f48743028973fae44dc515d3afc9b35bd073505",
      "new_mode": 33188,
      "new_path": "av1/common/pvq.h"
    },
    {
      "type": "modify",
      "old_id": "69d0cc08952cdc1fcafc65e83010d5e9d8faf260",
      "old_mode": 33188,
      "old_path": "av1/common/quant_common.c",
      "new_id": "6e1b0e970090390e8ae179bac00c5a26c68f62b3",
      "new_mode": 33188,
      "new_path": "av1/common/quant_common.c"
    },
    {
      "type": "modify",
      "old_id": "43833c664cb9025e4210ba94ea0eb7fd388291ae",
      "old_mode": 33188,
      "old_path": "av1/common/quant_common.h",
      "new_id": "0b7f97db7b9ffc84b3b0c139b18e985dcd72ea6b",
      "new_mode": 33188,
      "new_path": "av1/common/quant_common.h"
    },
    {
      "type": "modify",
      "old_id": "69b084f267def1737be7a8793864d118ef687b8b",
      "old_mode": 33188,
      "old_path": "av1/decoder/decodeframe.c",
      "new_id": "faade893553134928381106112741e384287c938",
      "new_mode": 33188,
      "new_path": "av1/decoder/decodeframe.c"
    },
    {
      "type": "modify",
      "old_id": "5e29d9aede1023e0f639aef7e0101f83fc19e81f",
      "old_mode": 33188,
      "old_path": "av1/encoder/block.h",
      "new_id": "4678b0313eb5cc3486c4a8582f4e8359b55d7ecd",
      "new_mode": 33188,
      "new_path": "av1/encoder/block.h"
    },
    {
      "type": "modify",
      "old_id": "8fdb487901a3d44b91236171e69d7fda6491b61b",
      "old_mode": 33188,
      "old_path": "av1/encoder/encodemb.c",
      "new_id": "07ab2ee82ddde1ffeb4a4cf8da9f9faa093cf12e",
      "new_mode": 33188,
      "new_path": "av1/encoder/encodemb.c"
    },
    {
      "type": "modify",
      "old_id": "3d96700c2c1c48b67cc700fd6d733055a409ae63",
      "old_mode": 33188,
      "old_path": "av1/encoder/rdopt.c",
      "new_id": "da412fbb2793feb75b8a28cb29b681fba957d7c2",
      "new_mode": 33188,
      "new_path": "av1/encoder/rdopt.c"
    },
    {
      "type": "modify",
      "old_id": "41a984a553e85a3b6f389a8653f92ac917e6cafe",
      "old_mode": 33261,
      "old_path": "configure",
      "new_id": "4cd99f6152539e443b3c1c990adc11e569a6861c",
      "new_mode": 33261,
      "new_path": "configure"
    }
  ]
}
