)]}'
{
  "commit": "4c53bacce4a97d98a4e73262bb3517d38ddd3514",
  "tree": "15f52f2961d64c89a246862bf59f149eee68e7dd",
  "parents": [
    "9704cdec9fb777833599312fc84e3f1311d25eed"
  ],
  "author": {
    "name": "Yunqing Wang",
    "email": "yunqingwang@google.com",
    "time": "Fri Sep 28 10:13:07 2012 -0700"
  },
  "committer": {
    "name": "Yunqing Wang",
    "email": "yunqingwang@google.com",
    "time": "Mon Oct 08 12:06:44 2012 -0700"
  },
  "message": "post-proc: deblock filter optimization\n\n1. Algorithm modification:\nInstead of having same filter threshold for a whole frame, now we\nallow the thresholds to be adjusted for each macroblock. In current\nimplementation, to avoid excessive blur on background as reported\nin issue480(http://code.google.com/p/webm/issues/detail?id\u003d480), we\nreduce the thresholds for skipped macroblocks.\n\n2. SSE2 optimization:\nAs started in issue479(http://code.google.com/p/webm/issues/detail?id\u003d479),\nthe filter calculation was adjusted for better performance. The c\ncode was also modified accordingly. This made the deblock filter\n2x faster, and the decoder was 1.2x faster overall.\n\nNext, the demacroblock filter will be modified similarly.\n\nChange-Id: I05e54c3f580ccd427487d085096b3174f2ab7e86\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "90b28e475b62d01601be5766294b7db256175fdb",
      "old_mode": 33188,
      "old_path": "test/pp_filter_test.cc",
      "new_id": "af2f3bda9d1d4095a43b375055e6e43b7a7ac7d1",
      "new_mode": 33188,
      "new_path": "test/pp_filter_test.cc"
    },
    {
      "type": "modify",
      "old_id": "44489878470bf55a7df3850ae20788c56860bf03",
      "old_mode": 33188,
      "old_path": "vp8/common/postproc.c",
      "new_id": "752292eff8e544cb907b6811a9506ac1cd45ce1a",
      "new_mode": 33188,
      "new_path": "vp8/common/postproc.c"
    },
    {
      "type": "modify",
      "old_id": "6ac788cbd0410f2d219c6b7251539b9db447f81f",
      "old_mode": 33188,
      "old_path": "vp8/common/postproc.h",
      "new_id": "a156398d2b962abc66e987b8e0b6813b724eb16e",
      "new_mode": 33188,
      "new_path": "vp8/common/postproc.h"
    },
    {
      "type": "modify",
      "old_id": "7046a63e8136ea4758d292aacadfb19f628fb354",
      "old_mode": 33188,
      "old_path": "vp8/common/ppc/systemdependent.c",
      "new_id": "87f4cac72df63aa94996798f324137bb58e8be64",
      "new_mode": 33188,
      "new_path": "vp8/common/ppc/systemdependent.c"
    },
    {
      "type": "modify",
      "old_id": "f0bdf29bea434c09c0ad409e2b93702efc713e58",
      "old_mode": 33188,
      "old_path": "vp8/common/rtcd_defs.sh",
      "new_id": "0f950f8abf3cfa18b01c190b3fe408dd13da3a7f",
      "new_mode": 33188,
      "new_path": "vp8/common/rtcd_defs.sh"
    },
    {
      "type": "modify",
      "old_id": "534f2967ab0ecbc2730bb1e41fd742ee1ac4a673",
      "old_mode": 33188,
      "old_path": "vp8/common/x86/postproc_mmx.asm",
      "new_id": "966c586e4da17e459764081b41e6e495bb125862",
      "new_mode": 33188,
      "new_path": "vp8/common/x86/postproc_mmx.asm"
    },
    {
      "type": "modify",
      "old_id": "bf36b0d7f5c4fb3cff211cfa98c5adf9ee49750e",
      "old_mode": 33188,
      "old_path": "vp8/common/x86/postproc_sse2.asm",
      "new_id": "25c32e148b7c13b81c06e26e05e8ec2187313825",
      "new_mode": 33188,
      "new_path": "vp8/common/x86/postproc_sse2.asm"
    },
    {
      "type": "modify",
      "old_id": "b4e02e22c0c03b85e1fe537d4421866f90d824d6",
      "old_mode": 33188,
      "old_path": "vp8/encoder/onyx_if.c",
      "new_id": "c70e42c6ffceed434fd14f5ed65e139f8549a9ba",
      "new_mode": 33188,
      "new_path": "vp8/encoder/onyx_if.c"
    }
  ]
}
