)]}'
{
  "log": [
    {
      "commit": "108dddf924d714c811dd565b8f4c7a0178cca2f2",
      "tree": "84d71d367dfb079a12738ca5f6c3edc4bd13aab1",
      "parents": [
        "b1d3d37c7990d22d0659e4c8c9aac56d4c09b6ea"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Mar 28 16:10:12 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Mar 28 16:28:57 2011 -0700"
      },
      "message": "frameworks/base: some camera-interface cleanup\n\nMethods getNumberOfVideoBuffers() and getVideoBuffer() as well as struct\nimage_rect_struct are no longer used (instead, the necessary information is\npassed through ANativeWindow.)\n\nChange-Id: If4b11446fc9ccbde1f6b45bc70c0d0b8e54376eb\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "e468ac57f6e8afc6078c76d4eb1ac327112a3de0",
      "tree": "b6f657aa11261327f5f4743dd54f796e73ec328b",
      "parents": [
        "8e0e1979f0f41487b0f18aa5b9c8c52a39ca27f4"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 17 16:38:06 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 22 20:48:15 2011 -0800"
      },
      "message": "Application-managed callback buffer support for raw image\n\nbug - 3292153\n\nChange-Id: I9789f7c5cde3a3889d7375e881181e9152d95fc2\n"
    },
    {
      "commit": "bfa33aae4f54c0020a0568b16a3acb7b30b6ca3d",
      "tree": "3dae4190516dcddec996a2b7c51b5f192c3ed4ca",
      "parents": [
        "5de2001a5c3f854b63dbcea284e02f930881ca75"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Dec 20 11:51:31 2010 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jan 06 13:31:53 2011 -0800"
      },
      "message": "Add camera service support for SurfaceTexture.\n\nThis change enables the use of a SurfaceTexture in place of a Surface as\nthe destination of camera preview frames.\n\nChange-Id: Ic70d404c8fe261e9d5da6f1de93d6babb5b191cb\n"
    },
    {
      "commit": "e2ad6734eccc4b9ea7857c747ff9469a9c11ba09",
      "tree": "adefb903549a218f19eb6f8a624bf532e6fa7580",
      "parents": [
        "f705b5aa8c3b319f7b49f9ea46207187278076f9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 18 20:42:51 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Oct 19 23:07:08 2010 -0700"
      },
      "message": "Camera framework change required for 0-memcpy recording\n\nbug - 3042125\n\nChange-Id: I46eb7a10b5394086b353fd73e4503beceeed76f1\n"
    },
    {
      "commit": "4b79168835965cf0fc41ebe2a367e22b4cb20d08",
      "tree": "d70a673d243fdc72171ecbcf51094554f947987a",
      "parents": [
        "82252a9a732c7325166c36589c1dfa9f2cb8ac04"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Aug 10 16:37:53 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Aug 23 14:31:30 2010 -0700"
      },
      "message": "Change the framework to use the new camera preview path.\n\nThis change makes the camera HAL interface take an ANativeWindow interface from\nwhich all the camera preview buffers will be allocated.  The framework code\nrunning in application processes now passes a Surface object rather than an\nISurface to the camera server via Binder when setting the preview surface.  The\ncamera server then forwards that Surface object (which implements the\nANativeWindow interface) to the camera HAL, which uses it to communicate with\nSurfaceFlinger to allocate the camera preview buffers.\n\nChange-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f\n"
    },
    {
      "commit": "8cc76ae259ad81d5a40277bbf5532696ebae8da8",
      "tree": "8922e24a90a8b537ce679662287f01aa583f80bd",
      "parents": [
        "2415ecb5bb4e1459024f6d6c8ae2d6e3dc4fbdc7"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Mar 29 16:21:12 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Mar 29 16:21:12 2010 +0800"
      },
      "message": "Add some comments for zoom methods.\n\nAlso change RuntimeException to IllegalArgumentException.\nbug:2458926\n\nChange-Id: I87af31f5f3f10244131a1117bd1725c2d292b587\n"
    },
    {
      "commit": "3cf613507f1e2f7bd932d921a6e222e426fd3be4",
      "tree": "20c9dd57e2227046ab1d6fc1185f4136c6dac12e",
      "parents": [
        "988e3f0b2c74095deae580157c57935a98573052"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 09 17:46:37 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Feb 11 13:16:22 2010 -0800"
      },
      "message": "split libsurfaceflinger_client and libcamera_client out of libui\n"
    }
  ]
}
