)]}'
{
  "log": [
    {
      "commit": "253dfdb983611b8375c9e0b0483eda03fa146028",
      "tree": "022b83177f4dcb12d554ea24175a38cd3df320d0",
      "parents": [
        "6cc3a9948b51193dfdcb0c3527d7f3d1ca38aa3c"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Sep 19 11:08:33 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Sep 19 11:08:33 2013 -0700"
      },
      "message": "Rotate fallback size\n\nIf configuring the encoder for display-size recording fails, we drop\nback to 720p.  This was done a bit too literally, and didn\u0027t look\ngood in portrait mode.  Rotate the fallback size as needed.\n\nBug 10826876\n\nChange-Id: Id3130471fc1467afa8bf91d75c9d4a49245253c3\n"
    },
    {
      "commit": "e6d5794b2173ffe4e7509203a91778b19eafcebf",
      "tree": "a2f6d729e72a7386220b8c38099f47fe54e0c21c",
      "parents": [
        "36a8b33a23dca49c9617e97e22e5d67f7d25c268"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 06 12:03:26 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 06 12:03:26 2013 -0700"
      },
      "message": "Make sure the encoder instance is safely release()\u0027d before its\n\nreference count drops to 0.\n\nChange-Id: I6601226e2754f17e964125cacf02dc02cfbf6231\nrelated-to-bug: 10150263\n"
    },
    {
      "commit": "f74ccdb61627421bccfdbc479ffdc06ced717db4",
      "tree": "674daeefece2063d57863021f0d6991445fabacb",
      "parents": [
        "e45a767e13fe3396185c9d378a70f7f11eb881d0"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Sep 04 15:54:07 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Sep 04 15:54:07 2013 -0700"
      },
      "message": "Start \u0027am\u0027 with exec()\n\nWe were using system() to run \u0027am broadcast\u0027.  Switch to\nfork()+exec().\n\nBug 10606037\n\nChange-Id: Ifae1a2b4f1914f015d09f2cac8cd0b1896d87a84\n"
    },
    {
      "commit": "2c041c1c927fdbf60f53f1a1960e5155a79007b7",
      "tree": "709d54263002988da46682537475a8d5389f963f",
      "parents": [
        "48326940f48390e79476e5ce7c2a18b8201cdafc"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 15:22:11 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 15:22:11 2013 -0700"
      },
      "message": "Add time limit to screenrecord\n\nRecordings are now limited to 3 minutes.  The time can be set lower\nwith the --time-limit option.\n\nBug 10529645\n\nChange-Id: I6ac19b9da8d616d38262414c2e821d56efcec55d\n"
    },
    {
      "commit": "48326940f48390e79476e5ce7c2a18b8201cdafc",
      "tree": "56ba061a0ef635c2242dca1f5972246edc9a736b",
      "parents": [
        "e07f53720bcf543bcfe90c228a49c2a85a3fdb4c"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Fri Aug 23 13:49:38 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 28 07:38:28 2013 -0700"
      },
      "message": "Notify the media scanner\n\nUse an \"am broadcast\" command to notify the media scanner that\na new video file is available.\n\nBug 10096103\n\nChange-Id: I8261d81d96832969ebb9031a9766c1b1f2a569ed\n"
    },
    {
      "commit": "c85a986af84962515c10499faab3dc8f9a0948d4",
      "tree": "27bb5d32fb461e3f5f27889451017a3b6bd7fb48",
      "parents": [
        "c13a958fba83dae63a8cf23b76b36a8fc8580aef"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 14 20:39:49 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 14 20:39:49 2013 -0700"
      },
      "message": "Fix build.\n\nChange-Id: If87636a654c8cfb2449e246df213fb24b08b4ad3\n"
    },
    {
      "commit": "99a2297e4f9746cd5efc3aa3731d17052f32e058",
      "tree": "6299db378045ebb22e929cc3fe2a7284f67133b0",
      "parents": [
        "69b5e38ca1af5696da1c00627d2e64f7db00d2e1",
        "a2081368e2068a86f2db9b0dd562d9e18f69ea37"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 23:25:59 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 14 23:26:05 2013 +0000"
      },
      "message": "Merge \"Another error check\" into klp-dev"
    },
    {
      "commit": "69b5e38ca1af5696da1c00627d2e64f7db00d2e1",
      "tree": "29a03f149aea8c87d6207a528a60da2751b9f0fd",
      "parents": [
        "7f76a81b18ade3158ae27015637074ce08e837b2",
        "2533c83b4ed8e1ca5b259d59373f941c8f0e9635"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 23:23:15 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 14 23:23:16 2013 +0000"
      },
      "message": "Merge \"Use destroyDisplay()\" into klp-dev"
    },
    {
      "commit": "a2081368e2068a86f2db9b0dd562d9e18f69ea37",
      "tree": "a70ef62bb490a67229e29dacf94ff5ff82e897b9",
      "parents": [
        "2533c83b4ed8e1ca5b259d59373f941c8f0e9635"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 15:08:29 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 15:08:29 2013 -0700"
      },
      "message": "Another error check\n\nChange-Id: I01ed5c0c7dcb520732d2856859bced31df5fbbb5\n"
    },
    {
      "commit": "2533c83b4ed8e1ca5b259d59373f941c8f0e9635",
      "tree": "bfad6cb63427aca3993b6d70b0c53aee18160ebc",
      "parents": [
        "fe9611bd65a8d968d6512f6a83078ac064ec8e6e"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 11:23:06 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Aug 14 11:23:06 2013 -0700"
      },
      "message": "Use destroyDisplay()\n\nUse the new SurfaceComposerClient::destroyDisplay call to shut the\nvirtual display down.\n\nChange-Id: I0225a44594abf427d386456622b23b01fdd1690f\n"
    },
    {
      "commit": "1e0b080825a169c6ac655f11a798ff177575608c",
      "tree": "741d74d02ffc8e0cabdac3447e532547f384504b",
      "parents": [
        "46052913f307b1561f1661bb776fa29c0775758c",
        "3cb3f576475c04058c265bb2dfa366cc98b2434c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 17:03:29 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 13 17:03:30 2013 +0000"
      },
      "message": "Merge \"Restore stagefright command line tool.\" into klp-dev"
    },
    {
      "commit": "46052913f307b1561f1661bb776fa29c0775758c",
      "tree": "198b0f96f080c9110688e19bd65d51182ed99b1e",
      "parents": [
        "fe9611bd65a8d968d6512f6a83078ac064ec8e6e"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Aug 13 09:56:19 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Aug 13 09:56:19 2013 -0700"
      },
      "message": "Better error message\n\nAttempt to create the output file before handing it to MediaMuxer,\nwhich doesn\u0027t report file-open failures in a useful way.\n\nChange-Id: Ie24ff577dd50e185b4eb72575684d23a46f38d3d\n"
    },
    {
      "commit": "3cb3f576475c04058c265bb2dfa366cc98b2434c",
      "tree": "6c803e1e1db1227f685ad7d25cecefdea66264ac",
      "parents": [
        "1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 08:55:47 2013 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 13 08:55:47 2013 -0700"
      },
      "message": "Restore stagefright command line tool.\n\nChange-Id: Ia17f48522f601d6a057ef3e1e8cd01f80a5c9951\n"
    },
    {
      "commit": "9e65879ebc633334bb061e8164c46602ad983c50",
      "tree": "0a5046a178e98c0d4057d816559b508243543a68",
      "parents": [
        "deeef54487a34034dc0cfaab20b20d557224c07c"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Aug 06 15:54:17 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Aug 06 15:54:17 2013 -0700"
      },
      "message": "Fix build. last attempt.\n\nChange-Id: Ib955134f90b78cfc0d31272021ad5907a41df708\n"
    },
    {
      "commit": "f560001b5d60225dc7e101b2481477a3c39b66a4",
      "tree": "461758ceb2b2dcc49ba220230b7859374a633a40",
      "parents": [
        "b08ab81bab9e8cd2e3a7fff02725a387070fd078"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Fri Aug 02 13:58:54 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Fri Aug 02 14:03:24 2013 -0700"
      },
      "message": "Use screen dimensions as default video size\n\nInstead of 720p, use the screen dimensions as the default video\nsize.  For example, a phone with a 768x1280 display would be\nrecorded as a 768x1280 video when in portrait, or a 1280x768\nvideo when in landscape.\n\nIf the device is not able to record at that resolution, we\nfall back to 720p.\n\nAlso, fixed a problem introduced by a buffer timestamp change.\n\nChange-Id: I7230ddb323c669ab07327f26df8d103c192c21d3\n"
    },
    {
      "commit": "1f5a90bc795475896044fcb1f74816c102851f06",
      "tree": "6a446bd7e9aca02592c0f4420c46854704d1cf35",
      "parents": [
        "288abb6fe160dff109dedbf89b227fc2b10a2ee8"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Mon Jul 22 12:23:07 2013 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Jul 23 15:35:46 2013 -0700"
      },
      "message": "Prototype screen recording command\n\nThis records the screen contents as a movie.  It works by feeding\nthe output of a virtual display to the video/avc encoder.  Recording\ncontinues until Ctrl-C is hit.\n\nVideo only, no sound.  Does not track screen rotations.\n\nChange-Id: I91d5c4e781792c740699b7a83590e846295b3617\n"
    },
    {
      "commit": "8d764bfc74c40641f018a0aa87d6f484aec92eae",
      "tree": "1418445850d4b3d44ab521722639494b33df27f5",
      "parents": [
        "ce177bb31493d3cd4450f9d4760fa1fd32ec6bf4"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 12 22:06:20 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 12 22:06:20 2013 -0700"
      },
      "message": "always pass the BufferQueue explicitely to consumers\n\nChange-Id: Ic2d9a9cf184a482b3c78a481ed693ee32df5ca13\n"
    },
    {
      "commit": "94705aff3c9eef58cbb72ec6fe5d2dcfd9481646",
      "tree": "a6129de4a9abf49499bfc4639587a2627c0370ab",
      "parents": [
        "078a540525f86517aefa4afc56e12fbd74e3823d"
      ],
      "author": {
        "name": "hkuang",
        "email": "hkuang@google.com",
        "time": "Mon Jun 24 11:21:17 2013 -0700"
      },
      "committer": {
        "name": "Hangyu Kuang",
        "email": "hkuang@google.com",
        "time": "Mon Jun 24 20:29:08 2013 +0000"
      },
      "message": "Adds VP9 decoding support for stagefright.\n\nAlso change the VP8 encoder role name from \nvideo_encoder.vpx to video_encoder.vp8 for \nfuture VP9 encoder support.\n\n\nRequires the change in frameworks/native and media_codecs.xml \ncorresponding to the device.\n\n\nVP9 decoding test will be added to cts repo later.\n"
    },
    {
      "commit": "d1fffa24d9b5d0d6f5ff9eda372befe114ceefb6",
      "tree": "b3cb7ad22bb88ebc1a8c22ece8e65769f150b329",
      "parents": [
        "dcb614cda0fb11d06dc3e7f508367a36baaebd54"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Jun 06 15:00:14 2013 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Jun 06 15:15:31 2013 -0700"
      },
      "message": "Remove \"LOCAL_MODULE_TAGS :\u003d debug\" for stagefright tests\n\nChange-Id: I53815d2f6d7dfe7eebb26c3802eb3d195244aab1\n"
    },
    {
      "commit": "14f7672b5d450ed26a06fd3bb3ce045ea78b11b2",
      "tree": "1730ace584297a64946ed5dccc0ca596c2570d21",
      "parents": [
        "fbb70ce416b193655fbe5ff7f6c8676050bdf524"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 15 09:04:18 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri May 31 10:30:45 2013 -0700"
      },
      "message": "New HLS implementation supporting independent stream sources, audio-only streams\n\nand more.\n\nChange-Id: Icfc45a0100243b2f7a14a9e65696be45b67d6495\n"
    },
    {
      "commit": "ea29f0da58add214f79ed148ad0321cef0777e54",
      "tree": "79cebb1b6765eef913071f897e045f0448ced16f",
      "parents": [
        "d72ec85d1d0b92ed82927e3925f21912a659b799",
        "a768b4f838f93823f661422d8193ebbff64b1b5a"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Apr 15 11:41:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 15 11:41:14 2013 -0700"
      },
      "message": "am a768b4f8: am 8f1efee1: Merge \"MediaMuxer prefer not to use the MPEG4Writer in real time recording mode.\" into jb-mr2-dev\n\n* commit \u0027a768b4f838f93823f661422d8193ebbff64b1b5a\u0027:\n  MediaMuxer prefer not to use the MPEG4Writer in real time recording mode.\n"
    },
    {
      "commit": "8f1efee1c17e997af5ea3c46c62b3ae106b18264",
      "tree": "18392c33567980ddbb6fc193817113489027f335",
      "parents": [
        "5ce9c299a64a1568165fc66adb2cf68d89198a90",
        "de05c8eab188e98798f2b9c3dfac53dbc18ef584"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Apr 15 18:36:01 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 15 18:36:01 2013 +0000"
      },
      "message": "Merge \"MediaMuxer prefer not to use the MPEG4Writer in real time recording mode.\" into jb-mr2-dev"
    },
    {
      "commit": "de05c8eab188e98798f2b9c3dfac53dbc18ef584",
      "tree": "5f1023f6cf5770bc3cdbbda03af68a62ff2eebcf",
      "parents": [
        "848621d519636e2abdb8575ba0f964efc53da0d5"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Apr 12 13:50:38 2013 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Apr 15 10:48:33 2013 -0700"
      },
      "message": "MediaMuxer prefer not to use the MPEG4Writer in real time recording mode.\n\nBy default, MPEG4Write will keep running in real time recording mode.\n\nbug:8598944\n\nChange-Id: Idf7fbd4e0feb7763660a74279ba8817b79098aaf\n"
    },
    {
      "commit": "844ebdef8c73b98ec29c75f1fd7940624e70d14d",
      "tree": "0ae3d9ebfea83148018ebf4825ad9c902e8d8e83",
      "parents": [
        "a4d0cd1b817a3c55858af5f754f7daa302de087e",
        "e63f850b179a43a344d438f202ad34ec7566f955"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 22:25:13 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 09 22:25:13 2013 -0700"
      },
      "message": "am e63f850b: am da0dc0af: Add liblog\n\n* commit \u0027e63f850b179a43a344d438f202ad34ec7566f955\u0027:\n  Add liblog\n"
    },
    {
      "commit": "da0dc0af0effe9fbfb3ce3187c8472fca2baf3c6",
      "tree": "67aa5a912048834766759d1842f7e54a20f74481",
      "parents": [
        "ec77122351b4e78c1fe5b60a208f76baf8c67591"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:53:49 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:53:49 2013 -0700"
      },
      "message": "Add liblog\n\nBug: 8580410\nChange-Id: If493d87d60d71be664ad75b140c62acadb75b0d0\n"
    },
    {
      "commit": "a459c33e0b5ef65014be5716b6a5e5d89e8c8624",
      "tree": "e9fa7bd8196d458972c4da35e2f953484e0193e8",
      "parents": [
        "a2bacf9dcb22243ffaa96a50a008694344fc5da0",
        "6bc010e3062b50d5cf9605dd5ffaa0904772312e"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Mar 20 17:05:26 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 20 17:05:26 2013 +0000"
      },
      "message": "am 6bc010e3: am 9e36b5a5: Merge \"Add the presentation rotation support\" into jb-mr2-dev\n\n* commit \u00276bc010e3062b50d5cf9605dd5ffaa0904772312e\u0027:\n  Add the presentation rotation support\n"
    },
    {
      "commit": "0e6858d6aea12fc585a8c7d217c1271878655081",
      "tree": "1dab494a2e6d8f8f6eb96011ee178445a4f76585",
      "parents": [
        "46df2764f0afee42deaf0ad8f0f1f0354987dfa5"
      ],
      "author": {
        "name": "Dan Morrill",
        "email": "morrildl@google.com",
        "time": "Thu Mar 07 14:40:40 2013 -0800"
      },
      "committer": {
        "name": "Dan Morrill",
        "email": "morrildl@google.com",
        "time": "Tue Mar 19 17:34:49 2013 -0700"
      },
      "message": "Turn off debug tags in stagefright modules.\nLOCAL_MODULE_TAGS :\u003d debug causes the module to be included in every userdebug\nbuild, regardless of whether it\u0027s specified as a dep by the device config.\nThis CL switches them all to optional (i.e. default behavior) so that we can\ndo (userdebug) device builds without pulling these in.\n\nChange-Id: I4b7b65afea61865dd38b3af55550fb8f10edf66d\n"
    },
    {
      "commit": "e0fb528f8e3bbab04620c8534177168b358e837b",
      "tree": "620e4dc70bb9299600fdf9468507197bdca93b5f",
      "parents": [
        "ee6ad3bd4bfc8e71b3b8c96eb4ea56a592e13e65"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Tue Mar 12 15:43:56 2013 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Mar 15 16:16:16 2013 -0700"
      },
      "message": "Add the presentation rotation support\n\nbug:7991013\n\nChange-Id: I10cb034b432876c724baa4974efcb3d67b8a99b6\n"
    },
    {
      "commit": "3db62dfc5102247d415df4667bd9609e669fc022",
      "tree": "70ae686be3e35fb0a2af316d4d4fce733f06249c",
      "parents": [
        "bf04b5860182d8f4130dcb5d6d88ee68a58c99cd"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Feb 22 14:32:59 2013 -0800"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Mar 08 14:48:05 2013 -0800"
      },
      "message": "Clean up the native code to match Java update\n\n1. Add flags to match the java side change.\n2. Update the interface.\n\nbug:7991013\n\nChange-Id: I8ffe84c466b2a68e2e1e48b35b78db9e44640265\n"
    },
    {
      "commit": "ceb388d6c03c38b96dc41c0ea4804b749aa077c4",
      "tree": "0639ba70ce330094a9fa71ba4577eece6d4dadb1",
      "parents": [
        "0894bfb78b7872570b94d0b8d23ebbf6a8b51d35"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 19 10:40:14 2013 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Feb 25 16:11:41 2013 -0800"
      },
      "message": "CameraService and Stagefright: Support AppOps\n\nCamera:\n- Signal to AppOpsService when camera usage starts and stops\n- Listen to permissions revocations and act on them\n- Currently just kill camera connection when permissions lost\n\nStagefright:\n- Pass on client name, UID to camera as needed\n\nBug: 8181262\nChange-Id: I9e33c9d05e9daa77dbb2d795045d08eb887ec8f0\n"
    },
    {
      "commit": "9e1cdea45d40fa8cf95dd080943053856009054f",
      "tree": "994c8f0800e7c636e0f5ce7dfab1d9bf082decb9",
      "parents": [
        "fc900c922e219771d0cd3c075720d90026e1ca4a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 19 18:25:33 2013 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 19 18:25:33 2013 -0800"
      },
      "message": "replace getISurfaceTexture by getIGraphicBufferProducer\n\nChange-Id: I723a3863558126f2635a544a39bb3ec88d499c60\n"
    },
    {
      "commit": "1a2952aee048ca7b1765e2bc09ebe9aeddaeafa3",
      "tree": "8e63f996a20f020e0af736eab89d632204c2c631",
      "parents": [
        "05f625c46b992ab66b8d1527a366fe2746b4e3c7"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Feb 14 17:11:27 2013 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 15 12:47:35 2013 -0800"
      },
      "message": "Refactoring: Rename SurfaceTextureClient to Surface\n\nChange-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830\n"
    },
    {
      "commit": "6df48bfe8cccdfec58f5f94be3cf3a2c64697e56",
      "tree": "191d8c14b8670f2dda895b1be99f380da02ecb1e",
      "parents": [
        "cd27b0798f6abb34e464acc7c7e97e066cd3c6c7"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Thu Feb 07 15:12:10 2013 -0800"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Feb 13 11:39:06 2013 -0800"
      },
      "message": "Add a test utility for MediaMuxer.\n\nThis test/utility copy samples from one video and mux into another video.\nIt support trimming, cutting audio or video track.\nIt can run simply as command line like:\nadb shell muxer -a -v -s 1000 -e 8000 \"/sdcard/DCIM/Camera/VID_*.mp4\"\n\nbug:7991013\n\nChange-Id: I8a2eeff3cabd001b6b2a7062d991dd076edbf22e\n"
    },
    {
      "commit": "0df36ec3303c2c6bf9b42c07945ac8bd234153f3",
      "tree": "558d8e8d18ce64e84114d3b3d53209c0b4e27693",
      "parents": [
        "ec0c597cabf169ca646bcea5faac1bd81ed4484d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 10:44:39 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 10:44:39 2013 -0800"
      },
      "message": "HLS now properly publishes its \"seekable\" flags after connection\n\nhas successfully completed and a sufficient amount of data fetched,\nand only then signals that preparation is completed.\n\nChange-Id: I7684a14238b826909f518f2af506966e522dfcfc\n"
    },
    {
      "commit": "49d24d3fcd01aef0ec1fa4abd9c1b85473f64c0f",
      "tree": "b2803e0ba9269ce4513f41d1a37984450f6fbfd7",
      "parents": [
        "df84d70d1da102995a5f1591c4af7c1807e4acd8",
        "8d6cc842e8d525405c68e57fdf3bc5da0b4d7e87"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Dec 21 08:09:10 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 21 08:09:11 2012 -0800"
      },
      "message": "Merge \"Remove unnecessary parameter\""
    },
    {
      "commit": "8d6cc842e8d525405c68e57fdf3bc5da0b4d7e87",
      "tree": "d3296fc4f886ae058cb353cec79576b7e4428897",
      "parents": [
        "53bc0a2fc54330534330118edd5c393f39eff8ab"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 03 11:06:53 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Dec 18 16:16:30 2012 -0800"
      },
      "message": "Remove unnecessary parameter\n\nJust get the parameter on server side\n\nChange-Id: I433a63104dbb257e0d862be2ab61847cb36d1c15\n"
    },
    {
      "commit": "8ba01021b573889802e67e029225a96f0dfa471a",
      "tree": "110eca2effc73dcb2f46da71e9a0584e4af6e71e",
      "parents": [
        "53bc0a2fc54330534330118edd5c393f39eff8ab"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Dec 18 09:46:54 2012 -0800"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Dec 18 13:31:57 2012 -0800"
      },
      "message": "Rename ISurfaceTexture and SurfaceTexture\n\nThe C++ class names don\u0027t match what the classes do, so rename\nISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to\nGLConsumer.\n\nBug 7736700\n\nChange-Id: I64520a55f8c09fe6215382ea361c539a9940cba5\n"
    },
    {
      "commit": "84b6440fa1d1274267deabe0bd8dc626b5548e4c",
      "tree": "b5284479445f82ecf482fe09c1638b2db2e962da",
      "parents": [
        "dbd405dae1e2d2f88e529cc0d1fbdb0a676c4d7a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Dec 12 12:15:23 2012 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Dec 12 12:15:23 2012 -0800"
      },
      "message": "stop using a deprecated SurfaceTextureClient ctor\"\n"
    },
    {
      "commit": "dbd405dae1e2d2f88e529cc0d1fbdb0a676c4d7a",
      "tree": "edaf2184d449ddc81f107bead79ae6fb09ca49c8",
      "parents": [
        "6a15305283e837b27adc60b587317f581524b1bc",
        "af0351f930459098d98792d569b1436c43c536d8"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Dec 12 12:09:09 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 12:09:09 2012 -0800"
      },
      "message": "Merge \"Revert \"stop using a deprecated SurfaceTextureClient ctor\"\""
    },
    {
      "commit": "af0351f930459098d98792d569b1436c43c536d8",
      "tree": "23916ae7df8025a16a1d7e5b26a0e699e0236fb6",
      "parents": [
        "aef79b0676d8f0ee8ef637ec8be5ba73225b038d"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Dec 12 12:08:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 12:08:51 2012 -0800"
      },
      "message": "Revert \"stop using a deprecated SurfaceTextureClient ctor\"\n\nThis reverts commit aef79b0676d8f0ee8ef637ec8be5ba73225b038d\n\nChange-Id: I5f6cf4d6d5dc895a9426f212dfc8a25b4bf2d23a\n"
    },
    {
      "commit": "db88c7da6d6710dea336f3253126f7002f218340",
      "tree": "d3d4cd0520516c119a1e571b6f97d966e29d205b",
      "parents": [
        "08470ab61d437289bee05257ef1edd8987ccf1dd",
        "aef79b0676d8f0ee8ef637ec8be5ba73225b038d"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Dec 12 10:58:38 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 10:58:39 2012 -0800"
      },
      "message": "Merge \"stop using a deprecated SurfaceTextureClient ctor\""
    },
    {
      "commit": "aef79b0676d8f0ee8ef637ec8be5ba73225b038d",
      "tree": "e0c9b69d4dcaf6fa7709d3f1f2cac8d4b9ab77e7",
      "parents": [
        "ae162976dda428671af09a8fbc3f03173a7e6f3e"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Dec 11 17:03:12 2012 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Dec 11 17:03:12 2012 -0800"
      },
      "message": "stop using a deprecated SurfaceTextureClient ctor\n\nChange-Id: I792277b0d711da22f6b2abb7f1d837450d6af8e2\n"
    },
    {
      "commit": "efc0cfb61e34c3bc688a7cbcc1ccef23922251c1",
      "tree": "505d099db60114695ad7bf6bbd671d09da4cf873",
      "parents": [
        "ae162976dda428671af09a8fbc3f03173a7e6f3e"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Tue Dec 11 14:42:55 2012 -0800"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Tue Dec 11 14:43:31 2012 -0800"
      },
      "message": "stagefright: recordvideo: add -o flag to specify output filename\n\nChange-Id: I6b464a7b3f7dd918565c6abbd432d779eb286fd5\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "3fb57dc603a0d3b2817b91018c03673c8341d6b4",
      "tree": "2479815ce4205899a5fc66bf25a348092d7f2965",
      "parents": [
        "083d1c1492d496960d5b28f4664ff02101736677"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Dec 04 17:16:22 2012 -0800"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Dec 04 17:16:22 2012 -0800"
      },
      "message": "Add explicit cutils to stagefright\n\nWithout this, some changes I\u0027m making over in frameworks/native\nresult in a link-time failure to find android_atomic_dec.\n\nChange-Id: Ieb45a86ef6508816ac51589e249ff89caf7ba309\n"
    },
    {
      "commit": "4cf1bdef135d6ebf6ccd404aacc8917f9887a07a",
      "tree": "205bbcf5620477e1b4b7c83db58b571d83dd445f",
      "parents": [
        "a1c1a7e4c9cb37726e4afc10d6678666087f8e1d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 16 11:15:44 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 16 11:15:44 2012 -0800"
      },
      "message": "Only pass the surface to the video decoder.\n\nChange-Id: Ice0cfc0021fdd9fe053be6ee324cbc64226ed122\n"
    },
    {
      "commit": "71bd6f8faf362659d3a9052549607039585f4922",
      "tree": "7361c8818fa92cf0f9427990f83008da257c1ea5",
      "parents": [
        "c762a9b97c2bd7b701c635e9f204e6d6e0d3e218"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Oct 25 12:07:27 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 12 14:55:57 2012 -0800"
      },
      "message": "Stagefright command line tool: input file name last\n\nShow in usage that the source file name comes last, and is preceded\n by the options.\n\nChange-Id: I8407fc36c8d19785cb2e6e1f7b7a352a8d86f889\n"
    },
    {
      "commit": "c41590251aa84c078c942d258e838aad814b73a5",
      "tree": "1db58d721d614ebd28f52b7a1dc632d943d6506d",
      "parents": [
        "db3a20ea484514f7f23d4ef3c30fe4780ab940d2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:51:39 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 30 10:51:39 2012 -0700"
      },
      "message": "Remove obsolete references to libmedia_native\n\nBug: 6654403\nChange-Id: I3993d62987cf0dd85db10bf002a5cce53d4f01bd\n"
    },
    {
      "commit": "b7b8de8878a32cd62916b29cf2cbf4f7437adbea",
      "tree": "408f84d244d56ccf70c58d87da5416d1ae31fbd6",
      "parents": [
        "ac4187569c7011c2dcfb9ed1ad658b7ad8cba046",
        "0924dd88790ba9cda0d5a86df7d68b7446470fc7"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 29 10:58:21 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 29 10:58:21 2012 -0700"
      },
      "message": "am 0924dd88: am 2aa37a7d: Merge \"recordvideo: Add an option for choosing software encoders\"\n\n* commit \u00270924dd88790ba9cda0d5a86df7d68b7446470fc7\u0027:\n  recordvideo: Add an option for choosing software encoders\n"
    },
    {
      "commit": "ac4187569c7011c2dcfb9ed1ad658b7ad8cba046",
      "tree": "b981c8a291ca7ba29fc32d12a0af5933b73a9b95",
      "parents": [
        "eb941f9a0c8474324732a99387cc6d8cb4ab01ef",
        "3f9e843d924f220f6094241bc765cd69d8fc6d7b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 29 10:58:19 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 29 10:58:19 2012 -0700"
      },
      "message": "am 3f9e843d: am 9ce74352: Merge \"recordvideo: Sleep while waiting for the encoding to finish\"\n\n* commit \u00273f9e843d924f220f6094241bc765cd69d8fc6d7b\u0027:\n  recordvideo: Sleep while waiting for the encoding to finish\n"
    },
    {
      "commit": "2aa37a7d15f5e2246b8996d2600269684904c581",
      "tree": "0cf9b71a4e3cdde4dff5293d17417936d289f757",
      "parents": [
        "9ce74352d23d833f9627b7be58be964206e6ff6d",
        "d4483f3fd0e024d833082fce3ddbc3a2f3d89b24"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 29 09:07:26 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 29 09:07:27 2012 -0700"
      },
      "message": "Merge \"recordvideo: Add an option for choosing software encoders\""
    },
    {
      "commit": "1301a437ff9f5fa6c4ed78f88add3d9bfce97935",
      "tree": "8e0b2fdcba1c12b72df1d4dcb48606f5c97286cd",
      "parents": [
        "4b60ac04a878eaf8344b56189509ccd6925855c2"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Aug 29 13:41:01 2012 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Aug 29 15:36:55 2012 +0300"
      },
      "message": "recordvideo: Sleep while waiting for the encoding to finish\n\nThis avoids busy looping while e.g. waiting for the software encoder\nto finish.\n\nThis is similar to what the \u0027record\u0027 and \u0027stagefright\u0027 test apps\ndo.\n\nChange-Id: Idce55b15396ce78b621a521229603bec1e799f33\n"
    },
    {
      "commit": "d4483f3fd0e024d833082fce3ddbc3a2f3d89b24",
      "tree": "a07f1df352ab304cdac9a34d08c4b1613e61fc91",
      "parents": [
        "4b60ac04a878eaf8344b56189509ccd6925855c2"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Aug 29 13:28:33 2012 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Aug 29 15:35:59 2012 +0300"
      },
      "message": "recordvideo: Add an option for choosing software encoders\n\nThis is similar to the same option in the \u0027stagefright\u0027 test\napplication.\n\nChange-Id: I2a2e5201bd93460df0911ef12865c9030c0183e5\n"
    },
    {
      "commit": "a6195decfe4f9021bbbd7deb050495c33371366b",
      "tree": "09b9019be81ae19ce8555b505248802fc918e4e3",
      "parents": [
        "96272d57caa39566842795ba1f0605a5a5f72272"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 24 22:34:11 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 24 22:42:51 2012 -0700"
      },
      "message": "Use new surface flinger API.\n\nChange-Id: I594c6e15db5f617d2feaac1a65b5316daa3812d0\n"
    },
    {
      "commit": "b9787142c5f5f8f47e7e35409f4f2ef7112ab72e",
      "tree": "3966271224e78b6d8e88da104385a67900890635",
      "parents": [
        "0d27c65ddb5c968baa6db0c26e80f5c451bc52bc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 09 09:15:48 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Aug 09 13:25:48 2012 -0700"
      },
      "message": "Fix static sample table processing, add support for h.263 video.\n\nChange-Id: I5628d3437b5e6f8836d78557fd07ab87e5a914e3\n"
    },
    {
      "commit": "840667883fd09d44015716d79bc3ac4d60edc0f0",
      "tree": "cb55492dbe3ca64b2ab9ba2f5a3bb6d0a0bcf650",
      "parents": [
        "9cb20d4a41eb84bfab7f9f0d0829393f378583f4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Aug 16 09:34:26 2011 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Aug 03 13:57:32 2012 -0700"
      },
      "message": "experimental support for fragmented mp4 playback in nuplayer\n\ncherry picked from change 170999\n\nChange-Id: I407775f0290154ad4961134839a15c9f296424c0\n"
    },
    {
      "commit": "3dca4c7a5622fc6aa03397d749c4b4c1201cc4f3",
      "tree": "0867a719c65c8063b65f33d8e2304cd679245da8",
      "parents": [
        "28567defef0ba95cb38f2d80eba30b01db207a77"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 25 19:22:42 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 25 20:38:26 2012 -0700"
      },
      "message": "update to new getDisplayInfo API\n\nChange-Id: Ie273677e34b9e8475abfa0ae27620d98b3a15b77\n"
    },
    {
      "commit": "3d51d5cb53cc630709a0ba78d0e60501a675f2d5",
      "tree": "c01dc8011b4e0061343c8b60b0da3508c63ae822",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 18:10:35 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 15:18:29 2012 -0700"
      },
      "message": "Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/\n\nChange-Id: I0a3af3e2abdedebd5934f3d941d01c32cfc75e26\nrelated-to-bug: 6647465\n"
    },
    {
      "commit": "8ee516a515c70a492c395b67ce12e19e7d159804",
      "tree": "ae968718f25cd7972a03c00e7496a6deb225fc1f",
      "parents": [
        "a62bde0a391f65a418d77c46e6ba468433d81dba"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue May 08 11:21:26 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue May 08 11:26:22 2012 -0700"
      },
      "message": "Submit codec specific data automatically\n\nif it is contained in the format passed to MediaCodec::configure.\n\nChange-Id: I8ef6755e8389ec47b44a9c70904ea6c03a00f4f2\nrelated-to-bug: 6364139\n"
    },
    {
      "commit": "209ec37b27a4fb6c92005c91ecf993ec19a3d430",
      "tree": "6009bcb3fbb95ec7de0531e9adf7266f77447468",
      "parents": [
        "300a2ee9327c05fbf9d3a5fd595b558097c7c5e8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Apr 27 16:54:59 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Apr 27 17:00:38 2012 -0700"
      },
      "message": "Fixed incorrect codec type in the output for profiles/levels in cmd stagefright\n\no related-to-bug: 6401068\n\nChange-Id: Icdc2cfa37ed053f53d1466d8b068f1d9973ed82f\n"
    },
    {
      "commit": "c434ac82b57108bd08f58612f6ac8cbc92dbd975",
      "tree": "bc8485a725a892fd149e5e7e949414232368d84f",
      "parents": [
        "e0c026e32277de27627b2bc24e51f333a2f1c4ee"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Apr 25 14:14:55 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Apr 27 12:29:37 2012 -0700"
      },
      "message": "Add option to stagefright for writing decoded PCM\n\nb/774846\nChange-Id: I8edce3e7d60b3f56b4eb1ed75ca80285c5ae3972\n"
    },
    {
      "commit": "1ab12519ec3d4922d1980f975fc884908879e0f0",
      "tree": "b744a596652177358d3f15c6992412c87bd98d46",
      "parents": [
        "e370bb62b89d2f2980f519392010ea08a24c558e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Apr 25 18:14:36 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Apr 25 18:14:36 2012 -0700"
      },
      "message": "Add profile/level dump for encoders in cmd stagefright\n\no related-to-bug: 6401068\n\nChange-Id: I51e3eeb026aa75c4492d421f5f239dc9072a9c8b\n"
    },
    {
      "commit": "5b8987e7de9d04b09153f329c680d2316cdb44ec",
      "tree": "2b08e1f8abd0d4b869ce8923b1462530b916a7eb",
      "parents": [
        "fd9e14bc28f377065e43ec6833d754ca151b3941"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 19 12:52:20 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 19 12:53:59 2012 -0700"
      },
      "message": "Allow propagation of error information and description from the CryptoPlugin to\n\nthe higher layers.\n\nChange-Id: I9f434ad55cdf575803c208bedf47b607baff2330\nrelated-to-bug: 6365261\n"
    },
    {
      "commit": "f69e53033f23f9f70fcdb28a3c2e650de0147459",
      "tree": "3654454a30b35e3060d6aef8bec5e56bb8696af6",
      "parents": [
        "97b5d0d5b5ef766eb5dd680d05a5d199662d4ae0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 18 12:22:58 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 18 12:22:58 2012 -0700"
      },
      "message": "Some refactoring and cleanup of now obsolete crypto fields.\n\ncodec commandline tool no longer supports decryption.\n\nChange-Id: I7b10be6524631b20ac5d361d47949b00addf4a93\n"
    },
    {
      "commit": "f4b7d94062c896dca565d849c6188cd3489be257",
      "tree": "b3bc6b1b2bc3641417e018a3235d144b1f8b285b",
      "parents": [
        "b3eb2b7e0ad11bc03344e10cc5204bdb71f0686e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 11 11:52:03 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Apr 11 12:46:12 2012 -0700"
      },
      "message": "Better error logging during meta data retrieval. Fixed the stagefright\n\ncommandline tool to open the file to extract thumbnails from itself since\nmediaserver may not have permission to open files.\n\nChange-Id: Iabe16b3248e9bb0f266b0866a8d2ccba2ab7d2a8\nrelated-to-bug: 6321237\n"
    },
    {
      "commit": "4b75a9c8b93a90749bc5d22912ad0d96c12f4ecf",
      "tree": "ae217f5c50a37349dce944c5d8a065a8740c88a9",
      "parents": [
        "3f502bfc6d04d08369cf147284c5c4c2ac7c9a0e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 06 11:06:28 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 06 12:16:27 2012 -0700"
      },
      "message": "New API to support submitting encrypted buffers to the decoder.\n\nChange-Id: I69dd60e43078c4211c6123cf6e0ce90e676bf873\nrelated-to-bug: 6275919\n"
    },
    {
      "commit": "1bd139a2a68690e80398b70b27ca59550fea0e65",
      "tree": "e3be78f22aa021c4e372409128775c2093d46dae",
      "parents": [
        "d22da88fd555f1262357c7dcdeface8445e3a012"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 03 14:19:20 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Apr 03 14:19:20 2012 -0700"
      },
      "message": "New Crypto services talking to the new crypto \"HAL\".\n\nChange-Id: I69ed31e7a8b4d69d1209d2d516f94d258f072566\nrelated-to-bug: 6275919\n"
    },
    {
      "commit": "559bf2836f5da25b75bfb229fec0d20d540ee426",
      "tree": "d7dd708b17eeca96a3e5d8bcc25a51ff3d1b5d0d",
      "parents": [
        "b0b2b4d890cf3bfb274797a759642b4e733343d7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Mar 28 10:29:14 2012 -0700"
      },
      "committer": {
        "name": "Anatol Pomozov",
        "email": "anatol.pomozov@gmail.com",
        "time": "Wed Mar 28 12:07:41 2012 -0700"
      },
      "message": "AV Android make files changes\n\no plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc\no remove some runtime dependencies to libandroid, libandroid_runtime, etc\n\nChange-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10\n"
    },
    {
      "commit": "15147270aa1c56503902b424f946389294875665",
      "tree": "921f7bb25e8b743485ccc62bc6ee5ddaa345fb54",
      "parents": [
        "b14f18245d64b38aae1c02db79b2ad516d69891c",
        "ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 26 11:43:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 11:43:06 2012 -0700"
      },
      "message": "Merge \"Provisional support for secure decryption of media streams.\""
    },
    {
      "commit": "ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6",
      "tree": "99d5bb3a2f48f9a3ba3eaaf17e630b589e97bef1",
      "parents": [
        "cc1110dc92e53e9cc0afbb043e6ef8295bd9c5d5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 26 11:13:27 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 26 11:24:04 2012 -0700"
      },
      "message": "Provisional support for secure decryption of media streams.\n\nChange-Id: Ib3982a9c960bfdb0cb7e1b174440b141b194cfbe\n"
    },
    {
      "commit": "26a417f68526fee861bb527f1a4e3ed548979f93",
      "tree": "89962980c55919ae8066eaab4c0db16a7d6699d3",
      "parents": [
        "8f7f7ad54c698cb57a2a369cf1ae5b917853917b"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sat Mar 24 15:12:07 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sat Mar 24 23:34:43 2012 -0700"
      },
      "message": "stagefright: remove dependency on skia\n\nskia is only used to write a jpeg file, link directly to libjpeg\ninstead.\n\nChange-Id: Iea8f4a2347c38328776541d2b74bcbdea3f62041\n"
    },
    {
      "commit": "3ee26944b082def647fe5bb2b75116ffb0267059",
      "tree": "61d6c7d15b281eb465f6af35365428e3762f13cf",
      "parents": [
        "ef36d496477d1e2ae99c3cd43eee5cf7e82b0883"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Mar 24 10:48:40 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Mar 24 10:59:14 2012 -0700"
      },
      "message": "Remove JNI in LOCAL_C_INCLUDE from non-JNI related Android.mk files.\n\no related-to-bug: 6214141\n\nChange-Id: Ic88d1732b3e014af47532a0809e01f6086e8464d\n"
    },
    {
      "commit": "afed0e1fa37473a4cd30018577b560acc79d9a3f",
      "tree": "60e3a06c0cc8266f4ecaa45eb7d08c0c47a8b2dd",
      "parents": [
        "898b11f2aeaaa2bed84d963a3fcfd3b229e00b99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Sep 20 15:39:58 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Mar 22 13:18:08 2012 -0700"
      },
      "message": "Use NuPlayer for media playback everywhere\n\nif media.stagefright.use-nuplayer is set to true.\n\nChange-Id: Ibb217e7d7d5195b7feeea557554fe78e1585744c\n"
    },
    {
      "commit": "1bb8e81b066a2311fd238fc6dae8f026e33ed99e",
      "tree": "b532516a844ab20331120a4d6f7777c27c36548c",
      "parents": [
        "1746929ddc7592ab397c402724a61352e45df093",
        "b12153e36ae5e514d96c77d660b327d1a8f5000f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 19 16:21:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 16:21:04 2012 -0700"
      },
      "message": "Merge \"Add libmedia_native\""
    },
    {
      "commit": "1746929ddc7592ab397c402724a61352e45df093",
      "tree": "1911bbd03adeac6bb6e8fa91de3ee1833a40e401",
      "parents": [
        "eb76ff27c13386eb5a2dad73b1a8366f80eb0ff7",
        "ab334fd351ae5a0e18903da123d63e565b536874"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 19 07:31:58 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 07:31:58 2012 -0700"
      },
      "message": "Merge \"audio_channel_in/out_mask_from_count\""
    },
    {
      "commit": "f5e376fb8f2c30f82b7548241ca6b24f92ff8914",
      "tree": "4f807ca65d21cd7205c0c93b5f31de1e110ae2e0",
      "parents": [
        "49f306f863b14f8bfc3b405ebfd3a2fb2b403c15"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 16 13:19:20 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 16 13:19:20 2012 -0700"
      },
      "message": "Report an error instead of waiting for EOS indefinitely in sf2.\n\nChange-Id: Id7bcfb90a3b6a61f0df8bd8f39ea4ffa3c433d87\n"
    },
    {
      "commit": "b12153e36ae5e514d96c77d660b327d1a8f5000f",
      "tree": "fbfe8dc937f925b7075786b969522fb9012ae69b",
      "parents": [
        "6469edeeac6079b118e8f81252116c40574c9841"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 16 11:42:24 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 16 11:51:30 2012 -0700"
      },
      "message": "Add libmedia_native\n\nChange-Id: Ib8cff8abd73723b793f08da99ad59549f219e0e7\n"
    },
    {
      "commit": "ab334fd351ae5a0e18903da123d63e565b536874",
      "tree": "9bcc5a6151326d9ca345f9dfac0d9d68d48e73b4",
      "parents": [
        "3c5bbaee376d235404f267fbe1693d1960bfaaef"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 14 12:56:06 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 15 13:15:27 2012 -0700"
      },
      "message": "audio_channel_in/out_mask_from_count\n\nand avoid ambiguous term \"channels\" where it might be confusing\nas to whether it is a channel mask or channel count\n\nChange-Id: I744fa08ccb6001a98c97bd638d2c9d56836c4234\n"
    },
    {
      "commit": "6c6b4d0d2b98a7ceee8b697daaf611f8df3254fb",
      "tree": "307356be51d237ee22f88affdc3376270d571be9",
      "parents": [
        "aa4397f07c43bd83bc3100b749401dc3d15e7622"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Mar 12 14:37:53 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Mar 12 21:28:57 2012 -0700"
      },
      "message": "Switched to use the header files in /frameworks/native\nand deleted the duplicate header files in /frameworks/base\n\no related-to-bug: 6044887\n\nChange-Id: I17e0692d9a9b5c8796ded36677c833ca8ab36795\n"
    },
    {
      "commit": "5aaeb0d64fc98f9b019a4378eb39f0ee49ee6ec4",
      "tree": "aad8b0cec3fb0153fbee5391ee636cac73c02fa5",
      "parents": [
        "083c154162c88a9f63aeaa10a4b52dd454bda9ff"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 09 09:46:33 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Mar 09 09:46:33 2012 -0800"
      },
      "message": "fix EOS handling in codec test.\n\nChange-Id: I5eb6d00aa0c1a728a951c7ffa4faebcadd7b14a6\n"
    },
    {
      "commit": "bae6f72d16a1cfc2122b4ce9b484c026ecd896b1",
      "tree": "99efa954d8bd0b539d0559c27094682e0da1f7ff",
      "parents": [
        "1465f0c3df04c3166155a852a6a5c10069c1fd0a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 07 12:40:59 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Mar 07 12:40:59 2012 -0800"
      },
      "message": "Added better codec statistics to evaluate performance.\n\nChange-Id: I9a1e4a803502329e0342ddde07b6df6b3761afd8\n"
    },
    {
      "commit": "c95c2ddcdfc974f42408a377fbe2de51b94a8c94",
      "tree": "24239ca3f0d24f790b73d92627de057f738f91d5",
      "parents": [
        "a3873833d518e032138cf70188b6f33cd7acec3d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 28 15:54:51 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 28 15:54:51 2012 -0800"
      },
      "message": "Separate the notion of \"stop\" from that of \"release\", i.e.\n\nstop - means transition back to LOADED state and keeping the component\ninstance allocated.\n\nrelease - means we get rid of the component completely.\n\nChange-Id: I40ad01ce70821faaad43f57999249904f9144924\n"
    },
    {
      "commit": "df712ea86e6350f7005a02ab0e1c60c28a343ed0",
      "tree": "75401d5ef563d1ae76aaae4965f65bb39f92736c",
      "parents": [
        "d3393c35259588e8ad61a43d1d1aa1568e943307"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Feb 25 18:48:35 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 13:03:08 2012 -0800"
      },
      "message": "fix libgui header location\n\nChange-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe\n"
    },
    {
      "commit": "bf6c85a013fb14960bac147c1ffd0a02a8d5f148",
      "tree": "49bbbf00b90fb32b8cba53946344a5ba9752fde3",
      "parents": [
        "54263bcfa6e9ad2fcb3e89617240f4ec0b3a2f99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:42:47 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 24 13:42:47 2012 -0800"
      },
      "message": "Fix two more locations that use the old setObject(\"buffer\", ...) paradigm\n\nthat I\u0027d previously missed.\n\nChange-Id: Ifbdbfb94d1bc1cbe8c0a403fed05ce99fca8397b\n"
    },
    {
      "commit": "e98f8c04faf27df3b1829d336299ad51dad569cf",
      "tree": "87ed36ebec49fde19611331385befab93f25a724",
      "parents": [
        "16d3dfb5710290b334a07aadeb7d3620c7624e7c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 23 11:21:43 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 23 11:21:43 2012 -0800"
      },
      "message": "Be more greedy when it comes to gathering input and output buffers.\n\nChange-Id: I54c4f608e5155917ca35eba5655b4c06357fb112\n"
    },
    {
      "commit": "2d8bedd05437b6fccdbc6bf70f673ffd86744d59",
      "tree": "1a11658a7379249eb4f6bd73b356baa4a661f41e",
      "parents": [
        "79af02c6a813b5d31fba3e7b72686a02f0ae7e0f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 21 14:38:23 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 16:20:59 2012 -0800"
      },
      "message": "Add new APIs AMessage::(set|find)Buffer to make it safer to pass\n\nABuffer objects through messages.\n\nChange-Id: I9f8b4e4c4767d0d70a0105e0c0813b754379b49d\n"
    },
    {
      "commit": "5778822d86b0337407514b9372562b86edfa91cd",
      "tree": "b8faf8188dfb8865bd88b4dfc778a7d9ab89bb73",
      "parents": [
        "c33305c5dd4cc06e71eb0c66a7150aa6ab647c99"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 21 11:47:18 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 15:06:06 2012 -0800"
      },
      "message": "Implementation of a java media codec interface and associated tools.\n\nChange-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b\n"
    },
    {
      "commit": "f1d5aa162c02a16b7195a43a9bcea4d592600ac4",
      "tree": "dc270a6e1a4ee6695e309eeb29c4d9ed7f3a20a2",
      "parents": [
        "43089daaf82bd2b8e5f9a29b80af5abaae4657b3"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 06 23:46:37 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 10 11:43:09 2012 -0800"
      },
      "message": "Move away from MediaDebug and use ADebug instead\n\nChange-Id: I963a3b6f79a7292891973cbeeaf3378b38629f08\n"
    },
    {
      "commit": "2b1892db4a2ab47bfc09e59a4c11751aea99e4ea",
      "tree": "7880f7f60262ced7a16fa7439ac0827b78c07d8d",
      "parents": [
        "244ffc8b98c8b59cf64ef3d368c3373014a2f230"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 26 14:39:50 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 26 15:45:38 2012 -0800"
      },
      "message": "The software AAC encoder is now an OMX component.\n\nYay.\n\nChange-Id: I74938a20b4e0a622836ea5184d3761180eb0f5de\n"
    },
    {
      "commit": "29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47",
      "tree": "3bdafe4b02fe36f6ee29c3170f0b0d2799bebf86",
      "parents": [
        "d709ca9c6a0fa1c8f40cbe624a119398643c5087"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Jan 06 19:20:56 2012 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Sun Jan 08 13:19:13 2012 +0000"
      },
      "message": "Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/#/c/157220\n\nBug: 5449033\nChange-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c\n"
    },
    {
      "commit": "df64d15042bbd5e0e4933ac49bf3c177dd94752c",
      "tree": "ff04eb3e1a1ce8c8d8559b93a438f278d984aa87",
      "parents": [
        "b8a805261bf0282e992d3608035e47d05a898710"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Jan 04 20:05:49 2012 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Jan 04 20:05:49 2012 +0000"
      },
      "message": "Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/156801\n\nBug: 5449033\nChange-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea\n"
    },
    {
      "commit": "471af5aaea2d2491a77dba379771f7c96b9ca3c3",
      "tree": "29609e7feb5c548e28ce94f88b4445c5c373d725",
      "parents": [
        "3b86c964df855a9740c446e984309b719c3ec37c",
        "936a981ba15d528a023311aa32f46446813551d9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 08 10:40:20 2011 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 08 10:40:20 2011 -0800"
      },
      "message": "resolved conflicts for merge of 26f70db9 to master\n\nChange-Id: Ib1536b1a4c9eeff80e0726b3e61cee12057cd120\n"
    },
    {
      "commit": "3901e5d87573447db33fb9930871a1f5266a9b2c",
      "tree": "2ed377c9705a41c95cbc6ea29d683cd646ff2dc8",
      "parents": [
        "841fa37451fb74f3d5978a15aab606bbb67e8c39"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 25 13:45:00 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 28 09:39:23 2011 -0700"
      },
      "message": "Remove surface legacy APIs and code.\n\nAll surfaces are now supported through surface textures.\n\nChange-Id: I95dd823e7099c0c32a48a1121624149dcc29d9c6\n"
    },
    {
      "commit": "3856b090cd04ba5dd4a59a12430ed724d5995909",
      "tree": "a24e4c98fa6049fd8085826be838000f9a67e39b",
      "parents": [
        "1d2acaffde56ad79e6e96f228d7857863462397c"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Oct 20 11:56:00 2011 +0100"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Oct 26 09:57:54 2011 +0100"
      },
      "message": "Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/#/c/143865\n\nBug: 5449033\nChange-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a\n"
    },
    {
      "commit": "2bfdd428c56c7524d1a11979f200a1762866032d",
      "tree": "83bb72ba82f689cc704010c06a51a9963479bab4",
      "parents": [
        "f337772630b0a1b48d7828647d1079ebdc22919d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 11 15:24:07 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 13 11:31:06 2011 -0700"
      },
      "message": "NuPlayer is now taking on the task of streaming over RTSP.\n\nChange-Id: Ie204db8810807f1e7981959e34dc0149e5d9563a\n"
    },
    {
      "commit": "2944eca607304a095ea43ba2b8f0b9de61249f9f",
      "tree": "f3dbe4e61cc94ec086b098c7387034f226a2ac14",
      "parents": [
        "d3523f89a867afa111bb332887bf006ec3ae93e6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Sep 08 14:12:44 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 30 15:26:31 2011 -0700"
      },
      "message": "Support for an MPEG2 Program Stream extractor.\n\nChange-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41\n"
    },
    {
      "commit": "729de186450f78c099637e1fce743fe531862c52",
      "tree": "bf05611a1943104189abce2f9b09514f2ec2adeb",
      "parents": [
        "ac4d4d3698e920b9f5c648a781df5b6af8bcfdf0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Sep 28 12:37:36 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Sep 28 12:37:36 2011 -0700"
      },
      "message": "Support AMR, G.711 and vorbis audio in ACodec and friends.\n\nChange-Id: I08c03219bf2d60fc5c6e89957bd4b4c615570983\n"
    },
    {
      "commit": "070b91e1f67e6e2f129b6b492f38fbec7c8618e4",
      "tree": "a6c6a25ce9bd1b423243fca18300955b7e7ef3fb",
      "parents": [
        "dc9bacd838442a524585887e6ea6696836be2eda",
        "93d5ab693626fa2700375e838e4bb90e4d50e605"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Sep 26 11:26:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 26 11:26:59 2011 -0700"
      },
      "message": "Merge \"Properly connect to surface flinger in our shell tools\""
    },
    {
      "commit": "d10c07603a28429beb7471c0fb23a5f9ec90bf26",
      "tree": "de924db144aa49b74bd594801a519a5654b293ec",
      "parents": [
        "e2c10206a506381ecd466e050f8b5cdf87db7100"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 23 10:25:32 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 23 10:25:32 2011 -0700"
      },
      "message": "Add an option to dump the raw stream to a file in the stagefright cmdline tool.\n\nChange-Id: Ie19eca2cdf162d6973037ec554ef5916243ea7d7\n"
    },
    {
      "commit": "93d5ab693626fa2700375e838e4bb90e4d50e605",
      "tree": "b61248326ac11a89534e8bf58375ad38301378d7",
      "parents": [
        "ad8e8bfea2da077248a9f217c029e14fefb01096"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Sep 15 12:42:32 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Sep 20 10:37:18 2011 -0700"
      },
      "message": "Properly connect to surface flinger in our shell tools\n\nAlso raise the layer to INT_MAX to float in front of the toolbar.\n\nChange-Id: I045a1c83924e6655f1734d15f2504b90312eec64\n"
    },
    {
      "commit": "d681bbb1767bed09415e050ba78975df214bcd68",
      "tree": "2030c617c61bbf7b6cd8c6bafab601a99b1ac83d",
      "parents": [
        "d942202ee0c92608c648735c3ad0f1bab4312420"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Aug 30 14:39:17 2011 +0100"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Sep 02 11:26:59 2011 +0100"
      },
      "message": "Require INTERNET permission for network-based content.\nBug #1870981\n\nChange-Id: Ia3ad166390c4d60cea19c3783895b078a2c4c15f\n"
    }
  ],
  "next": "9a442c1b9a051edc6d4ceb0daad2d0a8433e7b0b"
}
