)]}'
{
  "log": [
    {
      "commit": "fa74de2d0f633df0a88c69b8733c8deec85ac0ae",
      "tree": "4b7f8d85882eb025c5bed281e9b14bd19b797aaa",
      "parents": [
        "eed157dcfea88cc7b71524258a112ebf49ad7a05",
        "ceb83b8d8919dc778402bf610c073987d4f9f89b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 21:14:45 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 27 21:14:45 2013 +0000"
      },
      "message": "am ceb83b8d: Merge \"SoftAMR: Signal the right frame format\"\n\n* commit \u0027ceb83b8d8919dc778402bf610c073987d4f9f89b\u0027:\n  SoftAMR: Signal the right frame format\n"
    },
    {
      "commit": "eed157dcfea88cc7b71524258a112ebf49ad7a05",
      "tree": "f2688d81caa34807d5e17ce926d20c9d0543d63b",
      "parents": [
        "b99c5b8eebb35133a08c46b015624bd4c4a6c477",
        "ccf51ec41652a7e2db8cbee37bca91a95908d5ff"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 21:14:45 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 27 21:14:45 2013 +0000"
      },
      "message": "am ccf51ec4: Merge \"SoftVorbis: Set the right encoding in the port definition\"\n\n* commit \u0027ccf51ec41652a7e2db8cbee37bca91a95908d5ff\u0027:\n  SoftVorbis: Set the right encoding in the port definition\n"
    },
    {
      "commit": "8b5c4ec7bbf253eb704094ab6b04f58923f67994",
      "tree": "1abc45a9ded12752e9d2105129e852397702a5ac",
      "parents": [
        "2c86f533c622e175b3ed77f40216a0891f9cc785",
        "c073ba525404f3416c2824c435d3d926a9892f1b"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Feb 27 20:43:26 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 27 20:43:26 2013 +0000"
      },
      "message": "Merge \"camera_client: refactor Camera/ProCamera commonalities into BasicCamera\" into jb-mr2-dev"
    },
    {
      "commit": "ceb83b8d8919dc778402bf610c073987d4f9f89b",
      "tree": "84198308f5db6262b1222f0e0fd3d6eb8f220637",
      "parents": [
        "ccf51ec41652a7e2db8cbee37bca91a95908d5ff",
        "8298cd4d7e99648f277215bf981fdef78bc19e45"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 20:13:24 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 27 20:13:25 2013 +0000"
      },
      "message": "Merge \"SoftAMR: Signal the right frame format\""
    },
    {
      "commit": "ccf51ec41652a7e2db8cbee37bca91a95908d5ff",
      "tree": "64162e27cfb8569c4224bafe77b395335f51d346",
      "parents": [
        "801726efb2dcc6ea19e9f55c7c43fe41f0c6643e",
        "5c824472f7cec8a3634838f7d88ffa9ccc7fc8e6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 20:12:07 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 27 20:12:07 2013 +0000"
      },
      "message": "Merge \"SoftVorbis: Set the right encoding in the port definition\""
    },
    {
      "commit": "68189471332964a65f0d1f47cda7724c562c566d",
      "tree": "6edd7c2af8ccfa830e5b0b670df81686e6f03a56",
      "parents": [
        "ceb388d6c03c38b96dc41c0ea4804b749aa077c4",
        "801726efb2dcc6ea19e9f55c7c43fe41f0c6643e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 17:59:00 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 27 17:59:00 2013 +0000"
      },
      "message": "am 801726ef: Merge \"MPEG4Writer: Write a zero-length compressor string\"\n\n* commit \u0027801726efb2dcc6ea19e9f55c7c43fe41f0c6643e\u0027:\n  MPEG4Writer: Write a zero-length compressor string\n"
    },
    {
      "commit": "801726efb2dcc6ea19e9f55c7c43fe41f0c6643e",
      "tree": "547295c3a263dc005ae2cc1fca0bc1773fb5d4e2",
      "parents": [
        "c3afe5591a5c3a1aaf1cdcdeded75f6cff931569",
        "c30a88a273b47bef6728ae1dddea11641090939a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 27 16:53:21 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 27 16:53:21 2013 +0000"
      },
      "message": "Merge \"MPEG4Writer: Write a zero-length compressor string\""
    },
    {
      "commit": "b39f30b0a4902ea0f28454885785da4b2629fe25",
      "tree": "c4042ba7bf201f8d4ac726e876f30cc168f0d032",
      "parents": [
        "b4ac0ea6c45c04ac3e69d6b2243cfec58e858495",
        "ceb388d6c03c38b96dc41c0ea4804b749aa077c4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Feb 26 01:40:39 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 26 01:40:39 2013 +0000"
      },
      "message": "am ceb388d6: CameraService and Stagefright: Support AppOps\n\n* commit \u0027ceb388d6c03c38b96dc41c0ea4804b749aa077c4\u0027:\n  CameraService and Stagefright: Support AppOps\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": "2b56065a51c49a6235ac974c033c5751e8055869",
      "tree": "9542d497e722bfa9caa041ea6385d5e70ed6a754",
      "parents": [
        "99c2f923f6b04efffe949d1daf9cb7148e3cc201"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Fri Nov 23 19:00:07 2012 +0900"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Feb 25 09:01:01 2013 -0800"
      },
      "message": "Handles duplicated NAL start code to fix crash on HLS streams.\n\nSome youtube live streams are encoded having duplicated NAL start code,\nfor instance, 00 00 01 00 00 00 01 ....\n\nIn previous code, zero NAL size causes crash by CHECK_GT(nalsize, 0)\nmacro. With this patch, duplicated NAL start code will be just ignored.\n\nTESTED\u003dPlayed problematic Youtube Live streams.\n\nChange-Id: I1d76f111a34bd29cb09b037eb1b0626fe5f5b140\n"
    },
    {
      "commit": "feb2179f15bde8241814c8c35f8dace13a923ee7",
      "tree": "9d8e325d2d38e6366944f186008accea0fb123b5",
      "parents": [
        "fc900c922e219771d0cd3c075720d90026e1ca4a"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 20 16:47:28 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Feb 20 16:47:28 2013 -0800"
      },
      "message": "Permit conditional registry of mediaserver extensions\n\nChange-Id: I94dc0d038e702dfe1779a50a1de0fae9bad15057\n"
    },
    {
      "commit": "8298cd4d7e99648f277215bf981fdef78bc19e45",
      "tree": "35aae19be3c9cc90b9aaecd0d3b793c6abfdac1b",
      "parents": [
        "c3afe5591a5c3a1aaf1cdcdeded75f6cff931569"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Sun Feb 17 20:36:45 2013 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Sun Feb 17 20:39:14 2013 +0200"
      },
      "message": "SoftAMR: Signal the right frame format\n\nThe correct enum for the format used is OMX_AUDIO_AMRFrameFormatFSF,\nwhich is the same as is used in amrnb/enc/SoftAMRNBEncoder.cpp,\namrwbenc/SoftAMRWBEncoder.cpp and in OMXCodec and ACodec.\n\nThe OMX_AUDIO_AMRFrameFormatConformance enum refers to an odd file\nformat only used for conformance tests, not used in the wild.\n\nChange-Id: Idc395fc1d4969e33453522d6ec6526876438c526\n"
    },
    {
      "commit": "7aa1237287c43aca1c6bab776573062a66ebd154",
      "tree": "c5da7b394fa5fabd47befc52a45e093b99b667e6",
      "parents": [
        "ab89ac209fd1c3b0a2227168a48d7f3ae9bc43f3",
        "1a2952aee048ca7b1765e2bc09ebe9aeddaeafa3"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 15 22:05:59 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 15 22:05:59 2013 +0000"
      },
      "message": "Merge \"Refactoring: Rename SurfaceTextureClient to Surface\""
    },
    {
      "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": "ab89ac209fd1c3b0a2227168a48d7f3ae9bc43f3",
      "tree": "dda17a3e4149815397c7bef198e64bc81dee3552",
      "parents": [
        "05f625c46b992ab66b8d1527a366fe2746b4e3c7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 15 08:26:24 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 15 11:46:09 2013 -0800"
      },
      "message": "Remove FragmentedMP4Extractor\n\nMPEG4Extractor now supports fragmented mp4 files.\n\nChange-Id: I5659a51f4e5e4407a12535e69238fe3abffda7dc\n"
    },
    {
      "commit": "05f625c46b992ab66b8d1527a366fe2746b4e3c7",
      "tree": "d1279615e941531ec3a7d49f49469b32a836aae5",
      "parents": [
        "7deec82fbe9f73da5488a0ac4732122a505602cb"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Feb 13 09:27:28 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 15 10:03:04 2013 -0800"
      },
      "message": "Add support for fragmented mp4 to MPEG4Extractor\n\nThis makes FragmentedMP4Extractor obsolete. It will be removed in a\nseparate change.\n\nChange-Id: Ida74c07ccf84983e20a1320ee24ffc7a5c083859\n"
    },
    {
      "commit": "a7db81e243d33485eb0f6f5703b184d6a853fb87",
      "tree": "82b017a4c77a82fca62571eccaa3723ee93738d1",
      "parents": [
        "b4698f79230bbee15936641d951d49655f9e6da5",
        "f98ab74cdc06c1978762cb99d7b28061bc7d1044"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Feb 13 18:18:22 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 13 18:18:22 2013 +0000"
      },
      "message": "Merge \"Add OMX.google.vpx.encoder\""
    },
    {
      "commit": "f98ab74cdc06c1978762cb99d7b28061bc7d1044",
      "tree": "bbd3556267ecabf7f2646b54640439d067232546",
      "parents": [
        "cd27b0798f6abb34e464acc7c7e97e066cd3c6c7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 12 10:36:01 2013 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 12 17:26:42 2013 -0800"
      },
      "message": "Add OMX.google.vpx.encoder\n\nChange-Id: I843e6e542533884a94e105e1cb56f16f0440af61\n"
    },
    {
      "commit": "b4698f79230bbee15936641d951d49655f9e6da5",
      "tree": "062ab180ae7e2c918cbe9f7561c3ecc75d7ec407",
      "parents": [
        "cd27b0798f6abb34e464acc7c7e97e066cd3c6c7"
      ],
      "author": {
        "name": "Kunter Gultekin",
        "email": "kuntergultekin@google.com",
        "time": "Fri Feb 01 17:01:15 2013 +0200"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 12 17:24:04 2013 -0800"
      },
      "message": "Adds VPX encoding support for stagefright.\n\nOnly following encoder settings are available\n    - target bitrate\n    - rate control (constant / variable)\n    - frame rate\n    - token partitioning\n    - error resilience\n    - reconstruction \u0026 loop filters\n\nOnly following color formats are recognized\n    - YUV420Planar\n    - YUV420SemiPlanar\n    - AndroidOpaque\n\nFollowing settings are not configurable by the client\n    - encoding deadline is realtime\n    - the algorithm interface for encoder is vp8\n    - fractional bits of frame rate is discarded\n    - timebase is fixed to 1/1000000\n\nRequires libvpx to be built with encoder support enabled.\nRequires openmax 1.1.2 extension headers.\n\nRelevant tests exist in cts repo.\n\nChange-Id: I650f1aca83e7dc93f79d7e6cba7ac24f26e66d40\nSigned-off-by: Kunter Gultekin \u003ckuntergultekin@google.com\u003e\n"
    },
    {
      "commit": "4f1732b8068970b368a89271158ca29daf25650e",
      "tree": "0444520a23aa61553f9cf8bb67ee0f8127096b6a",
      "parents": [
        "272ab546940054ad7991bef4b3a36f15175721cd"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Feb 04 15:59:38 2013 -0800"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Tue Feb 12 11:10:12 2013 -0800"
      },
      "message": "Add the native MediaMuxer support.\n\nMediaAdapter: a helper class to convert the push model to pull model.\nMediaMuxer: the real muxer.\n\nbug:7991013\n\nChange-Id: If3b79551bc6332bc81f5c2740885e579a5c4abf9\n"
    },
    {
      "commit": "272ab546940054ad7991bef4b3a36f15175721cd",
      "tree": "32635746bbb3c6f4b4297754d0d388fae41c6574",
      "parents": [
        "513b8b238caa52f8ddf5c85109dbf362c515185f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 04 16:26:02 2013 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 11 10:13:00 2013 -0800"
      },
      "message": "Add support for querying if a stream is active remotely\n\nBug 7485803\n\nChange-Id: I0744374f130fd2dd0714102354cffed2fa915361\n"
    },
    {
      "commit": "513b8b238caa52f8ddf5c85109dbf362c515185f",
      "tree": "84ba4cbf3bbdd3630ba43bfc7c0f9e75a5a2fc92",
      "parents": [
        "41c71f20e71967f3205818103fa35c1aeefb3e83"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 08 18:16:02 2013 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 08 18:17:46 2013 -0800"
      },
      "message": "Revert \"Adds VPX encoding support for stagefright.\"\nThis lib was not part of the build, but it is built anyway for userdebug image (not for eng though).\nlet me revert it for now...\n\nThis reverts commit 6c6bb9873f55853fe74d8f45ad3ae116636d8be7.\n"
    },
    {
      "commit": "41c71f20e71967f3205818103fa35c1aeefb3e83",
      "tree": "189f4927694dd612b7c2a3bebad963351e65b73f",
      "parents": [
        "621eb7b975a77d9ff553705952235e3236b9c7e9",
        "6c6bb9873f55853fe74d8f45ad3ae116636d8be7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Feb 09 00:47:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 09 00:47:03 2013 +0000"
      },
      "message": "Merge \"Adds VPX encoding support for stagefright.\""
    },
    {
      "commit": "621eb7b975a77d9ff553705952235e3236b9c7e9",
      "tree": "84ba4cbf3bbdd3630ba43bfc7c0f9e75a5a2fc92",
      "parents": [
        "7e0b88bca060deb0cd499d528ff88ac9d4a7b954",
        "0a694951c00f2135c8968fd2205f71899997a8ad"
      ],
      "author": {
        "name": "Mike Lockwoood",
        "email": "lockwood@google.com",
        "time": "Fri Feb 08 21:51:43 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 08 21:51:43 2013 +0000"
      },
      "message": "Merge \"MTP: Write initial data to correct file offset in SendPartialObject\""
    },
    {
      "commit": "0a694951c00f2135c8968fd2205f71899997a8ad",
      "tree": "dfad37d49a5599e9e740a9563bb6310f2874e78e",
      "parents": [
        "92b2bbbb79eb89fe4262c354e8d183c2ba325111"
      ],
      "author": {
        "name": "Mike Lockwoood",
        "email": "lockwood@google.com",
        "time": "Fri Feb 08 13:25:01 2013 -0800"
      },
      "committer": {
        "name": "Mike Lockwoood",
        "email": "lockwood@google.com",
        "time": "Fri Feb 08 13:25:01 2013 -0800"
      },
      "message": "MTP: Write initial data to correct file offset in SendPartialObject\n\nChange-Id: I84288aeda3e65e6e6487f11d32a72910cd16cff2\n"
    },
    {
      "commit": "7e0b88bca060deb0cd499d528ff88ac9d4a7b954",
      "tree": "9d91ac59f85ff3db800abb9da5e9bda622d96661",
      "parents": [
        "26b0a9d007e77e088af9ff3810734728f0558e85",
        "a2eb22c1de262aa3fa7c356537ac2fe165afdf3d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 07 23:25:59 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 07 23:26:00 2013 +0000"
      },
      "message": "Merge \"Allow for dynamic reconfiguration of the video bitrate used\""
    },
    {
      "commit": "26b0a9d007e77e088af9ff3810734728f0558e85",
      "tree": "db2d5ec3573f66d90aaaa91f83fc1556245c9558",
      "parents": [
        "a0dd006834f4a424b67773ab6724e961a61de923"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 07 11:38:08 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 07 13:33:28 2013 -0800"
      },
      "message": "A few more patches to fix wfd tcp unicast transport.\n\nChange-Id: Ie2f1b1e56c487ac4c3ef19d9e79022a35084e042\n"
    },
    {
      "commit": "a2eb22c1de262aa3fa7c356537ac2fe165afdf3d",
      "tree": "f57c26037ae32118055eb48bb8ad8275faa55841",
      "parents": [
        "a0dd006834f4a424b67773ab6724e961a61de923"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 07 10:56:14 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Feb 07 10:56:14 2013 -0800"
      },
      "message": "Allow for dynamic reconfiguration of the video bitrate used\n\nto encode video while running as a wfd source.\n\nChange-Id: I44f7b2350c88fc5807047c61bfe594ef8fa79275\n"
    },
    {
      "commit": "6c6bb9873f55853fe74d8f45ad3ae116636d8be7",
      "tree": "ad9677a0baca6d473c02588587385bd1858d2614",
      "parents": [
        "a0dd006834f4a424b67773ab6724e961a61de923"
      ],
      "author": {
        "name": "Kunter Gultekin",
        "email": "kuntergultekin@google.com",
        "time": "Fri Feb 01 17:01:15 2013 +0200"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Feb 07 10:18:13 2013 -0800"
      },
      "message": "Adds VPX encoding support for stagefright.\n\nOnly following encoder settings are available\n    - target bitrate\n    - rate control (constant / variable)\n    - frame rate\n    - token partitioning\n    - error resilience\n    - reconstruction \u0026 loop filters\n\nOnly following color formats are recognized\n    - YUV420Planar\n    - YUV420SemiPlanar\n    - AndroidOpaque\n\nFollowing settings are not configurable by the client\n    - encoding deadline is realtime\n    - the algorithm interface for encoder is vp8\n    - fractional bits of frame rate is discarded\n    - timebase is fixed to 1/1000000\n\nRequires libvpx to be built with encoder support enabled.\nRequires openmax 1.1.2 extension headers.\n\nRelevant tests exist in cts repo.\n\nChange-Id: If759edb8db36acbd24dcb53d159a54e942766020\nSigned-off-by: Kunter Gultekin \u003ckuntergultekin@google.com\u003e\n"
    },
    {
      "commit": "a0dd006834f4a424b67773ab6724e961a61de923",
      "tree": "570bd3e2fcdfb325c214b6659c26e9f1baef5e3b",
      "parents": [
        "ba021d15cf7bc964bc813688e33d34845bfd89ea"
      ],
      "author": {
        "name": "Roger Jönsson",
        "email": "roger1.jonsson@sonymobile.com",
        "time": "Wed Jan 23 18:18:08 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 13:48:16 2013 -0800"
      },
      "message": "Avoid rebuffering after RTSP pause\n\nIf pausing an RTSP stream, an RTSP Pause request is sent and then\nif the stream is immediately resumed again, an RTSP Play request\nwill be sent to the server.\nBut the new data after the pause will not be buffered until\nSender Reports have arrived again on both channels.\nMeanwhile the player will resume playback and continue consuming\nthe already existing buffer.\nThis means that there is a risk that the buffer is emptied while\nwaiting for sender reports.\n\nThis commit simply adds a delay before the RTSP pause request is\nsent, allowing some additional RTSP buffering that might be needed\nwhen the stream is resumed again.\nAlso, if the stream is resumed again before the RTSP pause request\nis sent, there is no need for any RTSP pause request, hence it is\nomitted.\n\nChange-Id: I928c8bfb5e99a6a146dcda4e51e528973ecbe065\n"
    },
    {
      "commit": "ba021d15cf7bc964bc813688e33d34845bfd89ea",
      "tree": "8ae71eb381abe7a77d675563586f513efdd642cf",
      "parents": [
        "599b9655ddf95cdf6cb99970ce03c632bb2a576b"
      ],
      "author": {
        "name": "joakim johansson",
        "email": "joakim.c.johansson@sonyericsson.com",
        "time": "Wed Jan 23 17:18:56 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 13:45:28 2013 -0800"
      },
      "message": "EOS fixes for RTSP streams\n\nThe fix takes care of several near end of stream use cases:\nseek, pause and fake timestamps.\n\nChange-Id: I5f5fa881b1f619dfd5e1afd2af957082345c59eb\n"
    },
    {
      "commit": "599b9655ddf95cdf6cb99970ce03c632bb2a576b",
      "tree": "8a8230f39eaca8df1407c1a3d0dc65ee19f06549",
      "parents": [
        "fba60daf77cc74a13ae3bf4b0e9925dd2ee4470c"
      ],
      "author": {
        "name": "Måns Zigher",
        "email": "mans.zigher@sonyericsson.com",
        "time": "Wed Jan 23 14:48:57 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 13:41:17 2013 -0800"
      },
      "message": "RTSP: Parse session level control attribute from SDP\n\nIf a\u003dcontrol: is present at session-level in the SDP response,\nRFC2326:C.1.1 defines the URL to be used for aggregate commands.\nThis includes PLAY and PAUSE but not TEARDOWN.\n\nChange-Id: Iaa1dc2271d00df39dc83477a99fda6fbeb73c5b4\n"
    },
    {
      "commit": "fba60daf77cc74a13ae3bf4b0e9925dd2ee4470c",
      "tree": "03c491b66972ce99a18d60511843d37ff2a4a80a",
      "parents": [
        "b50e83eca302a12f0fced6e7bab1b8617d63deaa"
      ],
      "author": {
        "name": "Roger Jönsson",
        "email": "roger1.jonsson@sonymobile.com",
        "time": "Mon Jan 21 17:15:45 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 13:37:09 2013 -0800"
      },
      "message": "Enable pause/resume for RTSP streaming\n\nWhen a stream is paused, RTSP Pause is also sent to the server.\nOtherwise the buffering might continue until the memory runs out.\nWhen the stream is resumed, RTSP Play will be sent in order to\nresume the buffering.\n\nChange-Id: I5dc1761140827c532451638c3fd3f34271e5b9ab\n"
    },
    {
      "commit": "b50e83eca302a12f0fced6e7bab1b8617d63deaa",
      "tree": "58992eeb6e5b4edef4a76e180c4e99be694754d9",
      "parents": [
        "0df36ec3303c2c6bf9b42c07945ac8bd234153f3"
      ],
      "author": {
        "name": "Roger Jönsson",
        "email": "roger1.jonsson@sonymobile.com",
        "time": "Mon Jan 21 16:26:41 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 06 13:32:55 2013 -0800"
      },
      "message": "RTSP buffering improvements\n\nAdded buffering start and end notifications for RTSP.\nMEDIA_INFO_BUFFERING_START is sent when buffering is started\nand MEDIA_INFO_BUFFERING_END is sent when the buffer has\nfilled up.\n\nThis patch also adds RTSP end of stream handling.\nEOS is signalled when BYE is received OR when\ndetecting end of stream even if no actual EOS is received.\n\nChange-Id: I5cccb6845060ae6afd66d9f735b89da81476cd13\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": "ec0c597cabf169ca646bcea5faac1bd81ed4484d",
      "tree": "eb922e648c110d7593b145f37cd3ef09027b0f68",
      "parents": [
        "3c7f8b48fcae6f4b41b66c86008170166e43b428"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 14:47:13 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 15:27:16 2013 -0800"
      },
      "message": "RTSP now properly publishes its \"seekable\" flags after connection\n\nhas successfully completed and only then signals that preparation is\ncomplete.\n\nChange-Id: I1a60f718e673fe1462c69369c40eafbed6a14326\n"
    },
    {
      "commit": "3c7f8b48fcae6f4b41b66c86008170166e43b428",
      "tree": "f96f734b550e2461f4a67a5a4353792b1c82be75",
      "parents": [
        "198a893671ce80d951625fe328a92073306660d0",
        "9575c96b6e418914e2ffc6741ecc8d71e3968dbe"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 22:46:45 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 22:46:45 2013 +0000"
      },
      "message": "Merge \"Support for a \"preparation\" state that can take care of lengthy\""
    },
    {
      "commit": "9575c96b6e418914e2ffc6741ecc8d71e3968dbe",
      "tree": "1fafdf4d3150799cf9a4266919bf069b7f007c91",
      "parents": [
        "84ca0414fedea2dfe51607b422f6227e1c4f0d7f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 13:59:56 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 14:09:08 2013 -0800"
      },
      "message": "Support for a \"preparation\" state that can take care of lengthy\n\noperations in NuPlayer and its sources. Sources also can publish their\nflags now and the mediaplayer UI will be able to pick up on these.\n\nChange-Id: I4f2b7e5d105dcb4b6c9132cd0e8799efa0c6a14b\n"
    },
    {
      "commit": "198a893671ce80d951625fe328a92073306660d0",
      "tree": "065bd27a0fd5617eb638f379fb9f30bf6620f460",
      "parents": [
        "84ca0414fedea2dfe51607b422f6227e1c4f0d7f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 13:16:39 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 13:17:17 2013 -0800"
      },
      "message": "Fix a typo in MediaPlayerFactory that would prevent us from\n\nopting in to nuplayer for general media playback.\n\nChange-Id: I050f5178aadbb0b8bf422861ef885745c0b9006a\n"
    },
    {
      "commit": "84ca0414fedea2dfe51607b422f6227e1c4f0d7f",
      "tree": "eb58e3ec0c03c0f46e7a6e00b946cab78178b731",
      "parents": [
        "d62bb275f095d1a2e939a22e7eeaea42ac154bd4"
      ],
      "author": {
        "name": "Roger Jönsson",
        "email": "roger1.jonsson@sonymobile.com",
        "time": "Thu Jan 17 13:22:31 2013 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 10:50:06 2013 -0800"
      },
      "message": "Detect live streams\n\nThe information is used to decide on visibility of pause button and\nto handle the duration clock correctly.\n\nChange-Id: I286ac992fd171c7fc313e429326d38b6fc80e3fb\n"
    },
    {
      "commit": "d62bb275f095d1a2e939a22e7eeaea42ac154bd4",
      "tree": "dd895f6340cbfa966bc3cfc6c663f00705d69d22",
      "parents": [
        "f85f64f9e55fc104a0ac4e9b09680f2dfc836449",
        "7a33b7740412accf6a1cc912686c8d0acfb2a883"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 18:29:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 18:29:37 2013 +0000"
      },
      "message": "Merge \"Added HTTP support for SDP files.\""
    },
    {
      "commit": "7a33b7740412accf6a1cc912686c8d0acfb2a883",
      "tree": "42834eb348b13f8f059c119a64365fb7fc19f594",
      "parents": [
        "b5f25f005bc1d3ae35f45b58c88345e183dc336d"
      ],
      "author": {
        "name": "Oscar Rydhé",
        "email": "oscar.rydhe@sonyericsson.com",
        "time": "Mon Feb 20 10:15:48 2012 +0100"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 10:27:34 2013 -0800"
      },
      "message": "Added HTTP support for SDP files.\n\nAdded support for playing SDP files from http links. Previously,\nSDP files only worked when started from rtsp links\n(rtsp://a.b.c/abc.sdp), but they are just as common in http links.\n\npatch provided by \"Oscar Rydhé \u003coscar.rydhe@sonyericsson.com\u003e\"\n\nChange-Id: Ic73af3a9a002009dbe8b04c267a4621bf7fe2f46\n"
    },
    {
      "commit": "f85f64f9e55fc104a0ac4e9b09680f2dfc836449",
      "tree": "aa329c12d6e5f12f76ad6bdb0405e1df319f99c9",
      "parents": [
        "a0216af1a45b4c657a5801b766ec34a82fac1b3e",
        "b5f25f005bc1d3ae35f45b58c88345e183dc336d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 18:26:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 18:26:03 2013 +0000"
      },
      "message": "Merge \"Groundwork to support bidirectional, asynchronous communication\""
    },
    {
      "commit": "b5f25f005bc1d3ae35f45b58c88345e183dc336d",
      "tree": "4c8557d59ae426eb7dc7467d8bf799f059a4f30d",
      "parents": [
        "20ea4b429237f6845a833994bcee8f86791e8973"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 10:14:26 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 10:14:26 2013 -0800"
      },
      "message": "Groundwork to support bidirectional, asynchronous communication\n\nbetween NuPlayer and its sources.\n\nChange-Id: I1989022d806206b926555add3aa5c1fcf37aa78d\n"
    },
    {
      "commit": "a0216af1a45b4c657a5801b766ec34a82fac1b3e",
      "tree": "a07cdb30af5365237b9744c41279309490d18514",
      "parents": [
        "6bb6f2f9cba46aa2b853357a139ae5166c5b6713",
        "7cc0c29d6a7b76520ec588437ab51d5b8eac9ebc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 05 17:55:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 17:55:48 2013 +0000"
      },
      "message": "Merge \"Revive the code to support TCP interleaved transport\""
    },
    {
      "commit": "6bb6f2f9cba46aa2b853357a139ae5166c5b6713",
      "tree": "fa1dc25eb563ac4406ca4a7a0c8b87dbf64ece74",
      "parents": [
        "20ea4b429237f6845a833994bcee8f86791e8973",
        "a77c496d4520f25b7b337d32ebd9681d8ea0f7bb"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 05 17:39:04 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 05 17:39:04 2013 +0000"
      },
      "message": "Merge \"Return error code if setting scaling mode fails\""
    },
    {
      "commit": "a77c496d4520f25b7b337d32ebd9681d8ea0f7bb",
      "tree": "286d828a212c5b3040c072257cc49e0ab76865b0",
      "parents": [
        "3d6aa43575ae3342a93f88dd035f299e99554797"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 05 09:03:22 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 05 09:03:22 2013 -0800"
      },
      "message": "Return error code if setting scaling mode fails\n\nThe return code from native_window_set_scaling_mode() was ignored.\nLooking at the code review comments that introduced this code, it\nseems like the intention was to return the error code in that case.\n\nChange-Id: I9592cc378f0a0b960d37178aa0525fc17e8734ba\n"
    },
    {
      "commit": "20ea4b429237f6845a833994bcee8f86791e8973",
      "tree": "4c247e5ef0ced60db22f6002a5b02359c5559323",
      "parents": [
        "59686720182dcaa1a1a4757964df38c16f1a5246",
        "2fa05230219f72118388f3a350b1239db1299647"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 04 18:18:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 04 18:18:48 2013 +0000"
      },
      "message": "Merge \"Remove a few unused header includes from PlaybackSession.cpp\""
    },
    {
      "commit": "2fa05230219f72118388f3a350b1239db1299647",
      "tree": "d663d5876d9764c797ff14529948a099c2f5fd7c",
      "parents": [
        "3d6aa43575ae3342a93f88dd035f299e99554797"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 30 13:31:59 2013 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Feb 01 17:29:07 2013 -0800"
      },
      "message": "Remove a few unused header includes from PlaybackSession.cpp\n\nChange-Id: Id3147e2f2d5d75ccc172e67802639cd43ed68870\n"
    },
    {
      "commit": "7cc0c29d6a7b76520ec588437ab51d5b8eac9ebc",
      "tree": "80a3b23e12bc27b452d6e037bcbe7055e5394a02",
      "parents": [
        "08aa0bc912696ba22c10a3429b51b04c21c02944"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 01 11:43:44 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 01 11:43:44 2013 -0800"
      },
      "message": "Revive the code to support TCP interleaved transport\n\nAlso support non-interleaved transport now, but the sink gets to decide\nwhat mode it wants to run in, _not_ the source.\n\nChange-Id: I3b6057f86871084e4decf930bb4a7a2d7517b0f2\n"
    },
    {
      "commit": "08aa0bc912696ba22c10a3429b51b04c21c02944",
      "tree": "7aab7c050d5168430f1ceee12f7c9ab82b8712ea",
      "parents": [
        "9e58b552f51b00b3b674102876bd6c77ef3da806",
        "aa65ddb06862fa542c9ec8d556bd3e01bf4c32b2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Feb 01 16:35:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 01 16:35:11 2013 +0000"
      },
      "message": "Merge \"Fix typo and reduce allocation overhead of RTP retransmission requests.\""
    },
    {
      "commit": "a416756864e2c7750d59d967ec2185532fa5c2e0",
      "tree": "8eaae79c575fa6925b9f279adcab5dd8911653da",
      "parents": [
        "92b2bbbb79eb89fe4262c354e8d183c2ba325111",
        "6f1c1918d0dfece10f728711b055441e4d135c73"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 01 00:39:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 01 00:39:48 2013 +0000"
      },
      "message": "Merge \"Add media.log service based on NBLog\""
    },
    {
      "commit": "aa65ddb06862fa542c9ec8d556bd3e01bf4c32b2",
      "tree": "4d4384b0461c336983347911666e9c26d186aadc",
      "parents": [
        "3d6aa43575ae3342a93f88dd035f299e99554797"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 31 15:25:07 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jan 31 15:25:07 2013 -0800"
      },
      "message": "Fix typo and reduce allocation overhead of RTP retransmission requests.\n\nChange-Id: I402a195da5dfeceadb4d073888ee7702c5532dc8\n"
    },
    {
      "commit": "5c824472f7cec8a3634838f7d88ffa9ccc7fc8e6",
      "tree": "86d6c06bb24209e147f0230e57e03e41f79ed7f2",
      "parents": [
        "12834fe289e8173e94f31603fa6d313abe56ad70"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Jan 30 21:12:58 2013 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 31 11:27:40 2013 +0200"
      },
      "message": "SoftVorbis: Set the right encoding in the port definition\n\nPreviously, it set the encoding type to AAC, which is just a typo.\n\nChange-Id: I2dcae1f579e9feb0b35b6f5d334028c534275042\n"
    },
    {
      "commit": "c30a88a273b47bef6728ae1dddea11641090939a",
      "tree": "10166c7cc56d4479b37c1fb3b8cd509699dcd5bc",
      "parents": [
        "12834fe289e8173e94f31603fa6d313abe56ad70"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Jan 30 18:45:30 2013 +0200"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 31 11:22:35 2013 +0200"
      },
      "message": "MPEG4Writer: Write a zero-length compressor string\n\nThe first byte is the number of bytes in the string to display,\nthe rest is the actual string (see ISO/IEC 14496-12:2008 page 29,\ncompressorname in VisualSampleEntry) to display. Currently, all 31\nspace characters are displayed in certain players (such as Apple\nQuickTime Player) instead of the plain codec name (e.g. \"H.264\").\nBy writing the string length properly, the actual content of the\nremaining 31 bytes is ignored instead of displayed.\n\nChange-Id: I7f93a8966d74a4e86abc46c3dcb70f71780d9cd6\n"
    },
    {
      "commit": "3d6aa43575ae3342a93f88dd035f299e99554797",
      "tree": "457c9994632ea32728c854fd187d90eb43bc1e09",
      "parents": [
        "a6a88d9c445e261972c2433254e0a996336e78a4",
        "0fcdb7271e1a25bc501ead6093ab1ae2667fdd47"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 30 21:33:23 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 30 21:33:23 2013 +0000"
      },
      "message": "Merge \"Actually display something on screen when instantiating a wfd sink via\""
    },
    {
      "commit": "0fcdb7271e1a25bc501ead6093ab1ae2667fdd47",
      "tree": "6c41167d4c37e13cf90b027450dfe99a397e5f41",
      "parents": [
        "1bd947a7c99853ad4ee67d59db89524be1e5acfc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 30 11:35:39 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 30 11:35:39 2013 -0800"
      },
      "message": "Actually display something on screen when instantiating a wfd sink via\n\nthe wfd commandline tool.\n\nChange-Id: I26466efb95a5837a14d77d6581e0777038d31d95\n"
    },
    {
      "commit": "a6a88d9c445e261972c2433254e0a996336e78a4",
      "tree": "3bcb34c468d9f0f525fb68dbb237e5b709a03465",
      "parents": [
        "1bd947a7c99853ad4ee67d59db89524be1e5acfc"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 30 10:41:25 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jan 30 10:41:25 2013 -0800"
      },
      "message": "Plumbing to reflect minor changes in the HDCP module API that allow for\n\nsupport of _decryption_ modules in addition to what we already supported.\n\nChange-Id: Ic37b87dc170ba8def3817991d25df798f21e950b\n"
    },
    {
      "commit": "1bd947a7c99853ad4ee67d59db89524be1e5acfc",
      "tree": "6453bb241eb48b994605d43ad835047a8da31ab3",
      "parents": [
        "f96774ecd7ebff4d7cfa2516d5c92293a35e9aa3",
        "94a483bf2bd699275673d9cd57cb125d48572f30"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 29 18:32:23 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 29 18:32:23 2013 +0000"
      },
      "message": "Merge \"Squashed commit of the following:\""
    },
    {
      "commit": "f96774ecd7ebff4d7cfa2516d5c92293a35e9aa3",
      "tree": "4cbd67dec405c660031260078cbcf562d19df791",
      "parents": [
        "70e6cb33c82b4dc087e8aa91d0bf8d7ea367d5e9",
        "0f6675d5fdf15d4b8765545fb6a351138acccdf6"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 29 18:30:54 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 29 18:30:54 2013 +0000"
      },
      "message": "Merge \"ACodec Fix.\""
    },
    {
      "commit": "94a483bf2bd699275673d9cd57cb125d48572f30",
      "tree": "3896a7d6691cdae1607bd87dff011f53ef5aea3b",
      "parents": [
        "2d45dbd1910a7e51d383e8583017e6f26cd3498a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 29 09:22:16 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jan 29 10:30:47 2013 -0800"
      },
      "message": "Squashed commit of the following:\n\ncommit f2c38e5cf8cee3b597c744c9d6a9c0969ac8599a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Jan 28 16:33:07 2013 -0800\n\n    Proper support for video format selection/negotiation.\n\n    Change-Id: I7db86cef939d63b8064be1c74de9ad78e85d45d9\n\ncommit 488023b7bad086692ffe942114fa3cc0e59a16c0\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Jan 28 11:21:23 2013 -0800\n\n    Sink now notifies clients once it is disconnected.\n\n    Change-Id: I2f0a458ef1ec30dda1272ad5a013fee4ee70edc9\n\ncommit 783932e40dd904aa531c263ad51280d9ca814dcb\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 18 15:03:40 2012 -0800\n\n    Alternative DirectRenderer implementation.\n\n    Change-Id: I307beb913d7a61cb938bcb02696cc2e82d2b8b07\n\ncommit 1935cc9a87824aea71fc8ebe2162f62ec634ce5a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Dec 18 10:24:27 2012 -0800\n\n    Experimenting with wifi sink timing.\n\n    Change-Id: I059bae9762cf11777666988a8b4ab2012b5807be\n\ncommit a859ee1eadd6a1d6a080667917e8b102c3770d61\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 15 11:16:30 2012 -0800\n\n    wfd sink update.\n\n    Change-Id: I026dfc580be92aa40dbbe7c1bc061fadf3b08be8\n\nChange-Id: I191d3d7015869ca99254d813d074328fb5b2f479\n"
    },
    {
      "commit": "0f6675d5fdf15d4b8765545fb6a351138acccdf6",
      "tree": "b406517c6ad66a8264b85dbe8eafd93f7d61d650",
      "parents": [
        "2d45dbd1910a7e51d383e8583017e6f26cd3498a"
      ],
      "author": {
        "name": "SeungBeom Kim",
        "email": "sbcrux.kim@samsung.com",
        "time": "Wed Jan 16 15:34:00 2013 +0900"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jan 28 12:22:30 2013 -0800"
      },
      "message": "ACodec Fix.\n\nBug: 7961269\n\nChange-Id: Ie12530f89dd96dbce82e873de0c2310490390c34\nSigned-off-by: SeungBeom Kim \u003csbcrux.kim@samsung.com\u003e\n"
    },
    {
      "commit": "6f1c1918d0dfece10f728711b055441e4d135c73",
      "tree": "e82c0166e895f9c61c11ff0800d2871298e63b30",
      "parents": [
        "11d8dfcc063425ae7d59229f54b6752fd8987c10"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 18 15:31:41 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 25 15:12:14 2013 -0800"
      },
      "message": "Add media.log service based on NBLog\n\nChange-Id: Ie45093df6ac9a739d05c8d408fab52a9a8a27e7f\n"
    },
    {
      "commit": "11d8dfcc063425ae7d59229f54b6752fd8987c10",
      "tree": "246288e94716d9f9ba17c078cdfe93831fd7e888",
      "parents": [
        "0bf43848adb00922122b0a0eed2fa0318bde8317"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 14 14:53:13 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 25 15:01:24 2013 -0800"
      },
      "message": "Add non-blocking event logger NBLog\n\nChange-Id: I6c136cf3d7f46a8af84c69ecfc199dab394c10dc\n"
    },
    {
      "commit": "2a330d6cbb25f0cdd6208aeee53b4a3b88dae3b0",
      "tree": "ee5cf0c2ca89c31227b665448c426980d699c209",
      "parents": [
        "5faf610fa384a81dbefb7ac67d2452216e3acead"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 18 15:17:05 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 18 15:24:49 2013 -0800"
      },
      "message": "Remove obsolete audioflinger reference\n\nChange-Id: I9ae754c908f3b0102c3828c71d6f542851a74341\n"
    },
    {
      "commit": "2ba042ff8a8bb5aa0320580119771e11e64ba2cd",
      "tree": "830261e009471e01dc99cbafdbb6e5e5ed7d0170",
      "parents": [
        "2e4664677d72ce54201d3fd0beb0e10280add93c"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Tue Sep 25 20:22:25 2012 +0900"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jan 17 14:33:21 2013 -0800"
      },
      "message": "Bug fix: set \u0027und\u0027 as default metadata language info for srt.\n\no Previously, it leaves language code empty and it is inconsistent with\n  other code which gives \u0027und\u0027. As a result, selected SRT track returned\n  empty language info. With this fix, it returns \u0027und\u0027.\n\nBug: 7227230\n\nTESTED\u003druntest -d cts-media -c android.media.cts.MediaPlayerTest -m\ntestGetTrackInfo\n\nChange-Id: I225848f029637dd782c376e0d770dddd5c849550\n"
    },
    {
      "commit": "2e4664677d72ce54201d3fd0beb0e10280add93c",
      "tree": "7368a987e0b7a636791798fe22da6b7370b9ce1c",
      "parents": [
        "7ac90e913d96e49e636b02f2c3984c71080dafff"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jan 10 14:26:24 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jan 10 14:52:24 2013 -0800"
      },
      "message": "Fix AudioRecord\n\nBug: 7965744\nChange-Id: Ic024e7fb32f7459b8093c2cf6cd5752aade21ddb\n"
    },
    {
      "commit": "a589764c3c0617c7a8996e929ce2d6db1cc01d77",
      "tree": "f4e107e86ab093909990bfa02ff9c67b09044085",
      "parents": [
        "f78f2629f5f6f5fc37a2089a85107fed97f12192"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 04 16:57:33 2013 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jan 04 16:59:27 2013 -0800"
      },
      "message": "Fix bug in AudioRecord() constructor\n\nIt was calling set() with wrong parameter list.\nThis goes back to commit be916aa1267e2e6b1c148f51d11bcbbc79cb864c from 2010.\n\nChange-Id: I2f6917765baf58260bf35e89a2cc59c199734ff6\n"
    },
    {
      "commit": "6f90c2b99cc6ec90c0e9a175d795edaf22f9d5bd",
      "tree": "46753e1e575eff85921b9701089c40f6f7fb85ef",
      "parents": [
        "d5681bc9a38fe4cd1d591e6ae62b9c68fb851041",
        "cd2d263116576dc9770d31bb792e7cf2d6840b53"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 28 09:46:54 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 28 09:46:54 2012 -0800"
      },
      "message": "am cd2d2631: am b54cedab: Merge \"Use default values when MPEG4 audio config parsing fails.\"\n\n* commit \u0027cd2d263116576dc9770d31bb792e7cf2d6840b53\u0027:\n  Use default values when MPEG4 audio config parsing fails.\n"
    },
    {
      "commit": "d5681bc9a38fe4cd1d591e6ae62b9c68fb851041",
      "tree": "88d51865d4e4f98d05408975762b85894050e6b7",
      "parents": [
        "49d24d3fcd01aef0ec1fa4abd9c1b85473f64c0f",
        "e3aa659e9cee7df5c12a80d285cc29ab3b2cbb39"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Dec 21 15:04:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 21 15:04:30 2012 -0800"
      },
      "message": "Merge \"Start isolating control block accesses in a proxy\""
    },
    {
      "commit": "cd2d263116576dc9770d31bb792e7cf2d6840b53",
      "tree": "e5295b8e0efb8a7233c398aabfa0fc18da9b70cb",
      "parents": [
        "9c891ca36a7f2acecd70d41ff39a2025048bb0b1",
        "b54cedabdf0261211241e2f3af09c75cffd911ed"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Dec 21 10:05:52 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 21 10:05:52 2012 -0800"
      },
      "message": "am b54cedab: Merge \"Use default values when MPEG4 audio config parsing fails.\"\n\n* commit \u0027b54cedabdf0261211241e2f3af09c75cffd911ed\u0027:\n  Use default values when MPEG4 audio config parsing fails.\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": "b54cedabdf0261211241e2f3af09c75cffd911ed",
      "tree": "4a6ec04010d7c3a7f4b341131ba50612bc36658e",
      "parents": [
        "2a55b5964c6ae167cc1bc57eca5ca7a1c4aa452c",
        "8af5fe5a2431522a7d30bc546dcd31c0c64db70c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 20 18:25:12 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 20 18:25:12 2012 -0800"
      },
      "message": "Merge \"Use default values when MPEG4 audio config parsing fails.\""
    },
    {
      "commit": "e21c339f8aea46f6d406ccff61828e26b1689435",
      "tree": "384e645aa722f623123d150cd65cde8ad0239f1d",
      "parents": [
        "ceabf0acaefeaf2696ca071dec92da607cd52758",
        "c8e07e483c116ecaca1c9c6991588607f1187b75"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 20 13:58:31 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 20 13:58:32 2012 -0800"
      },
      "message": "Merge \"Properly release any MediaBuffer references associated with the\""
    },
    {
      "commit": "c8e07e483c116ecaca1c9c6991588607f1187b75",
      "tree": "4f9ca0290687f3885b852eeeda210086bcd8944d",
      "parents": [
        "0fd58c9758d2083915864d3cc63df7495b497e52"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 20 13:49:34 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Dec 20 13:49:34 2012 -0800"
      },
      "message": "Properly release any MediaBuffer references associated with the\n\nencoder input buffers on shutdown. This worked fine before for an orderly\nshutdown but didn\u0027t release all references in case of error.\n\nChange-Id: I0ea3eb26da76fbeb33cadf58d237b0c68a86ac4a\nrelated-to-bug: 7893090\n"
    },
    {
      "commit": "ceabf0acaefeaf2696ca071dec92da607cd52758",
      "tree": "4b794692410fe4dab2587cd2db14aea263e2d73c",
      "parents": [
        "e6b94a3328a3a72ccdbc4957a9dcae43c79064ed",
        "4c44e9fed87ff6363393f2559b150291242da247"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 20 13:07:07 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 20 13:07:08 2012 -0800"
      },
      "message": "Merge \"Ensure proper EOS behavior\""
    },
    {
      "commit": "4c44e9fed87ff6363393f2559b150291242da247",
      "tree": "3082997c20ed056ec25f71496a3c7a6a337a1a4e",
      "parents": [
        "0ebf429406d796df74f781dfe085ee73851fe2a1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 20 11:19:49 2012 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 20 11:19:49 2012 -0800"
      },
      "message": "Ensure proper EOS behavior\n\nIf a buffer is tagged with EOS but has data in it, decode that data\ninstead of ignoring it.\n\nChange-Id: Ie41c8485c3ad7fe7d9c64f0752c2e7601d91d602\n"
    },
    {
      "commit": "e6b94a3328a3a72ccdbc4957a9dcae43c79064ed",
      "tree": "d580f2e13a3fc3634e7c23db1f44b4d95cade75b",
      "parents": [
        "0fd58c9758d2083915864d3cc63df7495b497e52",
        "68c3de899f822acf3c735c681d206e852ad3821f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Thu Dec 20 11:07:09 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 20 11:07:09 2012 -0800"
      },
      "message": "am 68c3de89: am df9cce64: Merge \"Allow multichannel FLAC files\"\n\n* commit \u002768c3de899f822acf3c735c681d206e852ad3821f\u0027:\n  Allow multichannel FLAC files\n"
    },
    {
      "commit": "68c3de899f822acf3c735c681d206e852ad3821f",
      "tree": "13af0c7b66e9124d974eedb8a5fd8442c004ba47",
      "parents": [
        "9435b498123f3e22532391c30eb42c336bf743ec",
        "df9cce649d9ac1f4446f613c54191e7c4d646f07"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Thu Dec 20 11:03:48 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 20 11:03:48 2012 -0800"
      },
      "message": "am df9cce64: Merge \"Allow multichannel FLAC files\"\n\n* commit \u0027df9cce649d9ac1f4446f613c54191e7c4d646f07\u0027:\n  Allow multichannel FLAC files\n"
    },
    {
      "commit": "0fd58c9758d2083915864d3cc63df7495b497e52",
      "tree": "4b643a4a10f451e1b88531d496fce14bb2d43f48",
      "parents": [
        "7cd2dd3ae3278a50396886cf0b5c9a1277601816",
        "89b629b398e87095cf262692f4e476d605fe87ed"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Dec 20 08:58:04 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 20 08:58:05 2012 -0800"
      },
      "message": "Merge \"Fix bug with discarded AudioRecord::read count\""
    },
    {
      "commit": "df9cce649d9ac1f4446f613c54191e7c4d646f07",
      "tree": "2ba7a6b79a0e10e2610d42d4a4f6d31c6a53b7c7",
      "parents": [
        "f38259cfe5566914a49f5b0f8b11aa6a951d667a",
        "1db91aff064ca986dc4eb14e1722de1b7f18add9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Thu Dec 20 07:30:41 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 20 07:30:42 2012 -0800"
      },
      "message": "Merge \"Allow multichannel FLAC files\""
    },
    {
      "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": "534f712969d647b2e7a040581ac148e03ffa7585",
      "tree": "80186396186f5563116dd88c4b787fbcfb54a50f",
      "parents": [
        "6a695f176fcf758a68bc23f201e4615c37206369",
        "7b670d4a0a4fa560f536f132e0a3fc7247f6724c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 18 15:21:28 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 15:21:28 2012 -0800"
      },
      "message": "Merge \"Fix memory leakage from MPEG4Writer.\""
    },
    {
      "commit": "6a695f176fcf758a68bc23f201e4615c37206369",
      "tree": "99f0c8b4f04ad25c63c21a3ab7c7d7be9c513774",
      "parents": [
        "0ebf429406d796df74f781dfe085ee73851fe2a1",
        "8ba01021b573889802e67e029225a96f0dfa471a"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Tue Dec 18 15:21:20 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 15:21:21 2012 -0800"
      },
      "message": "Merge \"Rename ISurfaceTexture and SurfaceTexture\""
    },
    {
      "commit": "0ebf429406d796df74f781dfe085ee73851fe2a1",
      "tree": "d69793e89f361ce400a71e57e50858f13cb67e30",
      "parents": [
        "6fc72b01a3b67903b52f1d33b1ad5c960b5365f1",
        "21ad778dcfcddb8f8fd9dc3fe4992fbef246c511"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 18 15:17:33 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 15:17:33 2012 -0800"
      },
      "message": "Merge \"Report buffer size even when using hardware buffers\""
    },
    {
      "commit": "6fc72b01a3b67903b52f1d33b1ad5c960b5365f1",
      "tree": "329c9f306defb16fb17e085af0596bb9a6be4718",
      "parents": [
        "53bc0a2fc54330534330118edd5c393f39eff8ab"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Dec 17 16:35:08 2012 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 18 15:16:00 2012 -0800"
      },
      "message": "Make codecs reconfigurable\n\nChange-Id: I3dd46cb4401493becbf6152f4dcd5a8f1e9a0b44\n"
    },
    {
      "commit": "21ad778dcfcddb8f8fd9dc3fe4992fbef246c511",
      "tree": "822561fb2ee0322685afafddcf0d9f1d1996ad2f",
      "parents": [
        "53bc0a2fc54330534330118edd5c393f39eff8ab"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 18 12:28:27 2012 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 18 14:46:11 2012 -0800"
      },
      "message": "Report buffer size even when using hardware buffers\n\nThis makes it so that the buffers dequeued from a MediaCodec show\na non-zero size when there\u0027s actually data in them, which allows\nthe caller to distinguish between a valid frame and an empty buffer.\n\nChange-Id: I891b2301501e26f0b4e8cf2e24c169e501a6d026\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": "7b670d4a0a4fa560f536f132e0a3fc7247f6724c",
      "tree": "0eb7cf6ec487730cb95855aafbfcde8c54ee1e6d",
      "parents": [
        "efc0cfb61e34c3bc688a7cbcc1ccef23922251c1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 13 18:58:38 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 18 11:14:02 2012 -0800"
      },
      "message": "Fix memory leakage from MPEG4Writer.\n\no The in-memory cache, mMoovBoxBuffer, holding the content for Moov box may not be freed.\no Added comment describing how the in-memory cache works\no Moved the memory release to a single place to make the code more robust\no Avoided allocating the in-memory cache if the file is not intended to be streamable\n\no related-to-bug: 7664029\n\nChange-Id: If04fc6b12daeaaa86710dfb4b4b9c175da6421df\n"
    },
    {
      "commit": "89b629b398e87095cf262692f4e476d605fe87ed",
      "tree": "c31e756185bc90379f70710ffe9b16ae34b2d470",
      "parents": [
        "66c8dd24358a08a59944e9fc13d686e0ff91eee9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Dec 17 11:44:20 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Dec 17 17:26:44 2012 -0800"
      },
      "message": "Fix bug with discarded AudioRecord::read count\n\nFormerly, if an AudioRecord::read() got a timeout on obtainBuffer()\nafter already successfully transferring some data, then it returned zero.\nThis had the effect of discarding a partial transfer, which resulted in\na gap in the audio data delivered to the app.  Now if a timeout occurs\nafter a partial transfer, it returns that partial transfer count so that\nno data is lost.\n\nChange-Id: I0d9c2f4e495a400b56ef916a06613ba26537ca97\n"
    },
    {
      "commit": "53bc0a2fc54330534330118edd5c393f39eff8ab",
      "tree": "6395766b32c5492ca1addc4bba142b7865423969",
      "parents": [
        "66c8dd24358a08a59944e9fc13d686e0ff91eee9",
        "9435b498123f3e22532391c30eb42c336bf743ec"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Mon Dec 17 13:20:30 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 17 13:20:30 2012 -0800"
      },
      "message": "am 9435b498: am f38259cf: Merge \"Fix bug in WAVExtractor for 24-bit per sample wav\"\n\n* commit \u00279435b498123f3e22532391c30eb42c336bf743ec\u0027:\n  Fix bug in WAVExtractor for 24-bit per sample wav\n"
    },
    {
      "commit": "9435b498123f3e22532391c30eb42c336bf743ec",
      "tree": "e6e4af4d00306a92002f435fcc3a9cb8f94a0a1f",
      "parents": [
        "442e29ef408f2cd32610988b52be6e06e11e4de2",
        "f38259cfe5566914a49f5b0f8b11aa6a951d667a"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Mon Dec 17 13:18:08 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 17 13:18:08 2012 -0800"
      },
      "message": "am f38259cf: Merge \"Fix bug in WAVExtractor for 24-bit per sample wav\"\n\n* commit \u0027f38259cfe5566914a49f5b0f8b11aa6a951d667a\u0027:\n  Fix bug in WAVExtractor for 24-bit per sample wav\n"
    },
    {
      "commit": "f38259cfe5566914a49f5b0f8b11aa6a951d667a",
      "tree": "adf8844f33a15f6bd2d7ddf5ff3dc5e34a1309b2",
      "parents": [
        "0cd75629a8f7a6bd47b2abc6dd8d9f66e70d76a4",
        "9b1797fed7065be05f8fb7a36d1a27e0df3cb7ab"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Mon Dec 17 12:29:06 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 17 12:29:06 2012 -0800"
      },
      "message": "Merge \"Fix bug in WAVExtractor for 24-bit per sample wav\""
    },
    {
      "commit": "dc42966de62acc48f88183a50686717d8d8be9a4",
      "tree": "89cf2a107096cb6e23c8d80d8c8103355ab353e3",
      "parents": [
        "ef3d158d102b64513ebb0707b49eb99566b067a6",
        "34d2f10908526cf3011d6c167a5817522b5a24d7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 14 16:49:01 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 14 16:49:01 2012 -0800"
      },
      "message": "am 34d2f109: am 409542cd: Merge \"FileSource: FILE is not closed\"\n\n* commit \u002734d2f10908526cf3011d6c167a5817522b5a24d7\u0027:\n  FileSource: FILE is not closed\n"
    },
    {
      "commit": "442e29ef408f2cd32610988b52be6e06e11e4de2",
      "tree": "80e3436ce9cc78cb62f2bb676e810f6133b19e0b",
      "parents": [
        "34d2f10908526cf3011d6c167a5817522b5a24d7",
        "0cd75629a8f7a6bd47b2abc6dd8d9f66e70d76a4"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Dec 14 15:25:22 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 14 15:25:22 2012 -0800"
      },
      "message": "am 0cd75629: Merge \"Match new paths and organization in external/libvpx\"\n\n* commit \u00270cd75629a8f7a6bd47b2abc6dd8d9f66e70d76a4\u0027:\n  Match new paths and organization in external/libvpx\n"
    },
    {
      "commit": "34d2f10908526cf3011d6c167a5817522b5a24d7",
      "tree": "96a6458583d26185b66a997b0ad19d92e6104066",
      "parents": [
        "761430930a7335d714af0f7c1d497feb8f9f0a5a",
        "409542cdaf72d8983043f2746d9d916ee1566a80"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 14 15:25:21 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 14 15:25:21 2012 -0800"
      },
      "message": "am 409542cd: Merge \"FileSource: FILE is not closed\"\n\n* commit \u0027409542cdaf72d8983043f2746d9d916ee1566a80\u0027:\n  FileSource: FILE is not closed\n"
    },
    {
      "commit": "ef3d158d102b64513ebb0707b49eb99566b067a6",
      "tree": "21376a839d7306d27b3684debc7e690c6c0baec9",
      "parents": [
        "6b3efc8b88ca53fee5d3cfb373f715acb7d29123"
      ],
      "author": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Fri Dec 14 13:49:48 2012 -0800"
      },
      "committer": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Fri Dec 14 13:50:40 2012 -0800"
      },
      "message": "SurfaceMediaSource: wait on fence from acquired buffers\n\nChange-Id: I4ab93a4adeec536648258c70a7d943503d9b10f4\nSigned-off-by: Greg Hackmann \u003cghackmann@google.com\u003e\n"
    },
    {
      "commit": "0cd75629a8f7a6bd47b2abc6dd8d9f66e70d76a4",
      "tree": "732236d77f58318fd018af3eb0b53e41ad514abc",
      "parents": [
        "409542cdaf72d8983043f2746d9d916ee1566a80",
        "a20fc62f23263c4220c1a14eb6a37165f7cdf327"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Dec 14 12:48:41 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 14 12:48:42 2012 -0800"
      },
      "message": "Merge \"Match new paths and organization in external/libvpx\""
    },
    {
      "commit": "442d83cfb731bc0a8d1bb2d41ecd242ec498893f",
      "tree": "aaf0867103ecccd508f198b3d83db6c959dcd715",
      "parents": [
        "03425d9cf7f22cf400c13cda60d3e91f0fd48d6e"
      ],
      "author": {
        "name": "You Kim",
        "email": "you.kim72@gmail.com",
        "time": "Fri Dec 14 22:22:36 2012 +0900"
      },
      "committer": {
        "name": "You Kim",
        "email": "you.kim72@gmail.com",
        "time": "Fri Dec 14 22:22:36 2012 +0900"
      },
      "message": "FileSource: FILE is not closed\n\nAdd destructor to call fclose.\n\nChange-Id: I765c56236f8df58af998439492b0b955ab57606f\n"
    },
    {
      "commit": "6b3efc8b88ca53fee5d3cfb373f715acb7d29123",
      "tree": "2835dfa1a41416a3d17cc513f71354f4302ff842",
      "parents": [
        "8cade496e47fc7d8f01e286579a5db15b85c59cc",
        "8c95fa91fff6e8726df03598d52243f22e5ff8e7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 11:23:09 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 13 11:23:10 2012 -0800"
      },
      "message": "Merge \"Signal that IDR frames are sync frames\""
    }
  ],
  "next": "8c95fa91fff6e8726df03598d52243f22e5ff8e7"
}
