)]}'
{
  "log": [
    {
      "commit": "be837c328ae1ea2b193d05aaa3d4214c263b5b77",
      "tree": "e57cdef76f6936c4506d270dff4f59d72d202528",
      "parents": [
        "d6e7f1e1f8b1dfa6a87c7c0b1a5c68d435096b01"
      ],
      "author": {
        "name": "seunghak.han",
        "email": "seunghak.han@lge.com",
        "time": "Sat Nov 22 15:22:35 2014 +0900"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Dec 05 10:52:34 2014 -0800"
      },
      "message": "Track volume should be maintained even if track is restored\n\nIf track is restored when it set its volume to a non-unity value (such as mute),\nthe volume was forced to unity again.  Now, the previous volume is restored.\n\nBug: 18570664\nChange-Id: I79f34c6c7d6f535baba813fd3b8ba8e55cac8ad7\n"
    },
    {
      "commit": "d6e7f1e1f8b1dfa6a87c7c0b1a5c68d435096b01",
      "tree": "33fd881be3965b2e670b5cbf08abe4dac768cb69",
      "parents": [
        "b65842dd9447a7925046b2285b2aa8459dc63ed3",
        "47d4c9a4d53ed014b520edbda2edc3e280efb8a5"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Fri Dec 05 13:46:58 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 13:46:58 2014 +0000"
      },
      "message": "Merge \"Fix for AOSP force virtualization mode\" into lmp-mr1-dev"
    },
    {
      "commit": "b65842dd9447a7925046b2285b2aa8459dc63ed3",
      "tree": "9e9f3e43b5ab1e741dace7a3b005589fd4eb17e3",
      "parents": [
        "76c156f71f398d08fd88100f499a8a41ddfd3808",
        "202bce11a7f66f27e6dbb6d154ddc123aa62513d"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 05 04:52:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 04:52:41 2014 +0000"
      },
      "message": "Merge \"Fix NuPlayer assertion on failure to create AudioTrack\" into lmp-mr1-dev"
    },
    {
      "commit": "76c156f71f398d08fd88100f499a8a41ddfd3808",
      "tree": "38c95cb6344fffb86be9866f0574dd38fa5b17dc",
      "parents": [
        "852dc963a53487f2e2f197ab095299aed9c60a5e",
        "180d1b96ee2312f1056a58e26884a89d25ab62c8"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Dec 05 03:38:55 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 03:38:56 2014 +0000"
      },
      "message": "Merge \"fix threading in RTSPSource and StreamingSource\" into lmp-mr1-dev"
    },
    {
      "commit": "852dc963a53487f2e2f197ab095299aed9c60a5e",
      "tree": "8bb5fe9cb0061af9733cd41626bbafbc1d113872",
      "parents": [
        "db995fe3239276be9dfd9e446b10417e07948acc",
        "15ebd70bdb7aeb3d5ce309710dbd64c0ea038113"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 05 02:44:16 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 05 02:44:17 2014 +0000"
      },
      "message": "Merge \"avc_util: try to find the first start code prefix 0x000001 even though there is non-zero byte at the beginning of the buffer.\" into lmp-mr1-dev"
    },
    {
      "commit": "47d4c9a4d53ed014b520edbda2edc3e280efb8a5",
      "tree": "5970b2b39c01cb5deb5d98c6b88db0202500dfe8",
      "parents": [
        "f1828910d48bbd22e1392e6ab0ce31298d1f115c"
      ],
      "author": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu Dec 04 17:47:19 2014 -0800"
      },
      "committer": {
        "name": "Ricardo Garcia",
        "email": "rago@google.com",
        "time": "Thu Dec 04 17:47:19 2014 -0800"
      },
      "message": "Fix for AOSP force virtualization mode\n\nForcing virtualization mode with AOSP code might erroneously return\na failed code, whilst it was correct.  Fixing the condition for\nAutomatic mode.\n\nbug: 18538537\nChange-Id: I5837ff40cfed04c99889813cd56ebe3d90793e74\n"
    },
    {
      "commit": "15ebd70bdb7aeb3d5ce309710dbd64c0ea038113",
      "tree": "a652122861b7fe962d95b4571d60da4be0cf7440",
      "parents": [
        "814cbb4e33396fce559475270d6f6c0bd7c43fc5"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 03 14:10:16 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 04 15:14:08 2014 -0800"
      },
      "message": "avc_util: try to find the first start code prefix 0x000001 even though there is non-zero byte at the beginning of the buffer.\n\nESQueue: allow one PES playload contains multiple ADTS AAC frames.\n\nBug: 18532335\nChange-Id: I1f42017cff139d5e932e0aaa3e7d33164d1a48e7\n"
    },
    {
      "commit": "8790740d6bb1546dee6c87270976415503283820",
      "tree": "aa2d7342403015a1870b7cb01ff639c5fd7f2f22",
      "parents": [
        "814cbb4e33396fce559475270d6f6c0bd7c43fc5"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Dec 04 09:53:50 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Dec 04 09:54:46 2014 -0800"
      },
      "message": "media_codecs.xml: extend vorbis sample rate to 8-96kHz\n\nBug: 18615604\nChange-Id: I0245556b8164959dd52fe677901cbfc517627cb4\n"
    },
    {
      "commit": "180d1b96ee2312f1056a58e26884a89d25ab62c8",
      "tree": "429e10ae941b02a4f3c6e18227c79cd5592b83fb",
      "parents": [
        "ab05b4ccb8ea59079d7f773aa0e090029c479bad"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Dec 02 18:35:35 2014 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Dec 03 16:53:21 2014 -0800"
      },
      "message": "fix threading in RTSPSource and StreamingSource\n\nBug: 18532335\n\nChange-Id: I9c34401a928dc0ddbd0923aa5f127dc628efbb92\n"
    },
    {
      "commit": "4d23645c8d3d93c91967a5494473b4a8b5d10d9c",
      "tree": "76578051f547b86611a5fb5cfe5f004247d521dc",
      "parents": [
        "ab05b4ccb8ea59079d7f773aa0e090029c479bad"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 03 13:18:23 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 03 16:49:03 2014 -0800"
      },
      "message": "ESQueue: add frame length checking in validation of ADTS header.\n\nThis allows an invalid ADTS buffer to be abandoned when frame length in\nthe header exceeds buffer size.\n\nBug: 18532335\nChange-Id: I8057db525d06ff00ca24afd075a7c6c17b87eaa8\n"
    },
    {
      "commit": "202bce11a7f66f27e6dbb6d154ddc123aa62513d",
      "tree": "390b83dacc286717243ba6e3c1173c9e2f01b376",
      "parents": [
        "9a1c8892f6835325db6931529dc74bf98cf0aee8"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 03 11:47:36 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 03 16:13:50 2014 -0800"
      },
      "message": "Fix NuPlayer assertion on failure to create AudioTrack\n\nUnder heavy media load or monkey/stress testing, more than\n32 AudioTracks may be created or memory resources may be scarce.\nRemove the assertion on failure to create AudioTrack\nand signal MEDIA_ERROR.\n\nBug: 17319843\nChange-Id: I5d4e200b5f50d800046851a33e035cdc6ff10075\n"
    },
    {
      "commit": "ab05b4ccb8ea59079d7f773aa0e090029c479bad",
      "tree": "71c6ac716e4845c6bab413c4e55dd60631be4a96",
      "parents": [
        "f1828910d48bbd22e1392e6ab0ce31298d1f115c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 02 09:41:21 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 02 17:43:39 2014 -0800"
      },
      "message": "StreamingSource: check mTSParser before dereferencing it.\n\nBug: 18532335\nChange-Id: I7819d8d359fe75ea4c827138e9aaa2454ccfe3b1\n"
    },
    {
      "commit": "f1828910d48bbd22e1392e6ab0ce31298d1f115c",
      "tree": "752ea9f31459d6b2572fa1721ca4edea612e759f",
      "parents": [
        "d8731629bed46ff573b1ef904e5366d28f23dc0a"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Mon Dec 01 15:33:36 2014 -0800"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Mon Dec 01 16:21:07 2014 -0800"
      },
      "message": "nuplayer: clear pending audio access unit on flush.\n\nAlso add flag to avoid reading on flush.\n\nBug: 18540219\nChange-Id: I2fc351c32c87db9a8c8c2aad12ee2bd56a0370ab\n"
    },
    {
      "commit": "d8731629bed46ff573b1ef904e5366d28f23dc0a",
      "tree": "f3c869ddad9bb2fa62fb54d1b07aefd8d8a39e6c",
      "parents": [
        "f20c4356931ef72084b6b8e310f56b67715c6fb9",
        "f8d717772f6d185cb07720cd5091df9b7d612e0b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Dec 02 00:13:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 02 00:13:36 2014 +0000"
      },
      "message": "Merge \"notify seek complete upon first video output frame\" into lmp-mr1-dev"
    },
    {
      "commit": "f8d717772f6d185cb07720cd5091df9b7d612e0b",
      "tree": "290eabe4ea61e269b21df477521c4ac211d4b364",
      "parents": [
        "bc0f452b9a76dd8c8244e775bc9c5aa85cae3ddf"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 26 15:08:34 2014 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Dec 01 10:54:55 2014 -0800"
      },
      "message": "notify seek complete upon first video output frame\n\nBug: 18541814\nChange-Id: Ie4e0976885f26eb253460eab371cb181ea85f2db\n"
    },
    {
      "commit": "f20c4356931ef72084b6b8e310f56b67715c6fb9",
      "tree": "b939b5391c9de74956f4829dfba71ef4a36aa3fa",
      "parents": [
        "5d2c5fcb5cbd262b6a238886a7ce43add03eee20",
        "caf7f48a0ef558689d39aafd187c1571ff4128b4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 26 23:51:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 26 23:51:55 2014 +0000"
      },
      "message": "Merge \"AudioRecord: use audio attributes instead of audio source.\" into lmp-mr1-dev"
    },
    {
      "commit": "5d2c5fcb5cbd262b6a238886a7ce43add03eee20",
      "tree": "0e4a31ccb807b5f06663e022de92c406b9c2bd20",
      "parents": [
        "087eb332cdd64026de27c914194127f8fda1a846",
        "d9e0603a1be07dbb347c55050c7d4629ea7492e8"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 26 02:17:16 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 26 02:17:16 2014 +0000"
      },
      "message": "Merge \"MediaCodec: resume codec if state is FLUSHED in async mode\" into lmp-mr1-dev"
    },
    {
      "commit": "caf7f48a0ef558689d39aafd187c1571ff4128b4",
      "tree": "7a2c90732783e2c90cabb6045c4ab0dcea842bf1",
      "parents": [
        "087eb332cdd64026de27c914194127f8fda1a846"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 25 17:50:47 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 25 17:50:47 2014 -0800"
      },
      "message": "AudioRecord: use audio attributes instead of audio source.\n\nAdded AudioRecord constructor with audio attributes.\nReplaced AudioPolicymanager::getInput() by getInputForAttr().\n\nNo new functionality for now.\n\nAlso:\n\n- Fixed warnings in AudioPolicyManager\n- Allocate audio session ID before calling getOutputForAttr() in\nAudioTrack.\n\nBug: 16006090.\nChange-Id: I15df21e4411db688e3096dd801cf579d76d81711\n"
    },
    {
      "commit": "d9e0603a1be07dbb347c55050c7d4629ea7492e8",
      "tree": "a0f6d8ec6e5f7d22beb3d13516f05f7f18286ce9",
      "parents": [
        "bc0f452b9a76dd8c8244e775bc9c5aa85cae3ddf"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Nov 25 17:14:00 2014 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 26 01:48:56 2014 +0000"
      },
      "message": "MediaCodec: resume codec if state is FLUSHED in async mode\n\nbug: 18513091\n\nChange-Id: I192625c61834584f711de76db788c2c0332ae774\n"
    },
    {
      "commit": "72bf901ca905ce154fe7866f06d25a01aadcf974",
      "tree": "0293ab3f6cdbec518913187d77c6d13d1c47a321",
      "parents": [
        "d325005e4a3be45c57e950f8c18b329c968602ce",
        "e83b55dc29ca16092ba02f36f55fa6e0e37fd78c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 26 00:21:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 26 00:21:20 2014 +0000"
      },
      "message": "Merge \"audio policy: new getOutputForAttr() prototype.\" into lmp-mr1-dev"
    },
    {
      "commit": "d325005e4a3be45c57e950f8c18b329c968602ce",
      "tree": "4673f354af652344295bc5fd2b2d37d0e6b2f16b",
      "parents": [
        "512dd849d0ef9e9988fedfbaf951b4b82523957c",
        "680b795435a5a501a56610258dce5eda40a1725d"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 25 23:49:04 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 25 23:49:05 2014 +0000"
      },
      "message": "Merge \"Fix AudioTrack loop mode to play audio from buffer start\" into lmp-mr1-dev"
    },
    {
      "commit": "b2cf160fef5071183d52ad85b49892e23b790e8a",
      "tree": "723a175e9db9c00feee5b576cc4245f210bdd5af",
      "parents": [
        "0f78eabb733e1413d7febd00c0bad0f0add02314",
        "643319f60e72a86c180ee839b25c086554e5bd47"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 25 22:09:12 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 25 22:09:13 2014 +0000"
      },
      "message": "Merge \"stagefright: add graceful handling when setting port definition\" into lmp-mr1-dev"
    },
    {
      "commit": "e83b55dc29ca16092ba02f36f55fa6e0e37fd78c",
      "tree": "f8232611b6372b74579e3ed03dfbeb167011d257",
      "parents": [
        "0f78eabb733e1413d7febd00c0bad0f0add02314"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 14 10:06:21 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 25 12:48:19 2014 -0800"
      },
      "message": "audio policy: new getOutputForAttr() prototype.\n\nUpdate getOutputForAttr() prototype and group all logic\ndealing with audio attributes to stream type conversion in\naudio policy manager.\n\ngetOutputForAttr():\n- specifies the audio session (for future use)\n- returns a status code\n- receives either stream type (for legacy) or audio attributes\n- returns an updated streamtype\n\nRemove logic dealing with legacy stream types to attributes conversion\nfrom AudioTrack.\n\nUse correct type for audio sessions in other APIs (startOutput() ...).\n\nreleaseOutput() specifies the audio session (for future use).\n\nBug: 18067208.\n\nChange-Id: I1bfbe9626c04c7955d77f8a70aecfad2cb204817\n"
    },
    {
      "commit": "643319f60e72a86c180ee839b25c086554e5bd47",
      "tree": "84332221078a0ef6c180fab93962e877a0a414d6",
      "parents": [
        "bc0f452b9a76dd8c8244e775bc9c5aa85cae3ddf"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Nov 24 21:55:35 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 25 18:05:33 2014 +0000"
      },
      "message": "stagefright: add graceful handling when setting port definition\n\n- don\u0027t crash when count of buffers is incorrect, or when the buffer\n  size decreases.\n\nThis allows configuring SW video encoders for smaller than QCIF size.\n\nBug: 18513091\nChange-Id: Ibfcd6b883a892156e408e94fbc329103b9ac09ac"
    },
    {
      "commit": "680b795435a5a501a56610258dce5eda40a1725d",
      "tree": "db2d003b9b147e5f51e4cf6bf05d497d8ce4acb7",
      "parents": [
        "bc0f452b9a76dd8c8244e775bc9c5aa85cae3ddf"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Nov 12 13:18:52 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 24 17:25:18 2014 -0800"
      },
      "message": "Fix AudioTrack loop mode to play audio from buffer start\n\nBug: 18217633\nChange-Id: Ica77acf0a32832d9b04eb657ef2f4f5329f8fbda\n"
    },
    {
      "commit": "223fd5c9738e9665e495904d37d4632414b68c1e",
      "tree": "33e0afab9a7479cdc4c688a742a8977c8ead21e4",
      "parents": [
        "bc0f452b9a76dd8c8244e775bc9c5aa85cae3ddf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 11 13:43:36 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 21 10:41:13 2014 -0800"
      },
      "message": "audio: new routing strategies and stream types\n\nAdded new routing strategies and stream type for internal use\nby audio policy manager and audio flinger:\n- One for accessibility to allow different routing than media\n- One for re-routing (remote submix) in preparation of dynamic\npolicies\n- Added stream type for \"internal\" audio flinger tracks used\nfor audio patches and duplication.\n\nBug: 18067208.\nChange-Id: I88f884b552e51e4a49c29125e5a1204cf58ff434\n"
    },
    {
      "commit": "3a8d7d1064a665a8a348710c7d27b31642f7f624",
      "tree": "4b34bf78f66ea2122cea7e3eb030b26fbed9b83d",
      "parents": [
        "8052d933822e51dec3b096cb5fc8a9fbdc076bdc",
        "7137ec7e005a5a6e3c0edb91cfacf16a31f4bf6a"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Nov 21 02:21:19 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 21 02:21:19 2014 +0000"
      },
      "message": "Merge \"tunnel NuPlayer source and decoder input\" into lmp-mr1-dev"
    },
    {
      "commit": "7137ec7e005a5a6e3c0edb91cfacf16a31f4bf6a",
      "tree": "df4513073e85173034aca859ff220d8908969636",
      "parents": [
        "f4ea51fda9396d7ee851b1d4d220384210ea2336"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 12 16:41:05 2014 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Nov 20 18:14:31 2014 -0800"
      },
      "message": "tunnel NuPlayer source and decoder input\n\nBug: 18342383\n\nChange-Id: Ieff1cd3bad2b39d46f127ddd5d5139b919992461\n"
    },
    {
      "commit": "7966142a096c1d5d7386a42eaccc9aed5b4344b3",
      "tree": "15a1da95e59cfc2506f73f10dab7fdcec432b4a8",
      "parents": [
        "f4ea51fda9396d7ee851b1d4d220384210ea2336",
        "f83408b41bbd796b7923d719e7e3799ddc7acaff"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Thu Nov 20 21:13:08 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 21:13:08 2014 +0000"
      },
      "message": "Merge \"NuPlayer: invalid anchor time when render is flushed.\" into lmp-mr1-dev"
    },
    {
      "commit": "ec9459c63d1c2969505ffdc4a100646fd07223bd",
      "tree": "143cd8e8d5a9d2c973e37833e4836632215f7ee9",
      "parents": [
        "a7cf01da547bad8d4e66e3e4570eddeac98b6b05",
        "a6bf21f2a7cdd33c78464019dc1105ef01248b51"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Nov 20 18:41:46 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 18:41:47 2014 +0000"
      },
      "message": "Merge \"close fd if data source is reset without prepare\" into lmp-mr1-dev"
    },
    {
      "commit": "a7cf01da547bad8d4e66e3e4570eddeac98b6b05",
      "tree": "a099a86ae62f0ea58c02c3eb61d328fab98f6c51",
      "parents": [
        "574aed902443d41581684dc8bc5ddd2e067f4cdf",
        "cb2129b3b568a4e31bcbda3545a468024bc972fe"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 20 18:36:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 18:36:27 2014 +0000"
      },
      "message": "Merge \"Fix missing loop count for static tracks.\" into lmp-mr1-dev"
    },
    {
      "commit": "574aed902443d41581684dc8bc5ddd2e067f4cdf",
      "tree": "eab7a69bd4500f45674192a1366870579fc09d70",
      "parents": [
        "3a2a32b5e758854712caf638fe1f74bb49b50777",
        "6c41e622512a99581afcbdbd6ad284237923c942"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Nov 20 18:35:45 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 18:35:46 2014 +0000"
      },
      "message": "Merge \"When aggregating buffers, make sure we don\u0027t lose data\" into lmp-mr1-dev"
    },
    {
      "commit": "3a2a32b5e758854712caf638fe1f74bb49b50777",
      "tree": "d5962cc1343c1efec7d731d94ddfc6179aea8c90",
      "parents": [
        "8ed5afa3aff29c2a9d078802f71211d14414d14b",
        "0ebd5f95b68a3a5c9e5509f21938c9e51e74d71b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 20 18:34:23 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 18:34:23 2014 +0000"
      },
      "message": "Merge \"AudioSystem: fix cross deadlock\" into lmp-mr1-dev"
    },
    {
      "commit": "0ebd5f95b68a3a5c9e5509f21938c9e51e74d71b",
      "tree": "0a2939a70644eb37c401705c8211d65bac553743",
      "parents": [
        "18899808001ddaea13fa4c5277502c96351f69a5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 19 19:04:52 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 20 09:15:02 2014 -0800"
      },
      "message": "AudioSystem: fix cross deadlock\n\nDo not hold gLockAPS when calling\nAudioPolicyService::registerClient() in get_audio_policy_service().\nregisterClient() will need to acquire the AudioPolicyService mutex and\nif at the same time a method called from AudioPolicyService\n(with mutex held) calls back into AudioSystem and get_audio_policy_service()\na cross deadlock occurs.\n\nSame preventive fix for get_audio_flinger().\n\nUse a separate mutex for notification client list in AudioPolicyService.\nThis prevents deadlocking if registerClient() is called as a consequence of\nAudioFlinger calling back into AudioPolicyManager while executing a method\nwith AudioPolicyService locked\n\nBug: 18403952.\nBug: 18450065.\nChange-Id: Ia832e41aede8bc6c843fc615508fbdd74e0863b5\n"
    },
    {
      "commit": "8ed5afa3aff29c2a9d078802f71211d14414d14b",
      "tree": "1ef023209694c2d4bce094bf6e0dbb814ceec75a",
      "parents": [
        "6597c00f7015e5ec9a07601d7a760169ca7266d3",
        "d9fd6317913c74e1c955eb31978c41e70d5810bc"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 20 06:45:29 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 20 06:45:30 2014 +0000"
      },
      "message": "Merge \"mediaplayer: request auto-frc for high quality avsync\" into lmp-mr1-dev"
    },
    {
      "commit": "a6bf21f2a7cdd33c78464019dc1105ef01248b51",
      "tree": "a7bc37ebdc3cdc0a840d1c23447ea8a56f8fb958",
      "parents": [
        "f89f2ff4df0855eb56d95a02ab29d856e0ffa858"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 19 20:26:34 2014 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 19 20:28:10 2014 -0800"
      },
      "message": "close fd if data source is reset without prepare\n\nbug: 18434887\nChange-Id: I70dff721710b7299d1ca1f8520278f82d355141d\n"
    },
    {
      "commit": "6597c00f7015e5ec9a07601d7a760169ca7266d3",
      "tree": "0a21fd103d45476c11e812b6d796dc5849df4299",
      "parents": [
        "18899808001ddaea13fa4c5277502c96351f69a5"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 06 10:51:06 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 19 16:50:48 2014 -0800"
      },
      "message": "stagefright: add (temporary) support for automatic video frc\n\nUse MediaFormat.setInteger(\"auto-frc\", 1) to turn this feature on.\nIf supported, this feature will show up in codec.getOutputFormat().getInteger(\"auto-frc\")\nOtherwise, this key will not be present.\n\nBug: 17383204\nChange-Id: I03549b3ede4de156e9e2d81b3883010360bb42ae\n"
    },
    {
      "commit": "d9fd6317913c74e1c955eb31978c41e70d5810bc",
      "tree": "1d1bf829c3b08327f770f839dd7c4062b56b1a51",
      "parents": [
        "18899808001ddaea13fa4c5277502c96351f69a5"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 06 11:00:00 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 19 16:50:33 2014 -0800"
      },
      "message": "mediaplayer: request auto-frc for high quality avsync\n\nBug: 17383204\nChange-Id: I7209305b4ff3c2386019d7a09d6a0536e9f21522\n"
    },
    {
      "commit": "6c41e622512a99581afcbdbd6ad284237923c942",
      "tree": "67cbb3ad6065eede75b52fdd241db1f36f214072",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 19 13:22:23 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 19 14:08:55 2014 -0800"
      },
      "message": "When aggregating buffers, make sure we don\u0027t lose data\n\nBug: 18277034\nChange-Id: Ia8c35791eea88545a873cad339eb6b5fc25d1d97\n"
    },
    {
      "commit": "18899808001ddaea13fa4c5277502c96351f69a5",
      "tree": "328090b2f4f2a159d8c0015fc99808ef79d15afb",
      "parents": [
        "03181012beab17e145ca8b9bedbcc08d117df1cb",
        "a10fd23bb9fcf16e778c639ea5638e2917dacd89"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Nov 19 19:55:19 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 19 19:55:19 2014 +0000"
      },
      "message": "Merge \"NuPlayer: open audio sink in offload mode when resuming from timeout teardown.\" into lmp-mr1-dev"
    },
    {
      "commit": "bbda5ce4782b20f3ed75482e5f73b8d999223438",
      "tree": "8dd9231b0d49d1b31aada001e9650f92ff3f3825",
      "parents": [
        "408dba5ff6dd014a19afeeeae69242f022b73b30",
        "f6778fd0c72ab54328f0e9f5ecf0017b73e99dd8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 19 18:03:04 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 19 18:03:05 2014 +0000"
      },
      "message": "Merge \"AudioSystem: Add mutex for output cache\" into lmp-mr1-dev"
    },
    {
      "commit": "f83408b41bbd796b7923d719e7e3799ddc7acaff",
      "tree": "48ff693ae59ee937d8ffd0d1f1f72516d45b7df7",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Nov 19 10:02:16 2014 -0800"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Nov 19 10:02:16 2014 -0800"
      },
      "message": "NuPlayer: invalid anchor time when render is flushed.\n\nAlso rememeber the pause time in NuPlayerDriver.\n\nBug: 18436336\nChange-Id: If09f680a0d0f9137bd55c5f94201eb3aa783278a\n"
    },
    {
      "commit": "f6778fd0c72ab54328f0e9f5ecf0017b73e99dd8",
      "tree": "8f31be289f16ae8d684699ba80d533b249923e18",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 18 17:26:58 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 19 09:12:16 2014 -0800"
      },
      "message": "AudioSystem: Add mutex for output cache\n\nFix cross deadlock with AudioFlinger by adding\na dedicated mutex to protect access to cached output list\nand parameters.\n\nBug: 18410728.\nChange-Id: Ia31283b1972d8865a46e84e63695173c187eb781\n"
    },
    {
      "commit": "408dba5ff6dd014a19afeeeae69242f022b73b30",
      "tree": "ae08f0e6cc97343d69bdbe5b7967d94f10849fe1",
      "parents": [
        "ba0790bf10da74caacb214ea8155d172bae4d0c5",
        "95697aecd644ffcfbe7fe828e9e42bfab71b75a5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 19 01:30:21 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 19 01:30:22 2014 +0000"
      },
      "message": "Merge \"HLS: fix live lock after missing the boat during configuration change\" into lmp-mr1-dev"
    },
    {
      "commit": "ba0790bf10da74caacb214ea8155d172bae4d0c5",
      "tree": "8d2be0704e909f73cb00e80d01fd4ede48a00f15",
      "parents": [
        "993d57ec4817922e291e2d88d690559403a1bcd6",
        "707eadef2ad1388bafdb2d003a4169208fa99811"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 19 01:21:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 19 01:21:51 2014 +0000"
      },
      "message": "Merge \"Don\u0027t autoloop notifications\" into lmp-mr1-dev"
    },
    {
      "commit": "cb2129b3b568a4e31bcbda3545a468024bc972fe",
      "tree": "87f7c1114770b59e3a6166e7adbb3bcdea8601d2",
      "parents": [
        "97e6ca1a0be83e420ab238d9a1c31d3112126646"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 11 12:17:22 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 18 17:15:51 2014 -0800"
      },
      "message": "Fix missing loop count for static tracks.\n\nStaticAudioTrackServerProxy::framesReady() previously returned\nonly the contiguous frames, update to return the total\navailable frames. This resolves short-count looping in\nSoundPool for FastTracks.\n\nAlso (1) Removes the racy condition of reading two variables\nand (2) Fixes buffer-\u003emNonContig to return the correct value\nand (3) Restores behavior that loop count of 1 goes back to\nloopStart once during playback.\n\nBug: 11830751\nBug: 12070295\nBug: 17456842\nChange-Id: I64906e6036bb00a1d7375b03efe6deb69d6478ca\n"
    },
    {
      "commit": "95697aecd644ffcfbe7fe828e9e42bfab71b75a5",
      "tree": "940ef6948672bde19925bfa7b155d64e006e70aa",
      "parents": [
        "993d57ec4817922e291e2d88d690559403a1bcd6"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Nov 10 18:19:11 2014 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 18 17:12:50 2014 -0800"
      },
      "message": "HLS: fix live lock after missing the boat during configuration change\n\nBug:17488643\nChange-Id: I4f5de42f86d6c616a67dc803f35c026b35347983\n"
    },
    {
      "commit": "993d57ec4817922e291e2d88d690559403a1bcd6",
      "tree": "5b3ed87e8df74722a71c0b9076740fc1c86d6dc2",
      "parents": [
        "8cd37d677f10a7718c9247830652a588ea4600de",
        "6ffb1fd67eb8f00f130a6db914ba42a8432aec70"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 19 00:46:24 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 19 00:46:25 2014 +0000"
      },
      "message": "Merge \"NuPlayer: pass media time to selectTrack for responsiveness\" into lmp-mr1-dev"
    },
    {
      "commit": "6ffb1fd67eb8f00f130a6db914ba42a8432aec70",
      "tree": "8c7fa7071cf8c096c0964416050555c422088993",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Oct 29 16:24:32 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 19 00:42:24 2014 +0000"
      },
      "message": "NuPlayer: pass media time to selectTrack for responsiveness\n\nBug: 18020001\nChange-Id: Id50f8473992f39d8c0aa86a1fabb2601093d2572"
    },
    {
      "commit": "a10fd23bb9fcf16e778c639ea5638e2917dacd89",
      "tree": "6d88124988da832f4bf0e204373c35f3bf380ebe",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Thu Nov 06 16:15:20 2014 -0800"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Tue Nov 18 16:06:16 2014 -0800"
      },
      "message": "NuPlayer: open audio sink in offload mode when resuming from timeout teardown.\n\nAlso always recheck if a new stream can do offload.\n\nBug: 18154425\nChange-Id: I121877834bd963eeeba91a2b951fd30d5dc36a8b\n"
    },
    {
      "commit": "8cd37d677f10a7718c9247830652a588ea4600de",
      "tree": "ab4d591b6073e9d021108db68a974e0e4cd4496c",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f",
        "29e6cecdd8562700ab625c5645ddd6a7753789f1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 18 20:11:23 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 18 20:11:24 2014 +0000"
      },
      "message": "Merge \"audio policy: do not prevent routing to A2DP when suspended.\" into lmp-mr1-dev"
    },
    {
      "commit": "707eadef2ad1388bafdb2d003a4169208fa99811",
      "tree": "c5666a6e0d400df28dbd67706fbfdc742710bf8f",
      "parents": [
        "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 18 09:50:35 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 18 09:54:54 2014 -0800"
      },
      "message": "Don\u0027t autoloop notifications\n\nSome apps think it\u0027s cool to use ringtones as notification sounds, but\nringtones often loop, which is not appropriate for notifications.\n\nBug: 15929273\nChange-Id: I77c4277801cb2561743f8c676ef76ab4d1668b08\n"
    },
    {
      "commit": "35b0f7095fac4f2cc112edd4b0298a9cb1ee394f",
      "tree": "ccec4b11226708f7f4fdba55d4dfdcf42220bb56",
      "parents": [
        "4d0a5985fb5e7ea5a1f9a605afea2b7534ebc16b",
        "4dbc8cc68a2674110ac1dce9e475ac30b1baa7c5"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Nov 18 03:46:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 18 03:46:55 2014 +0000"
      },
      "message": "Merge \"Fix missing mutex lock in Drm::binderDied\" into lmp-mr1-dev"
    },
    {
      "commit": "29e6cecdd8562700ab625c5645ddd6a7753789f1",
      "tree": "e6b4da8119778e487653f7d74e087228e0b79e80",
      "parents": [
        "88ec9e992af75f9783794df5d7be31c3b018ad09"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 13 18:17:55 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 17 18:48:08 2014 -0800"
      },
      "message": "audio policy: do not prevent routing to A2DP when suspended.\n\nAllow A2DP sink selection even if A2DP is suspended.\nIt is not because use of A2DP is temporarily disabled by SCO\nselection that the policy rule routing a given use case\nto A2DP should be altered. The source will be routed to A2DP\nbut it will remain silent until suspend condition is cleared\nwhich is the purpose of suspend mode.\n\nAlso make sure that accessibility prompts are audible while in call\nby forcing stream type to STREAM_VOICE_CALL.\nFix inconsistent logic between AudioTrack::setStreamTypeFromAttributes()\nand AudioPolicyManager::getStrategyForAttr()\n\nBug: 18095151.\nChange-Id: I1c75dd8288ed3dd494eb942060eac9c9660dca50\n"
    },
    {
      "commit": "88ec9e992af75f9783794df5d7be31c3b018ad09",
      "tree": "4a8fc2f6d544aa9bb971d06b7a8a3d48021c5b12",
      "parents": [
        "39b109a1df23e7610b031b466e9ecf510b3c077f",
        "b51457f8d915e0ed8edf66d1d2c263ab4a792be8"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 17 23:34:30 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 17 23:34:31 2014 +0000"
      },
      "message": "Merge \"Fix race condition in signaling completion for decode.\" into lmp-mr1-dev"
    },
    {
      "commit": "39b109a1df23e7610b031b466e9ecf510b3c077f",
      "tree": "f7b65ac4779af866f4d278004e7f583936cf2d1e",
      "parents": [
        "f89f2ff4df0855eb56d95a02ab29d856e0ffa858",
        "89bf2525c5b57f17260de5b00c5f3f78ac4b881e"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Nov 17 23:14:03 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 17 23:14:04 2014 +0000"
      },
      "message": "Merge \"NuPlayer HTTPLiveSource: impl getSelectedTrack\" into lmp-mr1-dev"
    },
    {
      "commit": "b51457f8d915e0ed8edf66d1d2c263ab4a792be8",
      "tree": "e4abde0a9cd2782282bf2bb4ed0687b21f207e25",
      "parents": [
        "97e6ca1a0be83e420ab238d9a1c31d3112126646"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 17 13:42:01 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 17 13:46:12 2014 -0800"
      },
      "message": "Fix race condition in signaling completion for decode.\n\nBug: 18048775\nChange-Id: I2207eb2cf30cf205d9bf414edbb1d3e709185f67\n"
    },
    {
      "commit": "4dbc8cc68a2674110ac1dce9e475ac30b1baa7c5",
      "tree": "c84a3fc0b3b2b2f9d8fcbee6998b053f760614cb",
      "parents": [
        "2dc28b69258d4772aaf40902b939153239e7fe7f"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Nov 16 11:52:03 2014 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Nov 16 11:52:03 2014 -0800"
      },
      "message": "Fix missing mutex lock in Drm::binderDied\n\nbug: 18194977\nChange-Id: Ie6107a34237577c3b9cc6507d507f5c51f49fcf6\n"
    },
    {
      "commit": "addfc718ff85115355060d6b07ca67b41a3765c2",
      "tree": "9b64d78f825796b52691b5c0b743e0bdf99f9d7e",
      "parents": [
        "f97dfbc9e20a61e56a03058af7d947b17c48515e",
        "c6cfd70f24a11b946859485ce398a189c301a4e2"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Nov 15 01:20:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 15 01:20:10 2014 +0000"
      },
      "message": "Merge \"NuPlayer: tunnel decoder with renderer for data buffer passing.\" into lmp-mr1-dev"
    },
    {
      "commit": "f97dfbc9e20a61e56a03058af7d947b17c48515e",
      "tree": "d4c95fabb8dc2125d9a1a1869e6e7c728b656aae",
      "parents": [
        "990dad996b748fdaa2041cc6d039e96ccfeae6fb",
        "daad5b2f4a6bb46a7911661e398278d6a80d7093"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Nov 15 01:11:21 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 15 01:11:22 2014 +0000"
      },
      "message": "Merge \"PlaylistFetcher: handle sporadic fetch erros\" into lmp-mr1-dev"
    },
    {
      "commit": "c6cfd70f24a11b946859485ce398a189c301a4e2",
      "tree": "47238c67d7cf5f6bfdf6845c64966e5e1692eb12",
      "parents": [
        "12acd3f0374e7707ff50c04f8075883be71b128c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Nov 11 16:33:20 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Nov 14 14:23:52 2014 -0800"
      },
      "message": "NuPlayer: tunnel decoder with renderer for data buffer passing.\n\nBug: 18342383\n\nChange-Id: I182928007814c146c01a86196c4fda1d46e74ea4\n"
    },
    {
      "commit": "990dad996b748fdaa2041cc6d039e96ccfeae6fb",
      "tree": "7456bb2af05b32fa76e611e26c689b13e32d13fc",
      "parents": [
        "cede28e22bce0c92a6d139b51d2c007d2e3f6fca",
        "0d6db582f2ccc9f8943c5f3965e2994b7d137158"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 14 17:40:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 14 17:40:28 2014 +0000"
      },
      "message": "Merge \"remove AudioSystem::getOutputSamplingRateForAttr()\" into lmp-mr1-dev"
    },
    {
      "commit": "cede28e22bce0c92a6d139b51d2c007d2e3f6fca",
      "tree": "fcee5c8e7a56c4fd055afd0e908b6900a77d6cae",
      "parents": [
        "97e6ca1a0be83e420ab238d9a1c31d3112126646",
        "f296e2b262d2a8f7c570eaed454a28cca99eb976"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 14 10:03:46 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 14 10:03:47 2014 +0000"
      },
      "message": "Merge \"stagefright: add runtime debug support\" into lmp-mr1-dev"
    },
    {
      "commit": "daad5b2f4a6bb46a7911661e398278d6a80d7093",
      "tree": "2c124ba7b02739aec15b63ec23519f3fd5079cd5",
      "parents": [
        "2dc28b69258d4772aaf40902b939153239e7fe7f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Aug 29 18:35:56 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 13 17:01:10 2014 -0800"
      },
      "message": "PlaylistFetcher: handle sporadic fetch erros\n\nBug: 17490472\nChange-Id: I2c04e2352f13db762b845f4d35db0a8b851a148c\n"
    },
    {
      "commit": "97e6ca1a0be83e420ab238d9a1c31d3112126646",
      "tree": "19eff16ab736ee29034f5f68043a5cf07c5fde78",
      "parents": [
        "12acd3f0374e7707ff50c04f8075883be71b128c",
        "1099188151eb63af24ecf542b58d4257bbb8236a"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Nov 13 23:15:06 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 13 23:15:07 2014 +0000"
      },
      "message": "Merge \"Stagefright: use MediaCodec in async mode for recording\" into lmp-mr1-dev"
    },
    {
      "commit": "12acd3f0374e7707ff50c04f8075883be71b128c",
      "tree": "19f4d335d925a8d402295fa8966ec8190647b918",
      "parents": [
        "6641004be544a394f3fca81f7213dd6e0668ff98",
        "87e8123d4d6058fbd50065a4fb18a0bdb6989b3f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 13 23:06:10 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 13 23:06:11 2014 +0000"
      },
      "message": "Merge \"AnotherPacketSource: need reset some members before returning from queueDiscontinuity().\" into lmp-mr1-dev"
    },
    {
      "commit": "87e8123d4d6058fbd50065a4fb18a0bdb6989b3f",
      "tree": "a970a45ad189b339614cdd9060436e7707fec2a1",
      "parents": [
        "2dc28b69258d4772aaf40902b939153239e7fe7f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Nov 12 15:37:07 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 13 11:35:41 2014 -0800"
      },
      "message": "AnotherPacketSource: need reset some members before returning from queueDiscontinuity().\n\nBug: 18355014\nBug: 17511837\n\nChange-Id: I4b623d3bc4fbeaf0e8bf4ddd96661469d17afe7a\n"
    },
    {
      "commit": "6641004be544a394f3fca81f7213dd6e0668ff98",
      "tree": "9cbadf3341c0119ca0baa4f50c64391914769e54",
      "parents": [
        "e0b7ddcda9b4fb493cc365c92293ed7d12c3208a",
        "e17afa888040eb5fbd31249305efd88ee03bb5bc"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 13 19:16:01 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 13 19:16:02 2014 +0000"
      },
      "message": "Merge \"Revert \"mediaplayer: make frame-accurate avsync configurable\"\" into lmp-mr1-dev"
    },
    {
      "commit": "e0b7ddcda9b4fb493cc365c92293ed7d12c3208a",
      "tree": "691786a94cf11e731aea75939a95a5f0612088ba",
      "parents": [
        "869e0798bbb51af570b4d6ef750f2c21e6b94c8a",
        "bf20727f0aaf609bc3b495b07b45822b137d21ba"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 13 17:23:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 13 17:23:27 2014 +0000"
      },
      "message": "Merge \"PlaylistFetcher: check ts program streams before disabling a/v\" into lmp-mr1-dev"
    },
    {
      "commit": "869e0798bbb51af570b4d6ef750f2c21e6b94c8a",
      "tree": "4578b428d6a2bad432207238c48444541684e23e",
      "parents": [
        "94691b01a94d3ae115a7181c99db58fbeb785c64",
        "ab063847e6e893740749029a04cce1f6b7345ed5"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Nov 13 16:40:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 13 16:40:21 2014 +0000"
      },
      "message": "Merge \"MTP: add strict bounds checking for all incoming packets\" into lmp-mr1-dev"
    },
    {
      "commit": "0d6db582f2ccc9f8943c5f3965e2994b7d137158",
      "tree": "bdd0de4b94942f7490dfe7b59b96bb4fa65a136a",
      "parents": [
        "538596f71dc667b2f39c27d0bc9bbf119b0e6d58"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 12 18:39:44 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 12 18:52:20 2014 -0800"
      },
      "message": "remove AudioSystem::getOutputSamplingRateForAttr()\n\nIt is safer to query the output sampling rate once the output\nhave been acquired by calling getOutputForAttr().\n\nBug: 16009464.\nChange-Id: Ib561facd19fba5359a6b837d75f1a1cd2dc51b29\n"
    },
    {
      "commit": "bf20727f0aaf609bc3b495b07b45822b137d21ba",
      "tree": "54dcd911084ba618a70907efc04da2970240a8da",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Oct 30 17:22:11 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 12 18:42:10 2014 -0800"
      },
      "message": "PlaylistFetcher: check ts program streams before disabling a/v\n\nBug: 14648838\nChange-Id: Ibf2b2cbb235f3d80bc33013e2afc053f13b9035f\n"
    },
    {
      "commit": "1099188151eb63af24ecf542b58d4257bbb8236a",
      "tree": "d1f15d781c76f511465da68c6d334ebcaf8b6eac",
      "parents": [
        "868e2f0148b1c491e4fd4839b46d73f6216a058d"
      ],
      "author": {
        "name": "Praveen Chavan",
        "email": "pchavan@codeaurora.org",
        "time": "Thu Oct 16 11:49:14 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Nov 12 17:22:36 2014 -0800"
      },
      "message": "Stagefright: use MediaCodec in async mode for recording\n\nAsync mode reduces the number of messages posted between\nMediaCodec and MediaCodecSource. This reduces thread\nwakeups and helps reduce CPU utilization.\n\nBug: 18246026\nChange-Id: I4b0837f309fdd12e323c1dfa72525f5a31971a03\n"
    },
    {
      "commit": "ab063847e6e893740749029a04cce1f6b7345ed5",
      "tree": "8b840e9152cfa638aa354a0379962a89914e0006",
      "parents": [
        "745602d87607521f4fe84c4f3a6388fbdb6a867c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Nov 12 14:20:06 2014 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Nov 12 16:08:37 2014 -0800"
      },
      "message": "MTP: add strict bounds checking for all incoming packets\n\nPreviously we did not sanity check incoming MTP packets,\nwhich could result in crashes due to reading off the edge of a packet.\nNow all MTP packet getter functions return a boolean result\n(true for OK, false for reading off the edge of the packet)\nand we now return errors for malformed packets.\n\nBug: 18113092\nChange-Id: Ic7623ee96f00652bdfb4f66acb16a93db5a1c105\n"
    },
    {
      "commit": "f296e2b262d2a8f7c570eaed454a28cca99eb976",
      "tree": "bd87223950d92c27fc69601ddeddbf8e219742e4",
      "parents": [
        "94691b01a94d3ae115a7181c99db58fbeb785c64"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Jun 18 18:08:52 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 12 15:59:04 2014 -0800"
      },
      "message": "stagefright: add runtime debug support\n\nBug: 18285408\nChange-Id: I56346f4652b2c5f7ef5fa3003fd8676051339384\n"
    },
    {
      "commit": "94691b01a94d3ae115a7181c99db58fbeb785c64",
      "tree": "fba789c204ea2a947b153423dd4191bf3baf9136",
      "parents": [
        "7c77c75d43ac2a40f2b5ce98085ef68f8ba3b4f2",
        "7a493d8578bb00cf10190053a4caf1d07f4e24f7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 12 21:40:25 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 12 21:40:26 2014 +0000"
      },
      "message": "Merge \"Fix Ogg Vorbis packet timestamps\" into lmp-mr1-dev"
    },
    {
      "commit": "538596f71dc667b2f39c27d0bc9bbf119b0e6d58",
      "tree": "a02a7204a9d6c323b7d7bfcf3f108933e9cd5dc8",
      "parents": [
        "745602d87607521f4fe84c4f3a6388fbdb6a867c",
        "368e33700ed16acc8e99657fb84edd5d2806b34f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 12 19:00:28 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 12 19:00:29 2014 +0000"
      },
      "message": "Merge \"Fix looping sound playback\" into lmp-mr1-dev"
    },
    {
      "commit": "745602d87607521f4fe84c4f3a6388fbdb6a867c",
      "tree": "07aad629704dabc41fd18505383a71e1f7343c12",
      "parents": [
        "a7e65b196bf7efb27daa36c8a783d9c57c9ffc03",
        "33223c4f97abb78fa8c92e1b8c817546f15d97e1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 11 22:00:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 11 22:00:37 2014 +0000"
      },
      "message": "Merge \"MediaCodec: Prevent stop() in the UNINITIALIZED state\" into lmp-mr1-dev"
    },
    {
      "commit": "368e33700ed16acc8e99657fb84edd5d2806b34f",
      "tree": "73067e4cc41d76e60ac526ece3a29c2b47443089",
      "parents": [
        "a7e65b196bf7efb27daa36c8a783d9c57c9ffc03"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 11 13:56:44 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 11 13:58:56 2014 -0800"
      },
      "message": "Fix looping sound playback\n\nThe renderer stops the audio sink at the end in order to play out\nthe last little bit of audio. When the sound is looping, the sink\nneeds to be restarted.\n\nBug: 18326137\nChange-Id: I3bc3629597fc43cce33bdf5691d29cc4c2285926\n"
    },
    {
      "commit": "7a493d8578bb00cf10190053a4caf1d07f4e24f7",
      "tree": "dd2dc9f16f9f075f82580584d25dfc99eed9c86d",
      "parents": [
        "a7e65b196bf7efb27daa36c8a783d9c57c9ffc03"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 11 09:24:49 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 11 10:49:27 2014 -0800"
      },
      "message": "Fix Ogg Vorbis packet timestamps\n\nBug: 17586090\nChange-Id: Iea88f7cc1f623cbea5df24169ea76181925fbb13\n"
    },
    {
      "commit": "a7e65b196bf7efb27daa36c8a783d9c57c9ffc03",
      "tree": "4cec21ee2a71c304176a261bb409cf5e0c7a6558",
      "parents": [
        "95768fc3c357f243ded53baa9f375401dc4835cd",
        "0644f95a8976470e84c6c0a6d96585ae6437ecd2"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 11 03:13:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 11 03:13:27 2014 +0000"
      },
      "message": "Merge \"MatroskaExtractor: use GetTrackByNumber instead of GetTrackByIndex\" into lmp-mr1-dev"
    },
    {
      "commit": "95768fc3c357f243ded53baa9f375401dc4835cd",
      "tree": "1fc20900fc6c53c7508904ec3579c09a0f73bc1c",
      "parents": [
        "a64ed568c94d7bf837eab02f7ad1e6d196ac396f",
        "f5b7c3b3c9a6da29f3bbd02e4031ad19bc7ad0f7"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 11 03:13:18 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 11 03:13:18 2014 +0000"
      },
      "message": "Merge \"PlaylistFetcher: clear mStartup for .aac playlists after seek\" into lmp-mr1-dev"
    },
    {
      "commit": "48cb6d7c840e695769405b0d33fd2b85479ec717",
      "tree": "ed5513fbe446bad4b7438f7f4c31feac9bd8850f",
      "parents": [
        "21efaad13f13e390f585cea4371d399997f8d1a6",
        "15ce5f35187659ad757ee2ea6f70dcef5010c2c2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 10 22:29:56 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 10 22:29:56 2014 +0000"
      },
      "message": "Merge \"Fix short sound playback\" into lmp-mr1-dev"
    },
    {
      "commit": "21efaad13f13e390f585cea4371d399997f8d1a6",
      "tree": "a0138da7c13fdffcc52b37447b466f2cc40b2cd5",
      "parents": [
        "2dc28b69258d4772aaf40902b939153239e7fe7f",
        "5c67ddcf987b1f07c9abc1d051a0c051e7c73ff7"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Nov 10 22:22:28 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 10 22:22:29 2014 +0000"
      },
      "message": "Merge \"GenericSource: add mVideoLastDequeueTimeUs/mAudioLastDequeueTimeUs\" into lmp-mr1-dev"
    },
    {
      "commit": "5c67ddcf987b1f07c9abc1d051a0c051e7c73ff7",
      "tree": "75832e9700f6cab80119c44d8045778e41fbffe6",
      "parents": [
        "ed1e55c5276a1c031e9b2f016387c7d2fe7bc47f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 04 17:46:05 2014 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Nov 10 22:02:41 2014 +0000"
      },
      "message": "GenericSource: add mVideoLastDequeueTimeUs/mAudioLastDequeueTimeUs\n\nBug: 18296874\nChange-Id: I9608523b4cc37e6cf8b91fb1407035aac087796b"
    },
    {
      "commit": "2dc28b69258d4772aaf40902b939153239e7fe7f",
      "tree": "010f2d21a21dd55e7b5d2bfe3bd56918912e76f3",
      "parents": [
        "c5208b7a23300c0f628a4dab3a22536e351da18b",
        "1098d87e56f726184ae9c8fe903ea4743669f35b"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Nov 10 18:25:32 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 10 18:25:33 2014 +0000"
      },
      "message": "Merge \"HTTPLiveSource: NULL check in getFormat\" into lmp-mr1-dev"
    },
    {
      "commit": "1098d87e56f726184ae9c8fe903ea4743669f35b",
      "tree": "c2dabde1d5669bef93e8854e1c0e9ba26703bc6c",
      "parents": [
        "ed1e55c5276a1c031e9b2f016387c7d2fe7bc47f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 06 13:58:48 2014 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Nov 08 01:40:50 2014 +0000"
      },
      "message": "HTTPLiveSource: NULL check in getFormat\n\nBug: 18297916\nChange-Id: I14c5de8d28202ee1b68e369d33e01bd26dbe968d"
    },
    {
      "commit": "f5b7c3b3c9a6da29f3bbd02e4031ad19bc7ad0f7",
      "tree": "f7d93de443fcd038e784a0f1a665b2a40597b844",
      "parents": [
        "ed1e55c5276a1c031e9b2f016387c7d2fe7bc47f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Nov 07 15:27:05 2014 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Nov 07 17:24:46 2014 -0800"
      },
      "message": "PlaylistFetcher: clear mStartup for .aac playlists after seek\n\nBug: 18296856\nChange-Id: I26beabee338312eb2125b69284052c61aef611f0\n"
    },
    {
      "commit": "e17afa888040eb5fbd31249305efd88ee03bb5bc",
      "tree": "c079294242bc00130c022194b085aaf635bf4e2a",
      "parents": [
        "e662cd5cdbe1312d6b74754d2945fffe99e4fe2c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 07 17:20:58 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 07 17:24:09 2014 -0800"
      },
      "message": "Revert \"mediaplayer: make frame-accurate avsync configurable\"\n\nReenable PTS scheduling for all playback.\n\nThis reverts commit 274084f7bfd3f6bdf5a55cf16ceefed345aa0060.\n\nBug: 18111837\nChange-Id: Ia734ad304c1f85d2ac302261866be82b8f2a30d4\n"
    },
    {
      "commit": "0644f95a8976470e84c6c0a6d96585ae6437ecd2",
      "tree": "5f1eb04de363ef3637e9caccda1f9133bf4641c9",
      "parents": [
        "461b02d3eccefea48fa15c67a9cd3a5895bd2765"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 04 15:22:15 2014 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Nov 08 01:20:59 2014 +0000"
      },
      "message": "MatroskaExtractor: use GetTrackByNumber instead of GetTrackByIndex\n\nBug: 18297854\nChange-Id: I5e14a358576d9c7d25b7e421cd22428fb17a6e06"
    },
    {
      "commit": "e662cd5cdbe1312d6b74754d2945fffe99e4fe2c",
      "tree": "68e681598ebc7f78ca041a51011652700694f7d8",
      "parents": [
        "1609e451cf6101efe6aeaaa2da61db2cb095c9e8",
        "d2d089fc86c62843992e7d5b371ee9227189a1e6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 07 21:23:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 21:23:28 2014 +0000"
      },
      "message": "Merge \"Improve AudioTrack recovery from mediaserver death\" into lmp-mr1-dev"
    },
    {
      "commit": "1609e451cf6101efe6aeaaa2da61db2cb095c9e8",
      "tree": "f09b7bb9b88d37985ca41e255f4efc8ffa769905",
      "parents": [
        "c339a921642c38621f57e95b4ec41cfaa99c7a63",
        "04f101c35eaa90b1f95939afac30674ec1611e6f"
      ],
      "author": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Fri Nov 07 19:44:29 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 19:44:30 2014 +0000"
      },
      "message": "Merge \"Add a BufferItem parameter to onFrameAvailable\" into lmp-mr1-dev"
    },
    {
      "commit": "c339a921642c38621f57e95b4ec41cfaa99c7a63",
      "tree": "7b8204818f224904c8df99e6b1ee66e34f2afed2",
      "parents": [
        "62fe78b66c87339a64f047561e7b4aac606310e2",
        "a36060891425c4ce0621e40344ac473ec14924dd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 07 18:38:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 18:38:54 2014 +0000"
      },
      "message": "Merge \"AudioSystem: remove obsolete method.\" into lmp-mr1-dev"
    },
    {
      "commit": "a36060891425c4ce0621e40344ac473ec14924dd",
      "tree": "f098fd77fb7661b83e3c43f31aec6f30316f4f34",
      "parents": [
        "1cf9ad1abb599ce4057189e0db154cf00b4913f8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 06 18:07:23 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 06 18:07:23 2014 -0800"
      },
      "message": "AudioSystem: remove obsolete method.\n\nBug: 18067208.\nChange-Id: I9bbf9088485f5162c765ca504d9b784b956234c6\n"
    },
    {
      "commit": "62fe78b66c87339a64f047561e7b4aac606310e2",
      "tree": "95c63273d9323a8edd231c725b1e72c1369439a8",
      "parents": [
        "d556fad7475f4cd05a2199e9716ed8e01aa0ea9b",
        "85f480e7fd7c5e70c91d2f205b5c49488a84eb4d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 07 01:48:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 01:48:20 2014 +0000"
      },
      "message": "Merge \"Fix memory leak\" into lmp-mr1-dev"
    },
    {
      "commit": "e86c6d59dfa8aea8f321287cbb1f122623e5417a",
      "tree": "de24fd38277b8d4f3ee954fe4156798f34a045a3",
      "parents": [
        "1cf9ad1abb599ce4057189e0db154cf00b4913f8",
        "fef808d42a9c94b0b5ef3c3d5fb0a090edbc42da"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 06 23:38:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 06 23:38:18 2014 +0000"
      },
      "message": "Merge \"AnotherPacketSource.cpp: Do not queue discontinity signal buffer resulted from seek.\" into lmp-mr1-dev"
    },
    {
      "commit": "89bf2525c5b57f17260de5b00c5f3f78ac4b881e",
      "tree": "f974b0e3b0b40dc30c933b1b767a66d22c10cc27",
      "parents": [
        "1cf9ad1abb599ce4057189e0db154cf00b4913f8"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Jul 29 19:25:10 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 06 21:44:23 2014 +0000"
      },
      "message": "NuPlayer HTTPLiveSource: impl getSelectedTrack\n\nBug: 17514665\nChange-Id: I81c62553f2c5acb4d2436a9d8f04c10fdbe315d0\n"
    },
    {
      "commit": "fef808d42a9c94b0b5ef3c3d5fb0a090edbc42da",
      "tree": "94c39efa1b2c3cc6a3b40cf2b6e5f087dd6f917b",
      "parents": [
        "151b3f41ffcdf187580542ba0c0d3b84df16beed"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Oct 31 17:57:05 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 06 09:57:19 2014 -0800"
      },
      "message": "AnotherPacketSource.cpp: Do not queue discontinity signal buffer resulted from seek.\n\nThis will remove the unnecessary flush for seek.\n\nBug: 17511837\nChange-Id: I4b7acfc71a410372f5c630afb94b6a95d09d8974\n"
    },
    {
      "commit": "85f480e7fd7c5e70c91d2f205b5c49488a84eb4d",
      "tree": "79022052fe7237ba1d3a5af8e7f4e75f3ae84a1b",
      "parents": [
        "74adca9ad30b7f8a70d40c5237bade0d16c4ea58"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 05 17:44:51 2014 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 06 08:39:29 2014 -0800"
      },
      "message": "Fix memory leak\n\nChange-Id: I3f4110a88679b7e7841f40c6acdbf5dcde40fb19\n"
    },
    {
      "commit": "1cf9ad1abb599ce4057189e0db154cf00b4913f8",
      "tree": "1bbf6047da0636dddcac32a904d55c2cd87d2ba0",
      "parents": [
        "19a3f69d9d5398db62ee7b15f2c13052d7ee9f07",
        "2514d080c8a54ff603a45d7e336de668fe7329db"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Nov 06 02:36:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 06 02:36:17 2014 +0000"
      },
      "message": "Merge \"Pass resolution to Crypto plugin on format change\" into lmp-mr1-dev"
    }
  ],
  "next": "19a3f69d9d5398db62ee7b15f2c13052d7ee9f07"
}
