)]}'
{
  "log": [
    {
      "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": "e6615671a51c85f409c071f15babb76198f1ce92",
      "tree": "2e4452bca742d7d9bf6a09b75005293cf39ea258",
      "parents": [
        "c213b812514d16dd401cd308b9203b70bfbb3d5f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 18:32:16 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jan 04 18:46:34 2011 -0800"
      },
      "message": "Fixed a typo in the enum for unknown camera error message\n\nChange-Id: Id9f8432e2ba8e1474ee020438d6456f1f450398a\n"
    },
    {
      "commit": "d8f4d4a919fb4fa6bbd405d03dc91f079c3c2e37",
      "tree": "f78c215b7bc4dcccb17827ceec3d77c0096d7b9b",
      "parents": [
        "8a674dcc94936e2306121016ab258b4c00cc9d98",
        "42005680c0817a786f07712ffa359f0883944120"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Nov 19 19:20:59 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 19 19:20:59 2010 -0800"
      },
      "message": "am fb6f4505: am 589e8381: Merge \"Improve camera documentation.\" into gingerbread\n\n* commit \u0027fb6f4505ba5c227cebb73f1269b0af5d92e6e5e6\u0027:\n  Improve camera documentation.\n"
    },
    {
      "commit": "c2c8868e59bde7f48998e1d89a0d77217bc64767",
      "tree": "bffc3c9c96072ce21e9c55372b4b39fa8ed991bc",
      "parents": [
        "ce0febae177d1816ee7a6750ed9fba52472b9a71"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Nov 19 15:56:16 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Nov 19 16:20:04 2010 +0800"
      },
      "message": "Improve camera documentation.\n\nbug:3212606\nChange-Id: Iee7106e4665c08a4c75471114010b75d63ac74ce\n"
    },
    {
      "commit": "e09591eff55fdff1868b32c3e046c62f800330fc",
      "tree": "a426ffeb610452b7020a7805f7a8a729b36f5b17",
      "parents": [
        "9065ce6207730f55566eb3b78f9b487b1a4502b6"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Oct 14 20:17:44 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Oct 25 15:02:44 2010 +0800"
      },
      "message": "Mirror the camera preview if the camera is front-facing.\n\nbug:3095272\nChange-Id: Ib1c1d1edc06a33e9d4d2dcb42bc1dd2c25b1310c\n"
    },
    {
      "commit": "95b18cb9224f79a781c827e0da45c58a644acece",
      "tree": "9c2e62994a4e7e0b151d9ec25bf1f3a36cd857a1",
      "parents": [
        "4769cc92740e3ab58e9263d42553c12bbf79e3be"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Oct 19 17:19:09 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Oct 20 18:29:18 2010 +0800"
      },
      "message": "Mirror the preview for front-facing cameras. do not merge\n\nNow overlay does ROT_90 before FLIP_V or FLIP_H. It should be FLIP_V\nor FLIP_H first. The formula should be changed after overlay is fixed.\n\nbug:3059865\nChange-Id: Ie4366bf7f1fcac7383e8dfc74b1b865997bbbcc6\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": "3b7b358d1a45844ca427626554ff81f472fd1583",
      "tree": "628389e34737e14cefb22954d66f4e9208bc097f",
      "parents": [
        "b5ca4618a722a21f084fe8bfc1c2992749ccd3f0"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Sep 14 16:49:08 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Sep 14 16:49:08 2010 -0700"
      },
      "message": "Added command type to play recording sound.\n\nAdded CAMERA_CMD_PLAY_RECORDING_SOUND command type to play recording\nsound through sendCommand. This is currently needed by time lapse\nrecording using still mode capture, which disables the shutter sound\nbut needs to play the recording sound.\n\nChange-Id: I376aa40f45b6064fd862abc065456b06fc338020\n"
    },
    {
      "commit": "b5ca4618a722a21f084fe8bfc1c2992749ccd3f0",
      "tree": "51ee3a6bdcb6301db5b34168a105409f2d4cf4a6",
      "parents": [
        "d20b4cfde2848052cf93ed13df14d75347ec64fd"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Sat Sep 11 19:31:10 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Sep 14 13:57:59 2010 -0700"
      },
      "message": "Adding enable/disable option for sendCommand()\n\n- Added enum CAMERA_CMD_ENABLE_SHUTTER_SOUND which corresponds to\n  command type for enabling/disabling shutter sound.\n- The implementation checks if it is legal to disable shutter sound.\n  If it is, then any process can disable the sound. If not, then only\n  the mediaserver process is allowed to do this. Currently time lapse\n  capture needs this functionality to disable shutter sound when still\n  mode is used to capture time lapse video.\n\nChange-Id: Id147a3bcc6a345c2c6a6d52bf98fd8292386bb19\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": "9da2070b6d6d20550de7da61478c325f0928d020",
      "tree": "f1548891fab33ca03923f70cf25a2ffeab50be82",
      "parents": [
        "3be9523784cc4038f601e510faee595117cdacb3",
        "efe6039f71e9bac2138003b3287e94a7ab7e5c55"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "message": "resolved conflicts for merge of 27eecb70 to gingerbread\n\nChange-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1\n"
    },
    {
      "commit": "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06",
      "tree": "7c3ae3eecc16c50c794aff141a89b14942117364",
      "parents": [
        "0895d83cb62d269468e64a00e9e89fa7697f2f84",
        "01cff464978aa0f749f42650180b45ea56cb17de"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "message": "am 4506c62a: fix inaccurate copyrights\n\nMerge commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027 into gingerbread-plus-aosp\n\n* commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "68335fdd6e9c1d622384612605d6952503cb7fd0",
      "tree": "94e9982f93be7339bde4d8b9336f9968f5509efd",
      "parents": [
        "e32283b15bbd60179424bdc740a4e4932da4c61e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:41:35 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "01cff464978aa0f749f42650180b45ea56cb17de",
      "tree": "a31c8e61281d0bbcbec93d0ab05368f73ab85994",
      "parents": [
        "ccaa41429d2afc47f0fb828a0146a1b1936188fe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "ddbdb35d176266b5ab64c30178f5cb76c5b1b4b4",
      "tree": "9a3115e77421f95a8505067cfa60b5a73518ad68",
      "parents": [
        "0a5baa9b411fe086013d2a5e9126ed63fbad046c"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu Jun 10 13:32:16 2010 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Fri Jun 11 16:47:33 2010 +0800"
      },
      "message": "Change camera interface to support multiple cameras.\n\nChange-Id: Ie88fe706d2278acf762eca87780de349434778a4\n"
    },
    {
      "commit": "35a055b8bfc6f3cbea409b2897caf936654519cb",
      "tree": "f2167d55486fd370d24e68aabe1ae37879cde8ec",
      "parents": [
        "d8a30349da270715156d3f658b165481ce10cf71"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu May 06 16:36:58 2010 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Mon May 10 11:21:14 2010 +0800"
      },
      "message": "Support multiple cameras in framework.\n\nChange-Id: I081f0fbdca4b633715ea7c3b3d42f8662d27598a\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"
    }
  ]
}
