)]}'
{
  "log": [
    {
      "commit": "f07b8a3f691be39083fb5163f9456bcfa566f93f",
      "tree": "885f9fcbb020c630c2b0ea20b13ca2ee850e5f3b",
      "parents": [
        "ff86f37b95327538b97b6b8ef5d3c6ed0cd7f902"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 19 15:24:46 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 19 15:24:46 2011 -0700"
      },
      "message": "implement: \"Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation\"\n\nBug: 4487161\nChange-Id: I883f34efe542c2a566d04966f873374f40c50092\n"
    },
    {
      "commit": "09d7ed7b395d66be97c6bcb052039f5c0dce646c",
      "tree": "f707f6e46bd9a0edeaac9b33bffe054a64e3062c",
      "parents": [
        "9d29d155c51a26d789cce2c4c24c659487c63554"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 13 15:24:42 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 19 13:05:11 2011 -0700"
      },
      "message": "Add set_scaling_mode() to ANativeWindow.\n\nThis allows to specify the scaling mode independently from\nthe buffer size.\n\nChange-Id: Iaa2baa660445531a97d3fac192e580f4929c5d3b\n"
    },
    {
      "commit": "5a4ab16eba0a3c9749e0179b005475dfaaafacb5",
      "tree": "e384557fa652857cc4f3dd675e54df52215f0f8b",
      "parents": [
        "682dbafc8f6c90281303e225c5d58d4e5f74fc09",
        "c85ca5d6b573e1a663a10950578220b4580c285c"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jul 18 15:18:43 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 15:18:43 2011 -0700"
      },
      "message": "Merge \"MediaPlayer: add ANativeWindow (dis)connect calls\""
    },
    {
      "commit": "10e6f34a67b77c17286e2438485bac5f63776116",
      "tree": "782eae6176d843c3483c44e65e644791abc36386",
      "parents": [
        "49840e255beed794c1240b230b4d824520933fa1",
        "949be32b671304d5281ac0abbf30dcf4ebaa9eaf"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jul 18 14:55:58 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 14:55:58 2011 -0700"
      },
      "message": "Merge \"move lock/unlock implementaion outside of Surface into SurfaceTextureClient\""
    },
    {
      "commit": "211f5af3bb47ba44c9714abbef0dec1b1a0ada51",
      "tree": "6ff69c8a47bf934c5df3b7aca109281167020fcf",
      "parents": [
        "55421aa80edbc5fdd9ce43029845ca0bd6ecc4c6",
        "56a37b052912d09c310f43ab1215ccc93f2dbda5"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Jul 18 11:07:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 11:07:47 2011 -0700"
      },
      "message": "Merge \"Add option to query hardware decoders only\""
    },
    {
      "commit": "56a37b052912d09c310f43ab1215ccc93f2dbda5",
      "tree": "ce525d6fa573cdda87019003e72d8326d05ef464",
      "parents": [
        "a6c53c79390e719ae425d38d6d80587e0d017ef3"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Sun Jul 17 16:35:11 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Jul 18 10:57:50 2011 -0700"
      },
      "message": "Add option to query hardware decoders only\n\nAdd an option to OMXCodec::QueryCodecs() to filter out\n software codecs.\n\nUpdate stagefright command line tool to list the roles of codecs.\n\nChange-Id: Icddb79118c30fe13cc3aea20f340174cc082c4e0\n"
    },
    {
      "commit": "949be32b671304d5281ac0abbf30dcf4ebaa9eaf",
      "tree": "f12cbc9997bd2270f1a7604ba4d78739688975c3",
      "parents": [
        "8d96f19692815aa14979c811a130b38eafc1bf65"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 13 17:39:11 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 15 17:47:08 2011 -0700"
      },
      "message": "move lock/unlock implementaion outside of Surface into SurfaceTextureClient\n\nThis makes ANativeWindow_lock/ANativeWindow_unlockAndPost work\nwith ANativeWindows implemented by Surface and SurfaceTextureClient.\n\nAlso, Surface now inherits directly from SurfaceTextureClient.\n\nBug: 5003724\nChange-Id: I9f285877c7bae9a262e9a7af91c2bae78804b2ef\n"
    },
    {
      "commit": "7e7de71f6eef5652ee1260e40215804a2ce543c3",
      "tree": "7d0fae6f7626c7158fca91d28f430ae3fe7e06b0",
      "parents": [
        "e3065f23a25b778c9fc718f01def2e1cb264aef8",
        "131515b681e26e3f4d8c21cc6b540142a3526712"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 15 16:24:26 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 15 16:24:26 2011 -0700"
      },
      "message": "Merge \"CPU statistics library\""
    },
    {
      "commit": "131515b681e26e3f4d8c21cc6b540142a3526712",
      "tree": "9ab172ba87203488b01d675276dead04c736c4af",
      "parents": [
        "a0c680393f2dd03a937c598b2cb9abf98a58152c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 08 14:36:46 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 15 14:09:49 2011 -0700"
      },
      "message": "CPU statistics library\n\nChange-Id: I113e2a926466cc410cfa5602ceb165b390a290fc\n"
    },
    {
      "commit": "06b54d7184e015256ad1817e381f61eb7514a3e2",
      "tree": "8e88a243d1d426e97890c6ed716fe53b379d2c09",
      "parents": [
        "b3a26f4d94f390d4baeac0fc11ccb9d451b67dbd",
        "9709687463dc5f1255f435e57b3d2beed8b70330"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jul 14 17:54:27 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 17:54:27 2011 -0700"
      },
      "message": "Merge changes Id9aa1003,I8c154189\n\n* changes:\n  SurfaceTexture: make (dis)connect into an IPC\n  SurfaceTexture: add support for new connect values\n"
    },
    {
      "commit": "c85ca5d6b573e1a663a10950578220b4580c285c",
      "tree": "033fe2fb88b2416b58c6232f7aad5f47648886f7",
      "parents": [
        "9709687463dc5f1255f435e57b3d2beed8b70330"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Jul 13 12:59:34 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jul 14 17:48:33 2011 -0700"
      },
      "message": "MediaPlayer: add ANativeWindow (dis)connect calls\n\nThis change makes MediaPlayer connect to the ANativeWindow to which it\nis going to render video frames and disconnect when it is done.\n\nChange-Id: I88ab5c2fe62493aabdc84a283ff31634f795d415\n"
    },
    {
      "commit": "9709687463dc5f1255f435e57b3d2beed8b70330",
      "tree": "3a3a66468d3cc2d7b86871eb2f17acea86af7907",
      "parents": [
        "a775f0d4193dffc336b295dc06056f81801eba9e"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Jul 13 19:12:20 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jul 14 17:48:32 2011 -0700"
      },
      "message": "SurfaceTexture: make (dis)connect into an IPC\n\nThis change makes the ANativeWindow connect and disconnect calls result\nin an IPC to the SurfaceTexture object.  This will allow us to prevent\nmultiple simultaneous connections from different processes.\n\nChange-Id: Id9aa1003b1335b96ca6bd4a1f5a67aa433d42efb\n"
    },
    {
      "commit": "ad07457ece56ba710d3a0334eb8e711646c7141a",
      "tree": "ee9c0ae0e03fe26b28aa7c68059179330f3bc0e7",
      "parents": [
        "840a02c3da40934bd3b4ab023d6d92f7161c6f4b",
        "fbb170ca9cbbd0c87c71ac39ecbb36086bca5ee2"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 14 09:59:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 09:59:24 2011 -0700"
      },
      "message": "Merge \"Support profile and level query for SW video decoders\""
    },
    {
      "commit": "1a541075622c5eacbef43c1134f7f9a2598b29b7",
      "tree": "0788dd2864a1fa8fbc29753a466f3835898e33c7",
      "parents": [
        "e1f2d4111db777b54b8fce756a9e4e3fa6531322",
        "c3119330a56c2dafa282b0b7450893c3f8cb5636"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 14 09:09:07 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 09:09:07 2011 -0700"
      },
      "message": "Merge \"Remove legacy http support from stagefright, chromium is the new hotness.\""
    },
    {
      "commit": "c1b9bbb21c8ad5109978a4e9e770cd18b0257434",
      "tree": "bfb7dd2272e5fe29d3c0fc4f22ca708e00bc10be",
      "parents": [
        "b6e5e7a740bf595a1a5d32b28549e5d579a04ee3"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 13 11:06:57 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 13 19:45:44 2011 -0400"
      },
      "message": "Remove some #ifdef HAVE_ANDROID_OS that were needed for the simulator build\n\nChange-Id: I13d9f251f86c05ae5405f37adbf6b8e9660935ba\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c3119330a56c2dafa282b0b7450893c3f8cb5636",
      "tree": "9dc8e18d19b9c1f09b9cf48657c5de41ed070749",
      "parents": [
        "67d464f47e842d5069e993408fd51ec122ad8019"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 13 15:45:01 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 13 15:45:01 2011 -0700"
      },
      "message": "Remove legacy http support from stagefright, chromium is the new hotness.\n\nChange-Id: I6725d42d38b91e6a1cbca43174870f445aeb3d99\n"
    },
    {
      "commit": "67d464f47e842d5069e993408fd51ec122ad8019",
      "tree": "f0881cc39a02c87b9d7efcf9068387dabdd0152e",
      "parents": [
        "9cba686366870b3a4c69bcec0eb4200352ce481d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 13 09:36:11 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jul 13 09:47:09 2011 -0700"
      },
      "message": "Enable signalling of a stream discontinuity involving a format-change\n\nthrough IStreamListener.\n\nChange-Id: Ic0409cdc4891ad26b61f2f98bdda3c7fb2e2de6a\nrelated-to-bug: 5022434\n"
    },
    {
      "commit": "dcf8934f4e90d89a468d3efbfa3852e4bfc37518",
      "tree": "6421cda0d111ac97007efe79636084fec75fc291",
      "parents": [
        "a698e6a6dbe044a12defc71fe3549711660d6bb7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jul 12 09:28:17 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jul 12 09:35:40 2011 -0700"
      },
      "message": "Make MetadataBufferType.h C-friendly\n\nChange-Id: I4388d8f6cf30f08858aec73aa971647feae4a5e3\n"
    },
    {
      "commit": "308f9f6b248402c67d73c3ad48f5b6b888bab7b7",
      "tree": "cf57cc66cbd45cb7506691ab1492882066731bee",
      "parents": [
        "f21f07627df3ad4381fdd3daf47289eeda9754d3",
        "97eae025ad857e33dce5b3d1d4fd5fe5813d2a80"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jul 11 15:47:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 15:47:20 2011 -0700"
      },
      "message": "Merge \"EGL: fix the ANativeWindow size/fmt override\""
    },
    {
      "commit": "501c4671e73a484c1f01d94f4f5fff124c05f197",
      "tree": "2c2f30011f0828af0425d5fc46aa007c9edb22f5",
      "parents": [
        "9b40a61ce98b6adce4df046fce8d67d64630b379",
        "10e89712863f5b91a2982dc1783fbdfe39c1485d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "message": "Merge \"Eliminate single-process mode. Bug: 5010576\""
    },
    {
      "commit": "9b40a61ce98b6adce4df046fce8d67d64630b379",
      "tree": "e751bc1a31561a31d45b848a55c5d1e821c05d82",
      "parents": [
        "6e65a4a4ffea59ca3761bd1655ad4672c6d91000",
        "0e27fce92348bc765a13a94d31405069ec596426"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 11 12:56:11 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 12:56:11 2011 -0700"
      },
      "message": "Merge \"Do not wait for unlaunched threads in stop()\""
    },
    {
      "commit": "0e27fce92348bc765a13a94d31405069ec596426",
      "tree": "97bb27463da01c648976201f142786bfc6ea4ed7",
      "parents": [
        "6dabb63307a0b63f9386d61e8444aed29db2081e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 08 16:51:16 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 11 12:51:21 2011 -0700"
      },
      "message": "Do not wait for unlaunched threads in stop()\n\nChange-Id: If681749753bb96ee98c1539658cfd919eeb0cb65\n"
    },
    {
      "commit": "97eae025ad857e33dce5b3d1d4fd5fe5813d2a80",
      "tree": "e383a743c76a50a1d201ba9d8b34606c661b6787",
      "parents": [
        "d44e1b6033eed29718f2e7e3540e4884929941a5"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jul 01 13:12:07 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jul 11 12:31:45 2011 -0700"
      },
      "message": "EGL: fix the ANativeWindow size/fmt override\n\nThis change fixes how the Android EGL layer overrides the size and\nformat of an ANativeWindow in eglCreateWindowSurface.  The new behavior\nis to leave the size untouched when overriding the format.  The previous\nbehavior was to reset the ANativeWindow to use the default size set by\nthe ANativeWindow implementation.\n\nIt also adds two new \u0027perform\u0027 methods to the ANativeWindow interface:\nset_buffers_dimensions and set_buffers_format, and redefines the\nbehavior of set_buffers_geometry to be the combination of these two new\nmethods.\n\nAdditionally, this change adds an error check for the return value of\nthe new native_window_set_buffers_format call, which required adding a\n(stub) handler for to FramebufferNativeWindow.\n\nChange-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1\n"
    },
    {
      "commit": "fbb170ca9cbbd0c87c71ac39ecbb36086bca5ee2",
      "tree": "9d7e4209206fea3dad6814ea9ef6e785a782bbe7",
      "parents": [
        "6dabb63307a0b63f9386d61e8444aed29db2081e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 11 12:29:10 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jul 11 12:29:10 2011 -0700"
      },
      "message": "Support profile and level query for SW video decoders\n\nChange-Id: I9c20db128be96cd36cf2083e08e8c21f5e6d1fdf\n"
    },
    {
      "commit": "8d19d3ae1e828e9189e2174e8ea88374af93f18e",
      "tree": "5060fcab1635721ce1a0d79b6cc038c4ccfb9e61",
      "parents": [
        "6dabb63307a0b63f9386d61e8444aed29db2081e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 08 17:59:29 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Jul 10 14:19:26 2011 -0700"
      },
      "message": "Release camera if CameraSource::start() has not been called\n\nChange-Id: I2f7e4b8501db3d80b9aa6f99d896d778bec29e8c\n"
    },
    {
      "commit": "10e89712863f5b91a2982dc1783fbdfe39c1485d",
      "tree": "7a268e40e03cfb2b65d3764b73d0ea42172965fa",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 18:52:57 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 19:54:07 2011 -0700"
      },
      "message": "Eliminate single-process mode.\nBug: 5010576\n\nChange-Id: Id450dc83efed4897d1e4ff451530fed14457aace\n"
    },
    {
      "commit": "5cc05263399fea948c3b80f83f07ff7476ef0505",
      "tree": "4e27914026920216147b5f79300f9a61c909cf2e",
      "parents": [
        "1a65b441b127e66c0fae2e04e6f88628a6363209"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 24 07:01:31 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 07 15:25:51 2011 -0700"
      },
      "message": "Moved and renamed effect API header files\n\nMoved specific effect header files to\nsystem/media/audio_effects/include/audio_effects\nand renamed to lower case (effect_xxx.h).\n\nChange-Id: Icfc2264bfd013cab0395d7e310ada636b9fe3621\n"
    },
    {
      "commit": "5161eb7b233cf3b806046fd935f248b3844d9bd7",
      "tree": "59ec630bb655b3c66819a8ce35dfa0b0101f7da7",
      "parents": [
        "55aaccd7e8e3f5a4b0f4333c6bd2404eeac7bbb1",
        "697283e9177ee5730bf5c652c3c05d3aa3838ace"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 06 11:37:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 11:37:53 2011 -0700"
      },
      "message": "Merge \"Add Thread::join\""
    },
    {
      "commit": "7eef784ea9764c9ca86efb730fcdceda51a0ea87",
      "tree": "4d4000dea1fe292a305b8892185ee3516c05f7f4",
      "parents": [
        "5f517c149fd64c0631913d55617cb2cf369384a0",
        "eec0f7ebac85d3d1b1151e62b2ed0f25c138d447"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 06 11:09:55 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 11:09:55 2011 -0700"
      },
      "message": "Merge \"return an error code with gralloc buffer allocation failures\""
    },
    {
      "commit": "2da9eb7175e59a4ad8b9cec185f9cfdf8e075859",
      "tree": "40d9bb596b5ae3de67c9e311892e706dd934f9dc",
      "parents": [
        "4481c35567d8564b52f0af5aa7c010ff8c3ff4a8",
        "82428a862f325238cfb5646bbd65de3f1a11e7cc"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Wed Jul 06 09:22:05 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 09:22:05 2011 -0700"
      },
      "message": "Merge \"- Retrieve is_drm in MediaMetadataRetriever. - Add one more column in MediaStore to indicate whether a   media file is drm-protected. - Remove old DRM code from Ringtone - Use the new DRM code in RingtoneManager\""
    },
    {
      "commit": "4431c05f136bc1073b368221e3515aaf7fe8424e",
      "tree": "d93ce746f59b3bdd16dd3acae3de81676e21f802",
      "parents": [
        "324a1f6a125637269d3955e5a0935d3eb873b015",
        "60d47796ccfb3db3ab73017897f648678daddc83"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 05 15:08:31 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 05 15:08:31 2011 -0700"
      },
      "message": "Merge \"Thread ID zero for androidSetThreadSchedulingGroup\""
    },
    {
      "commit": "6894a2947eb1f9d499fd7f1a1ec4e7098e07d25d",
      "tree": "5aaf199228185826ea5deb9200adfc1633519994",
      "parents": [
        "63acea6ad4a9316e1450dea47840f45df4aaed25"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 01 17:59:27 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 01 19:08:15 2011 -0700"
      },
      "message": "Workaround apps that make assumptions about pointer ids.\n\nModified the touch input mapper to assign pointer ids sequentially\nstarting from 0 instead of using the tracking id or slot index\nsupplied by the driver.  Applications should not depend on this\nordering but some do.  (sigh)\n\nBug: 4980884\nChange-Id: I0dfeb3ac27c57a7102a13c960c760e2a02eb7669\n"
    },
    {
      "commit": "82428a862f325238cfb5646bbd65de3f1a11e7cc",
      "tree": "409603a51c7b948ccbdda01548f6d35afe767b91",
      "parents": [
        "d0c18aabac682709e47b9b4a2fdd19cbb6820b7c"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Mon Jun 27 11:09:00 2011 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Fri Jul 01 16:52:28 2011 -0700"
      },
      "message": "- Retrieve is_drm in MediaMetadataRetriever.\n- Add one more column in MediaStore to indicate whether a\n  media file is drm-protected.\n- Remove old DRM code from Ringtone\n- Use the new DRM code in RingtoneManager\n\nChange-Id: I1311fd1c04841c2cd47df6c901589966cf55a692\n"
    },
    {
      "commit": "eec0f7ebac85d3d1b1151e62b2ed0f25c138d447",
      "tree": "51e127d4082b8f5aaee347fbc195b74789762450",
      "parents": [
        "23b444a2e4e808262c22fa5254db9861eb961879"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 01 14:53:49 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 01 14:53:49 2011 -0700"
      },
      "message": "return an error code with gralloc buffer allocation failures\n\nChange-Id: I471e5d37ea7a42fc8a0f93446ee3b4229da37807\n"
    },
    {
      "commit": "dfba1773c911c4d97838923334c5a879424387bf",
      "tree": "c64ef5f7b4b8b2b8261f3d06f1b6c0a9c31eb1a9",
      "parents": [
        "e02dd02bb8de073e03603df240d085267f014e5a",
        "603d739b5a444c52b63f1ec7cd2098034151ad25"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 01 14:28:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 14:28:10 2011 -0700"
      },
      "message": "Merge \"Charge network traffic to the uid of the process using the MediaPlayer.\""
    },
    {
      "commit": "5725d404602095be91d7a0a6bcdeeddd773b4761",
      "tree": "b7f58d258f8cb9c7e691fd5f055edab68773fc4a",
      "parents": [
        "f91040e2df1a52dc41fd62a82afc0b214abc1c8d",
        "cd8cd351d48e29760eb372ad0988a672413757d3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 01 14:03:45 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 14:03:45 2011 -0700"
      },
      "message": "Merge \"Add extended metadata buffer support by defining different types of metadata buffers\""
    },
    {
      "commit": "603d739b5a444c52b63f1ec7cd2098034151ad25",
      "tree": "16f400b743b887a612f124aec561c4cf3e92a781",
      "parents": [
        "5faaadffbfb272f6a5f686834dadaf5408cf0ed2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jun 30 15:47:02 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 01 13:18:43 2011 -0700"
      },
      "message": "Charge network traffic to the uid of the process using the MediaPlayer.\n\nChange-Id: I2bcb54b8232afd3fc7ee16289f37c7a7b3f23067\nrelated-to-bug: 4517282\n"
    },
    {
      "commit": "42fb5d64b9a4f4be5163c67374cca5eaa7226791",
      "tree": "8fadd35075fdc2d32b3b0d9e5dbfb3ee0e5b2182",
      "parents": [
        "5faaadffbfb272f6a5f686834dadaf5408cf0ed2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 29 15:53:28 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 01 09:28:51 2011 -0700"
      },
      "message": "Support a \"secure input buffer\" mode for use by Widevine DRM in OMXCodec.\n\nChange-Id: Ie03b285265099dbac9b12f3f41d9ad758d0b50ad\n"
    },
    {
      "commit": "ea458f190b5f496f80bf98a6ccaca2d46274cebc",
      "tree": "4aceeeabcd27777a0aac4bcd2719b3fc7de89306",
      "parents": [
        "ce43bc48588408e72aaa47ac1483837d5bfd1f59",
        "c9ec69eb6f07881e1d0582156e5697eff69f5546"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jun 30 18:38:18 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 18:38:18 2011 -0700"
      },
      "message": "Merge \"Minor fix in SurfaceTexture\""
    },
    {
      "commit": "c9ec69eb6f07881e1d0582156e5697eff69f5546",
      "tree": "e2f7e8aa3ace307cf0771c620b3abb6e137ef93f",
      "parents": [
        "c18e7e73158f794064fed5017c6c1c9a288673bd"
      ],
      "author": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Fri Jun 24 09:56:27 2011 -0700"
      },
      "committer": {
        "name": "Pannag Sanketi",
        "email": "psanketi@google.com",
        "time": "Thu Jun 30 15:41:19 2011 -0700"
      },
      "message": "Minor fix in SurfaceTexture\n\nChange-Id: Ic859715becf3e6d5107bd8beb8c577034d00ec52\n"
    },
    {
      "commit": "272aaa382f95c38221739f2287c29e414523a5cc",
      "tree": "53b22ed4bd672af3edc9fc9d3e1c5d63661a37b1",
      "parents": [
        "5231b0af515db51c722d4764ecf9412c145c93b6",
        "439863f3b3e725b5de1cba4940a21900369961c0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jun 29 16:15:56 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 29 16:15:56 2011 -0700"
      },
      "message": "Merge \"SF transactions are now O(1) wrt IPC instead of O(N).\""
    },
    {
      "commit": "439863f3b3e725b5de1cba4940a21900369961c0",
      "tree": "90ab56432c2436c3392b02ba08876c86796a36ef",
      "parents": [
        "f1bfa84ccf61cad2b6ea9f2e6a612a54a38b79bc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 28 19:09:31 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jun 29 15:05:41 2011 -0700"
      },
      "message": "SF transactions are now O(1) wrt IPC instead of O(N).\n\nChange-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43\n"
    },
    {
      "commit": "9e1fb41b4fbfbd190560cf48f24939703a13eca5",
      "tree": "8621dd8dd0a0e32e8883dbdaa02b1610018b05c4",
      "parents": [
        "5c226b835812630d9dc67ca02ca03dddaee5b6c7",
        "aa11965bd55b8344104ebb0c9ebf39ee0cced03f"
      ],
      "author": {
        "name": "Jason Simmons",
        "email": "jsimmons@google.com",
        "time": "Wed Jun 29 13:48:39 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 29 13:48:39 2011 -0700"
      },
      "message": "Merge \"Add a linear transform library to libutils\""
    },
    {
      "commit": "aa11965bd55b8344104ebb0c9ebf39ee0cced03f",
      "tree": "f5ccad9b1e3f186483349b1fd03b16e230ec71e9",
      "parents": [
        "fa487ca830cb150be5822d8d73c3d832672f7108"
      ],
      "author": {
        "name": "Jason Simmons",
        "email": "jsimmons@google.com",
        "time": "Tue Jun 28 17:43:30 2011 -0700"
      },
      "committer": {
        "name": "Jason Simmons",
        "email": "jsimmons@google.com",
        "time": "Tue Jun 28 17:43:30 2011 -0700"
      },
      "message": "Add a linear transform library to libutils\n\nChange-Id: Icdec5a6bebd9d8f24b3f335f8ec8b09a5810a774\n"
    },
    {
      "commit": "cd8cd351d48e29760eb372ad0988a672413757d3",
      "tree": "1d410233d76166b2a68eb33fcf0d899e4c3b0909",
      "parents": [
        "8229b467fc32e4c8dc1cfc65865b85c49ba3de6f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 27 16:30:55 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 28 17:35:02 2011 -0700"
      },
      "message": "Add extended metadata buffer support by defining different types of metadata buffers\n\nChange-Id: I6aa6b5da004c240c9986f6b9036950e234c8bd42\n"
    },
    {
      "commit": "cde732451070479dd999583f602693c36cdc65c7",
      "tree": "70bae023bad6b15d1edc061ac5a7af09acac2334",
      "parents": [
        "61b9fae046bd766dc951262f728a12784e5ec6ff",
        "068dbbf7ee7ed22a4595e7afaa2be6d57c2774f6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jun 28 14:49:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 14:49:35 2011 -0700"
      },
      "message": "Merge \"Support for writing output data to a provided callback function instead of a file\""
    },
    {
      "commit": "068dbbf7ee7ed22a4595e7afaa2be6d57c2774f6",
      "tree": "c67e8b5c84174756c205da41a03a100492e3c80e",
      "parents": [
        "d11eccf3a861fdaa754907a28cc0da554b9aa7b7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Jun 27 15:47:56 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jun 28 14:44:57 2011 -0700"
      },
      "message": "Support for writing output data to a provided callback function instead of a file\n\nin MPEG2TSWriter\n\nChange-Id: Ie54a5677c7b789a973aa50b7f197c6db238425bc\n"
    },
    {
      "commit": "3cf7cf575138bcbe5b49c32eb4ae401f92e4c8f7",
      "tree": "f4712df1099d1cfa1ccf9f98825a9e84b1e7d258",
      "parents": [
        "d11eccf3a861fdaa754907a28cc0da554b9aa7b7",
        "9fb5976367911d0ab42d296238f0f06d517e867d"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Jun 28 12:55:03 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 12:55:03 2011 -0700"
      },
      "message": "Merge changes I9fb59763,I8b2c6e00\n\n* changes:\n  SurfaceTexture: consume buffers after err checks\n  SurfaceTexture: change onFrameAvailable behavior\n"
    },
    {
      "commit": "e366f52b1520f13306d5fef1c3c8a2b2c653d935",
      "tree": "3b4fc6abef0e786bddbdd316b5cb19385e3ba321",
      "parents": [
        "84e297238f53f83c9e7de499e711b997d09514e0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jun 28 10:51:41 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jun 28 10:51:41 2011 -0700"
      },
      "message": "Multiple changes to ACodec/codec tools:\n\nMake sure sf2 does not coalesce input buffers, generalize ACodec\u0027s codec\ninstantiation based on OMXCodec\u0027s list of eligible component names.\n\nSome changes/additions to the \"sf2\" commandline tool\n\nMake surface options consistent with stagefright tool, i.e. use \u0027-S\u0027 instead of \u0027-s\u0027\nNew option \u0027-R\u0027 renders surface-allocated buffers.\n\nAlso fixes a longstanding bug introduced when generalizing from surfaces to native windows that never used surface-allocated buffers in sf2 even when the option was specified.\n\nChange-Id: I59fd533f0f6ef0337ebe2806ddc81a46878eb3ae\n"
    },
    {
      "commit": "84e297238f53f83c9e7de499e711b997d09514e0",
      "tree": "226910c0fe5d20d85a9322d0075e97b7a820fb57",
      "parents": [
        "7654b20e6c517ad7aab04b5361b4821e54424f7f"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Mon Jun 27 13:12:47 2011 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Jun 28 07:43:27 2011 -0700"
      },
      "message": "Remove native EventRecurrence parser\n\nSwitch over to the new parser.\n\nBug 4575374\n\nChange-Id: If78d8042fb266182900398f7fc464a048c779966\n"
    },
    {
      "commit": "0dd593f22352a0863223fa4ea7e37e926b99282e",
      "tree": "58d445ed41c6aea8184848490a9f47a2aa31a876",
      "parents": [
        "abb04eec06bce358826e4cb6b5f852424ece8005"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 27 16:05:52 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 27 17:42:15 2011 -0700"
      },
      "message": "PermissionCache caches permission checks\n\nThis is intended to absorb the cost of the IPC\nto the permission controller.\nCached permission checks cost about 3us, while\nfull blown ones are two orders of magnitude slower.\n\nCAVEAT: PermissionCache can only handle system\npermissions safely for now, because the cache is\nnot purged upon global permission changes.\n\nChange-Id: I8b8a5e71e191e3c01e8f792f253c379190eee62e\n"
    },
    {
      "commit": "bd5404d0312752e7c8946e8540129f0d2d97bcd7",
      "tree": "abdb05720d7149f0adee32a0f4ae9712cb57d78e",
      "parents": [
        "932e4e613987658383e23fa151c3f5b87d07f028"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Jun 26 18:27:47 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 27 15:45:39 2011 -0700"
      },
      "message": "SurfaceTexture: change onFrameAvailable behavior\n\nThis change alters the conditions under which the onFrameAvailable\ncallback gets called by the C++ SurfaceTexture class.  The new behavior\nis to call the callback whenever a frame gets queued that will be\nvisible to the buffer consumer.  This means that buffers queued in\nsynchronous mode always trigger the callback, as those buffers will\nremain pending until they are consumed.  Buffers queued in asynchronous\nmode will only trigger the callback if there was not previously an\nunconsumed buffer pending.\n\nThe new behavior means that a consumer should perform a draw operation\nexactly once for every onFrameAvailable call that it recieves.  This\nchange also modifies SurfaceFlinger and the SurfaceTexture JNI to\nsupport of the new behavior.\n\nChange-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40\n"
    },
    {
      "commit": "f24c4cd0f204068a17f61f1c195ccf140c6c1d67",
      "tree": "8bba9602587565eeb9c475f4ccad2e20727ffd41",
      "parents": [
        "ed9bbf27babc7e90a81b229cade498e931ff3dd2"
      ],
      "author": {
        "name": "Anu Sundararajan",
        "email": "sanuradha@ti.com",
        "time": "Wed Jun 22 15:58:59 2011 -0500"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Jun 27 13:48:51 2011 -0700"
      },
      "message": "MemoryHeapBase: Save and binderize the offset\n\nThe offset that is used in the creation of the MemoryHeapBase must be saved, so\nthat it can be used to recreate the Heap when an IMemory object is passed\nacross process boundary through the binder.\n\nChange-Id: Ie618fb5c0718e6711f55ed9235616fd801e648dc\nSigned-off-by: Anu Sundararajan \u003csanuradha@ti.com\u003e\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "42419ce28a09eb63e29a8fef87e6f5534f41902f",
      "tree": "f4c758095b56ee9257e90acc4050da046783663d",
      "parents": [
        "14f14863c508ff38fb2fe925c89e2bb2228fcffe"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jun 01 17:22:24 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Jun 27 15:44:57 2011 +0800"
      },
      "message": "Add framework support for camcorder zoom.\n\nThe purpose of ICameraRecordingProxy and ICameraRecordingProxyListener is to\nallow applications using the camera during recording.\n\nCamera service allows only one client at a time. Since camcorder application\nneeds to own the camera to do things like zoom, the media recorder cannot\naccess the camera directly during recording. So ICameraRecordingProxy is a proxy\nof ICamera, which allows the media recorder to start/stop the recording and\nrelease recording frames. ICameraRecordingProxyListener is an interface that\nallows the recorder to receive video frames during recording.\n\nICameraRecordingProxy\n  startRecording()\n  stopRecording()\n  releaseRecordingFrame()\n\nICameraRecordingProxyListener\n  dataCallbackTimestamp()\n\nThe camcorder app opens the camera and starts the preview. The app passes\nICamera and ICameraRecordingProxy to the media recorder by\nMediaRecorder::setCamera(). The recorder uses ICamera to setup the camera in\nMediaRecorder::start(). After setup, the recorder disconnects from camera\nservice. The recorder calls ICameraRecordingProxy::startRecording() and\npasses a ICameraRecordingProxyListener to the app. The app connects back to\ncamera service and starts the recording. The app owns the camera and can do\nthings like zoom. The media recorder receives the video frames from the\nlistener and releases them by ICameraRecordingProxy::releaseRecordingFrame.\nThe recorder calls ICameraRecordingProxy::stopRecording() to stop the\nrecording.\n\nThe call sequences are as follows:\n1. The app: Camera.unlock().\n2. The app: MediaRecorder.setCamera().\n3. Start recording\n   (1) The app: MediaRecorder.start().\n   (2) The recorder: ICamera.unlock() and ICamera.disconnect().\n   (3) The recorder: ICameraRecordingProxy.startRecording().\n   (4) The app: ICamera.reconnect().\n   (5) The app: ICamera.startRecording().\n4. During recording\n   (1) The recorder: receive frames from ICameraRecordingProxyListener.dataCallbackTimestamp()\n   (2) The recorder: release frames by ICameraRecordingProxy.releaseRecordingFrame().\n5. Stop recording\n   (1) The app: MediaRecorder.stop()\n   (2) The recorder: ICameraRecordingProxy.stopRecording().\n   (3) The app: ICamera.stopRecording().\n\nbug:2644213\n\nChange-Id: I15269397defc25cbbcae16abc071c8349c123122\n"
    },
    {
      "commit": "138f33bceff0d9ed45fcb806417cdb438544ab4e",
      "tree": "e9c41d0c595a91fa4eff29feea83cb8619c8d54a",
      "parents": [
        "f95d7f546705c9745407c16dbbc08920cde51d54",
        "0904d0af81e8a0a5404d6c03f4dcea02bea8170d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 23 21:31:33 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 23 21:31:33 2011 -0700"
      },
      "message": "Merge \"Add allowSynchronousMode to SurfaceTexture constructor.\""
    },
    {
      "commit": "0904d0af81e8a0a5404d6c03f4dcea02bea8170d",
      "tree": "30ed521b5552efb6baeac987de69ea73e83fcdba",
      "parents": [
        "62250fbcd15dc46fd37341f9843e87585e132f05"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Thu Jun 23 21:21:47 2011 -0700"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Thu Jun 23 21:21:47 2011 -0700"
      },
      "message": "Add allowSynchronousMode to SurfaceTexture constructor.\n\nChange-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304\n"
    },
    {
      "commit": "d35df4412bc2218bb0d22522bd366123b8e6400c",
      "tree": "7ec2de6c24a6d328ac0c031c2b82d3fdf96d6871",
      "parents": [
        "fe35597064cec2a290c0107727000788c336ae31"
      ],
      "author": {
        "name": "Anu Sundararajan",
        "email": "sanuradha@ti.com",
        "time": "Wed Jun 22 12:24:46 2011 -0500"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Thu Jun 23 18:35:24 2011 -0700"
      },
      "message": "Integrating TI OMAP4 Video Decoder\n\nAdded the video decoder component name to kDecoderInfo.\nSet the quirks for the video decoder.\nAdd a new color format to OMX_IVCommon.h to denote TI OMAP4 NV12 color format.\nAdded a color conversion routine [ from NV12 to RGB ] for thumbnail generation.\n\nChange-Id: I6b23c36441645ef65ec7406ba262d19f89cf64fd\nSigned-off-by: Devaraj Rangasamy \u003cdev@ti.com\u003e\nSigned-off-by: Sreenidhi Koti \u003csreenidhi@ti.com\u003e\nSigned-off-by: Anu Sundararajan \u003csanuradha@ti.com\u003e\n"
    },
    {
      "commit": "5510a153bf3e02b6b6230e006aaa11e53085d3e1",
      "tree": "36e146b00e0069ba571dfd686828013c5ff055ec",
      "parents": [
        "52da3a43284a07d79580cbac281ad24a9382a4d1",
        "1e1b13e62e38d6efc7cef4b496b3119bd45ee2c2"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Thu Jun 23 16:17:55 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 23 16:17:55 2011 -0700"
      },
      "message": "Merge \"- Public part of the Metadata API. - Modify the media framework test for Metadata.\""
    },
    {
      "commit": "1e1b13e62e38d6efc7cef4b496b3119bd45ee2c2",
      "tree": "7e7979f36b9f18b65548009b62a7e8f18f2aaaec",
      "parents": [
        "0ff6d7ee17de33d314ef726e7506b39c64a3ed35"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Thu Jun 23 10:39:51 2011 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Thu Jun 23 15:28:36 2011 -0700"
      },
      "message": "- Public part of the Metadata API.\n- Modify the media framework test for Metadata.\n\nChange-Id: Ib8fa4991f114e1bb88a17ca662844b9b8e1d0faf\n"
    },
    {
      "commit": "0694cfe49a889788e185a265deed0c231fe31f4b",
      "tree": "d391cd89d74c7fcaf9045cd974c6a028b8b05b9e",
      "parents": [
        "090117774a4eeca850cca9ceac41cd8187772c81",
        "4e8a5c922c287ec97fec847194e930f8598a1941"
      ],
      "author": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Thu Jun 23 14:45:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 23 14:45:30 2011 -0700"
      },
      "message": "Merge \"Add method to create a ParcelSurfaceTexture from android.view.Surface.\""
    },
    {
      "commit": "697283e9177ee5730bf5c652c3c05d3aa3838ace",
      "tree": "a17ef92257437f6e130a2c73a53e92fc4bdca5a2",
      "parents": [
        "0ff6d7ee17de33d314ef726e7506b39c64a3ed35"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 12:55:29 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 12:55:29 2011 -0700"
      },
      "message": "Add Thread::join\n\nThis new API will be used by applications that previously used the\nlower-level pthread APIs (including pthread_join).  Centralizing on the\nThread class instead of pthread will permit additional functionality to\nbe added later in only one location.\n\nChange-Id: I8460169ac9c61ac9f85752405ed54c94651058d7\n"
    },
    {
      "commit": "60d47796ccfb3db3ab73017897f648678daddc83",
      "tree": "87e3bfde59e5edb34e139e15414d7e05ebab41f0",
      "parents": [
        "df02afe8355e1e7a6f8f02549f41a166c3ee6932"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 22 17:42:23 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 22 17:45:30 2011 -0700"
      },
      "message": "Thread ID zero for androidSetThreadSchedulingGroup\n\nAlready implemented by androidSetThreadPriority but not documented\n\nChange-Id: I85302b17092952065f3f3a4214d8d8abdd465dbd\n"
    },
    {
      "commit": "4e8a5c922c287ec97fec847194e930f8598a1941",
      "tree": "4cb995f8d142f646a8c99d9818b6cdee456de398",
      "parents": [
        "0f5d8441ef3ee88855df71b15d81f4c14f12d63d"
      ],
      "author": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Wed Jun 22 15:52:53 2011 -0700"
      },
      "committer": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Wed Jun 22 16:18:09 2011 -0700"
      },
      "message": "Add method to create a ParcelSurfaceTexture from android.view.Surface.\n\nChange-Id: I05e343ab7e327478f60322af9373574b70c148f5\n"
    },
    {
      "commit": "eaa5d8f9c0117bdaa20fd0a57921156bb0c06345",
      "tree": "c13a068713110273e182b34406cb4ec144fc1756",
      "parents": [
        "8969d9924c662ab4cdacc342bbdc33756db730be"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue May 31 16:08:47 2011 -0700"
      },
      "committer": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Wed Jun 22 11:32:19 2011 -0700"
      },
      "message": "Timed text display format support:\n1. Extract 3GPP global format descriptions\n2. Extract 3GPP local format descriptions\n3. Define data structure (TimedText) for applications to\nretrieve the format metadata\n\nChange-Id: I6eac2a78df29ee15beee456656331fdd83b24e8e\n"
    },
    {
      "commit": "c972c795cfdb0d16d664510b5041e43cfdc2a5ac",
      "tree": "ec8f0e4686903bdb3351f7d2129984d20ff8032d",
      "parents": [
        "b2af97e9a11119a257289cb8c539b5de79093052",
        "aff74054189a4276a250eac91ac301ab2df37ae3"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 20 15:34:00 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 20 15:34:00 2011 -0700"
      },
      "message": "Merge \"SurfaceTexture: fix a NULL ptr dereference.\""
    },
    {
      "commit": "aff74054189a4276a250eac91ac301ab2df37ae3",
      "tree": "9ff93cb4a6667ffd4692e07cab3f5b4125729a2d",
      "parents": [
        "f71e5469441286c6f466043e64a7f6492557cbd9"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 20 12:04:09 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 20 14:16:49 2011 -0700"
      },
      "message": "SurfaceTexture: fix a NULL ptr dereference.\n\nThis change adds a NULL check when searching the slot list in\nSurfaceTextureClient for the slot corresponding to a buffer being\nqueued or canceled.\n\nBug: 4645023\nChange-Id: I806cbc1e34da118ea33a83c4f25ce8193ba1c3ad\n"
    },
    {
      "commit": "e04f826fef44b85108be85fb6d3a16c35a9e5c29",
      "tree": "13afd43678741a6439d23a966950cd7c6d40bdaa",
      "parents": [
        "a27ad3cca3f17e394ce96011422a0131c15939a9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jun 15 20:41:15 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jun 15 20:55:49 2011 -0700"
      },
      "message": "Use rand() for MinGW\n\nThe version of MinGW we use doesn\u0027t have nrand48() which is really lame,\nbut we need to use libutils in the Windows SDK.\n\nChange-Id: If854c03dbf02bc29e79f49e4539f08c2bf057517\n"
    },
    {
      "commit": "f0b517d9d287e86e6e57a372ddcb070cec1fe1c0",
      "tree": "c3d35cd950666f37a31dda6c49faaf4631b13281",
      "parents": [
        "a7932ae77eadccc6b7a6491cd3657e49b09431ab",
        "f1df0407c6c399cdc9e222efe2d50176d7853100"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 14 11:51:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 14 11:51:24 2011 -0700"
      },
      "message": "Merge \"may fix build on some version of gcc\""
    },
    {
      "commit": "f1df0407c6c399cdc9e222efe2d50176d7853100",
      "tree": "a134fb5b75f7d3fb0a742082d4d748cc30a8f879",
      "parents": [
        "2714abff5cc50b1487c0979c99cc685f5ea113b1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 14 11:50:22 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 14 11:50:22 2011 -0700"
      },
      "message": "may fix build on some version of gcc\n\nChange-Id: Ia88787c0432ec84d51fe505fd6a2b6f98ebe8f33\n"
    },
    {
      "commit": "114420f5315c72e9cbd41cd4ae7472ef24ef1b94",
      "tree": "5f7813399474e7bf5715a7f7e41cb608b889ee2a",
      "parents": [
        "fd1235fc34c72cafd1b5aa0ab634804b7e2b41c2",
        "cc5278a3e258b30903102b718fb1cd832e79bb2b"
      ],
      "author": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Tue Jun 14 11:18:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 14 11:18:30 2011 -0700"
      },
      "message": "Merge \"Support for setting a ParcelSurfaceTexture as the MediaPlayer sink.\""
    },
    {
      "commit": "922261deab46b93641eadd9bc337fa72f8a5d734",
      "tree": "9728dbd9e79c18efd5bc491039d7df714b0dc4d3",
      "parents": [
        "82f0a85c3ba81cb6932d956c1c8cc5a99e89052a",
        "290029d19a9d314e925b73e19453ab0497602f80"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Jun 13 19:43:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 13 19:43:59 2011 -0700"
      },
      "message": "Merge \"audio: update for audio/audio_policy header names/locations\""
    },
    {
      "commit": "decbe327d1515dd6c9fd1b6773f57b0a879f9149",
      "tree": "c569409f1cc461e367b7fe21493a7f33b45a07ee",
      "parents": [
        "2714abff5cc50b1487c0979c99cc685f5ea113b1",
        "4108b1edc61ef91c63bc94a699f9a95e65c3e684"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 13 18:47:03 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 13 18:47:03 2011 -0700"
      },
      "message": "Merge \"Add B frame support for MPEG4Writer\""
    },
    {
      "commit": "eb99f0d9f05dd37f988a815e6bc01bbd7152c31a",
      "tree": "eab0217d74f5887e680f0dbc57aca49acba2913a",
      "parents": [
        "a934219ca8d23a63e5a9f443fafd6d4ac9847c71"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Jun 12 18:05:53 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 13 18:39:45 2011 -0700"
      },
      "message": "fix RefBase so it retains binary-compatibility with gingerbread\n\nBug: 4595257\nChange-Id: I0d5e10f497e3f39868bff58f6ded510c38b44b12\n"
    },
    {
      "commit": "290029d19a9d314e925b73e19453ab0497602f80",
      "tree": "832511818ed878842cefe5459b12aef6423b4cb1",
      "parents": [
        "10e78c9df09378c7d1ef1be9a8c42659ccce1eb7"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Jun 13 18:16:26 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Jun 13 18:16:26 2011 -0700"
      },
      "message": "audio: update for audio/audio_policy header names/locations\n\nChange-Id: I36c49352eee57559403cd1597f56a8485a360289\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "4108b1edc61ef91c63bc94a699f9a95e65c3e684",
      "tree": "8095c0b5606ecfa61301539c7f66255ada3a67bb",
      "parents": [
        "622d5441975fa16636d3304d42d27659af14cb49"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 07 19:45:54 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 13 17:06:29 2011 -0700"
      },
      "message": "Add B frame support for MPEG4Writer\n\no requires the support of negative ctts duration values (ctts version 1)\n\nChange-Id: Ib14130c9359c3bff3c76f20a7380d468a065dcaf\n"
    },
    {
      "commit": "7bb843ca0777111dae7daf8f1b0705817cf523c4",
      "tree": "10545edc3ce21f38282d5e67e5bc08ff729884b3",
      "parents": [
        "dfc7958a2eafba52db90743a4707eed1d780b63b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Apr 20 14:20:59 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 13 15:51:35 2011 -0700"
      },
      "message": "unify SurfaceTexture and Surface\n\nAdd the concept of synchronous dequeueBuffer in SurfaceTexture\nImplement {Surface|SurfaceTextureClient}::setSwapInterval()\nAdd SurfaceTexture logging\nfix onFrameAvailable\n"
    },
    {
      "commit": "cc5278a3e258b30903102b718fb1cd832e79bb2b",
      "tree": "9d5116e42006858d5ed5bb7fddafe22a2f7cb045",
      "parents": [
        "8aec83eb15a94b8027bbe7b6358cdf2468fd2b5c"
      ],
      "author": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Fri Jun 10 13:05:32 2011 -0700"
      },
      "committer": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Mon Jun 13 14:27:39 2011 -0700"
      },
      "message": "Support for setting a ParcelSurfaceTexture as the MediaPlayer sink.\n\nThis adds support for setting a SurfaceTexture as the MediaPlayer video\nsink by using a ParcelSurfaceTexture object. The goal is to enable a\nSurfaceTexture to pass through Binder (via ParcelSurfaceTexture) and then\nbe set on the MediaPlayer.\n\nChange-Id: Ife5689ce673eb4bee1c377019db761685217b71d\n"
    },
    {
      "commit": "dfc7958a2eafba52db90743a4707eed1d780b63b",
      "tree": "842497b93890e32563cf187ec4060bf7ff1121d3",
      "parents": [
        "fde45f58644c351ad9f662bc272fc5ac57d9c6a9",
        "9539d9f65a28b676e0a03322ad848b24786a515d"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 13 12:32:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 13 12:32:46 2011 -0700"
      },
      "message": "Merge \"libutils: add a binary blob cache implementation.\""
    },
    {
      "commit": "bd3e537980027f4502a13c204b3c7b9d10adad31",
      "tree": "c0579407ae43b5fac78e640d339c4adfe5dd7b79",
      "parents": [
        "28b6711c4c7449e597f57e016e5bc4741e115f9a",
        "9deb930ebf7db317e7abec59b37a88c47999f9cf"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 13 11:14:57 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 13 11:14:57 2011 -0700"
      },
      "message": "Merge changes I56779420,I044e44e1,Ic5adfa29,Ied541ab8\n\n* changes:\n  SurfaceTexture: add some GL-\u003eGL tests.\n  SurfaceTexture: fix up a comment.\n  SurfaceTexture: add getTransformMatrix tests.\n  SurfaceTexture: fix a getTransformMatrix crash.\n"
    },
    {
      "commit": "4e03d327d6310cd2c5ca3ecd55f91363b555de71",
      "tree": "c11d3fb0a2333a27b22962c653ad5805e29f0961",
      "parents": [
        "15e0d9f5e0700fa7dc0ecd0f07d5fea6f9597ca0"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Jun 12 14:11:39 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 13 10:50:13 2011 -0700"
      },
      "message": "SurfaceTexture: fix up a comment.\n\nChange-Id: I044e44e17319e08af657a7ec9fa39100876fe862\n"
    },
    {
      "commit": "eadfb673e7b346af02a925ad04494100db1ebbf7",
      "tree": "6ff88f77a6762f00a868807706f1e995d16373ae",
      "parents": [
        "fe93010446e68c747f4af727cbc48eaf63131689"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Jun 12 17:03:06 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Jun 13 10:50:12 2011 -0700"
      },
      "message": "SurfaceTexture: fix a getTransformMatrix crash.\n\nThis change moves the computation of the transform matrix out of\ngetTransformMatrix and instead performs the computation when\nupdateTexImage gets called.  This is needed in order for\ngetTransformMatrix to succeed even if the buffers have been freed (e.g.\nby changing the buffer count) because the computation depends upon the\nproperties of the current GraphicBuffer.\n\nChange-Id: Ied541ab8747b7ad604f862717135f9a16a816be9\nBug: 4490420\n"
    },
    {
      "commit": "041120754aa59ddd28927fa6c5db0c90bb8f5e95",
      "tree": "6e2bc633ab17347da11c06ebaffaf1b33f81d6fe",
      "parents": [
        "622d5441975fa16636d3304d42d27659af14cb49",
        "9dbd7d818916dca77e53ababdaf05311d5c7bce2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jun 13 10:30:29 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 13 10:30:29 2011 -0700"
      },
      "message": "Merge \"Remove redundant memory barrier\""
    },
    {
      "commit": "9dbd7d818916dca77e53ababdaf05311d5c7bce2",
      "tree": "bfabae474c823f0772712a322265af2d980959ef",
      "parents": [
        "679dd99cdce72683816e6ac75e4f0e68ca6ad51c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 02 08:59:28 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 10 17:07:46 2011 -0700"
      },
      "message": "Remove redundant memory barrier\n\npthread_create already includes the necessary memory barriers:\n - parent at pthread_create : pthread_mutex_unlock(start_mutex)\n - child at __thread_entry : pthread_mutex_lock(start_mutex)\n\nAdd lock around uses of mThread.\n\nAdded comments:\n - uses of mThread require lock\n - androidCreateRawThreadEtc returned ID is not safe for direct use from non-parent threads.\n\nChange-Id: I18cb296b41ddaf64cf127b57aab31154319b5970\n"
    },
    {
      "commit": "6b592723c9a9fc816a8ab75c935e8cd20ff65a0e",
      "tree": "00b93945a1c8051172316575208f14c355e663c3",
      "parents": [
        "08b992c88e60a95b629a70cd197b3d3b9b27fb8d",
        "f51ded0f8f593d17af82946eb65c05fc04f688b4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 12:45:36 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 12:45:36 2011 -0700"
      },
      "message": "resolved conflicts for merge of f51ded0f to master\n\nChange-Id: Ida356524a68aeb2b9b0013dfbb6ab4bd11e616e2\n"
    },
    {
      "commit": "4532c5e49cc0d029c53a3aee3e0b1fdf8ffd2ec4",
      "tree": "306c63d43fe52f5ea151b57ea5edf06b2c94505f",
      "parents": [
        "be674b18644cda56ba56a78ac7147711861e8dc8",
        "050316184b01c0d1a01c46afae7429b89a27c31b"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jun 10 10:05:04 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 10 10:05:04 2011 -0700"
      },
      "message": "Merge \"Add ParcelSurfaceTexture Java class to enable ISurfaceTexture sharing via Binder.\""
    },
    {
      "commit": "f51ded0f8f593d17af82946eb65c05fc04f688b4",
      "tree": "32b39d7d93170aed01c11e7353afc53a2b306cb4",
      "parents": [
        "5a8455c3c625201f3ae6b9ce32913bf97ba61cc8",
        "a8d7ea067cf22baeee2ff0a33e5a8c5a35936942"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:06:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 09 16:06:07 2011 -0700"
      },
      "message": "am a8d7ea06: am 220cd77d: Merge \"Enforce public resource restriction on bag parents.\" into honeycomb-mr2\n\n* commit \u0027a8d7ea067cf22baeee2ff0a33e5a8c5a35936942\u0027:\n  Enforce public resource restriction on bag parents.\n"
    },
    {
      "commit": "426431adcc220b6adfbe1d9530247f897e60fa36",
      "tree": "e9dd34ae5151de5bf9f57edb3055d0d228e1f006",
      "parents": [
        "1d3173c3dc93bb4f2efc5b059fec8e7577b3258a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 11:29:08 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 15:27:39 2011 -0700"
      },
      "message": "Enforce public resource restriction on bag parents.\n\nNeed to put some more styles in the SDK to avoid breaking apps.\n\nAlso, welcome Android 3.2.\n\nChange-Id: Ia31d07c9b1b91ad868d8630437fdc1b5ae24f37d\n"
    },
    {
      "commit": "050316184b01c0d1a01c46afae7429b89a27c31b",
      "tree": "b21b202cd5345f3989b512b74b227f3fc910383a",
      "parents": [
        "890e013c05ed62bea9781168f3f65efebcbac4d5"
      ],
      "author": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Mon Jun 06 16:02:47 2011 -0700"
      },
      "committer": {
        "name": "tedbo",
        "email": "tedbo@google.com",
        "time": "Thu Jun 09 11:59:23 2011 -0700"
      },
      "message": "Add ParcelSurfaceTexture Java class to enable ISurfaceTexture sharing via Binder.\n\nThis adds a new ParcelSurfaceTexture.java class that can be instantiated with\na SurfaceTexture and used to send the corresponding ISurfaceTexture interface\nto another process via Binder. The ParcelSurfaceTexture java object can then\nbe used to create an ANativeWindow based on the SurfaceTextureClient interface.\n\nChange-Id: Ie38ea948b866e52f36a6d0f6cde19b54a8546817\n"
    },
    {
      "commit": "fddf5d9f48d0864a30fcc2706616f6aa6cb06c61",
      "tree": "4cf6b1091a3914612f9e3532d185624c62800464",
      "parents": [
        "b19fcf3e9c6b9c8c2885b9ac7f7f836a0e2d6d22"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jun 07 15:52:25 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 08 16:04:26 2011 -0700"
      },
      "message": "Make dumpsys(media.player) more useful by having AwesomePlayer populate it.\n\nChange-Id: I12ba7d542331a8293d67a0d47378b8be4f777759\n"
    },
    {
      "commit": "72c7362080c355c538ae2c46ac03501689e73736",
      "tree": "ece506fbc4beeacc5bff2a6266dbb2d00e203f8f",
      "parents": [
        "051e8f2bfa3ada8ee64d8a4f4d69ad9286209516",
        "61220e880ac4d9d76b7fd50744439e68e929c697"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Tue Jun 07 17:52:30 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 07 17:52:30 2011 -0700"
      },
      "message": "am 61220e88: am bbbab26e: am 2c180499: Merge \"Revert velocity damping. Bug: 4364920\" into honeycomb-mr2\n\n* commit \u002761220e880ac4d9d76b7fd50744439e68e929c697\u0027:\n  Revert velocity damping. Bug: 4364920\n"
    },
    {
      "commit": "a4a48a484fe862787cf2fbe1314deab8ac375951",
      "tree": "eafe490eb4ce35414011e8082a64d9a762769bd2",
      "parents": [
        "4da7b10c45dfa86be5636444b2c3caebc462659c",
        "bde61a5731cdfef76a0691f8bd53b880606f5f6e"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jun 07 04:05:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 07 04:05:35 2011 -0700"
      },
      "message": "Merge \"Improve android.hardware.Camera.Area javadoc.\""
    },
    {
      "commit": "bde61a5731cdfef76a0691f8bd53b880606f5f6e",
      "tree": "59e8a563a902aba4524af1ffcbc9443514033923",
      "parents": [
        "b2450ce105086d1ac82d273a5292d9581c6ddec4"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jun 07 18:23:14 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jun 07 19:00:03 2011 +0800"
      },
      "message": "Improve android.hardware.Camera.Area javadoc.\n\nbug:4553469\nChange-Id: Iae88af354fee4925cb7978572c27f6dd5595ca59\n"
    },
    {
      "commit": "61220e880ac4d9d76b7fd50744439e68e929c697",
      "tree": "7416218992489a1ddebdafb535d2d65a0dc8cf76",
      "parents": [
        "55cc25c12c45e8ffb65d2275cc0b6941b68db9df",
        "bbbab26ebe9bc789ba9abac757895a6c31de7cc5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Mon Jun 06 20:36:49 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 06 20:36:49 2011 -0700"
      },
      "message": "am bbbab26e: am 2c180499: Merge \"Revert velocity damping. Bug: 4364920\" into honeycomb-mr2\n\n* commit \u0027bbbab26ebe9bc789ba9abac757895a6c31de7cc5\u0027:\n  Revert velocity damping. Bug: 4364920\n"
    },
    {
      "commit": "2c1804998b6a3f1f9f5f301ccf813363825ab4cf",
      "tree": "402728e71a7bfd55b0dd1b2414ff8229442fb3b2",
      "parents": [
        "b92dcf9c062064dcca9298b089d95a3ce1ba2e75",
        "ac55c2b1ea5c4a1284bf06744380bf32e6aeb7d6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Mon Jun 06 20:32:18 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 06 20:32:18 2011 -0700"
      },
      "message": "Merge \"Revert velocity damping. Bug: 4364920\" into honeycomb-mr2"
    },
    {
      "commit": "ac55c2b1ea5c4a1284bf06744380bf32e6aeb7d6",
      "tree": "4bda0a1efedd7851c45ac63d54b3ca4b773a7320",
      "parents": [
        "cb5ffcf0e41d2597401208221c61589547a00f3d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Mon Jun 06 20:23:54 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Mon Jun 06 20:23:54 2011 -0700"
      },
      "message": "Revert velocity damping.\nBug: 4364920\n\nVelocity damping proved to be a bad idea because it would\ncause a significant ramp in velocity at the beginning of\na gesture, instead of the desired smooth behavior.  Oh well.\n\nChange-Id: Ie631946f47ef2492bd71fbed1ab44bbb39a875a8\n"
    },
    {
      "commit": "219451363d7c9e657cb856bebce34bc29d7876fa",
      "tree": "023a29129d3fc3eef930d6a2712c262809d85eb4",
      "parents": [
        "de7fc15ff45e7a7dad6304908cc6b87f3f154bf8"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Jun 06 16:36:05 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Mon Jun 06 18:04:17 2011 -0700"
      },
      "message": "CameraParameters: add PIXEL_FORMAT_RGBA8888\n\nChange-Id: I2780e936f5b4628d506ac4e6947b78ef831fbde8\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "24855c09173a6caaec7dcedd0c2d7ce15121d39b",
      "tree": "1b72c39ca375da3f4c43ba5afcf9cde70dd7a53d",
      "parents": [
        "b16b020dd32147fbaaf7de47d5de16bfee10967a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 06 09:55:15 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 06 15:14:25 2011 -0700"
      },
      "message": "merge various SF fixes from gingerbread to honeycomb-mr2 (DO NOT MERGE)\n\n  Fix a race that could cause GL commands to be executed from the wrong thread.\n  RefBase subclasses can now decide how they want to be destroyed.\n  Fix a race in SurfaceFlinger that could cause layers to be leaked forever.\n  Fix a race-condtion in SurfaceFlinger that could lead to a crash.\n\ninitial cherry-pick:\nresolved conflicts for merge of b9783b49 to honeycomb-plus-aosp\n\nChange-Id: I2a335e03fff219e35c18a7b0089b3a11d636576f\n"
    },
    {
      "commit": "b2fd84ad1d470d607af4a83da378d4e317421634",
      "tree": "7f3004f80d6e46b33317676d8d11b79aa3c6bb69",
      "parents": [
        "fc51aaec82ecedb554d158e4284761c9348d09fd",
        "b9783b49f4727a0365f2297bb903db8682855adf"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 06 09:55:15 2011 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 06 09:55:15 2011 -0700"
      },
      "message": "resolved conflicts for merge of b9783b49 to honeycomb-plus-aosp\n\nChange-Id: I1d86ea56b3d1d1b69f6671e5b0df0ca3f0c79643\n"
    },
    {
      "commit": "d4c6a5be8068101870be473b4842f0ad9b87c598",
      "tree": "4fbdb14ff670cbea966d2c5ccbbe93e233384d90",
      "parents": [
        "b571a7a05338ef2c909917da9b53ddc4f4383f66",
        "38c07129c42222a764d784327d0a63f4cfc1331b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 03 17:43:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 03 17:43:20 2011 -0700"
      },
      "message": "Merge \"Move OMX_QCOM_COLOR_FormatYVU420SemiPlanar definition to OMX_IVCommon.h\""
    },
    {
      "commit": "a742f854901b8306d3696c9e9b7881c207130a01",
      "tree": "f5dc2db12546bd5a0835fb62058882f7587f3e7c",
      "parents": [
        "bb718776a1f77c293d22140775706655a1605807",
        "56503b8ddfe5c82407da32e18061e725f668432d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Fri Jun 03 15:30:33 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 03 15:30:33 2011 -0700"
      },
      "message": "am 56503b8d: am 8186a5f0: am 10c3f367: Merge \"Implement pointer acceleration.\" into honeycomb-mr2\n\n* commit \u002756503b8ddfe5c82407da32e18061e725f668432d\u0027:\n  Implement pointer acceleration.\n"
    }
  ],
  "next": "38c07129c42222a764d784327d0a63f4cfc1331b"
}
