)]}'
{
  "log": [
    {
      "commit": "dfe5c4217d440740b47567e05c73018b44d183cd",
      "tree": "997b52c95517b9ac922eda2ba3402714c7c78122",
      "parents": [
        "f65f03bcc8b09820f81b90d8c0d3da6b66546aaf",
        "3b032b3865fd93173aadca0591eeea32853206f9"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Sat Apr 18 00:05:12 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 18 00:05:12 2015 +0000"
      },
      "message": "Merge \"NuPlayer: queue a deferred scan sources when flushing during scan\""
    },
    {
      "commit": "6d339f1f764bbd32e3381dae7bfa7c6c575bb493",
      "tree": "3b29d455c9f3ac73327a0117d2bc18d8b199a265",
      "parents": [
        "ee4e1b1a63758941460ae79a064249d3a5189443"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 17 16:15:53 2015 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 17 16:16:27 2015 -0700"
      },
      "message": "libmediaplayerservice: fix warnings, make warnings errors, use clang\n\nChange-Id: I1b2f6b65c5abbc366068a60b8909104f31b94228\n"
    },
    {
      "commit": "3b032b3865fd93173aadca0591eeea32853206f9",
      "tree": "fdc80def5b8a99b7360230497758a973e5eacbc2",
      "parents": [
        "2170233c49e50f3986cdc4f726016d6003cb5b8e"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Apr 17 15:49:06 2015 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Apr 17 15:53:17 2015 -0700"
      },
      "message": "NuPlayer: queue a deferred scan sources when flushing during scan\n\nalso refactor code to move scheduleRequestBuffers to decoder base.\n\nbug: 20267388\nChange-Id: I48f16adc6b4d4008f8fcda8b3b01c595ad199f8b\n"
    },
    {
      "commit": "ee4e1b1a63758941460ae79a064249d3a5189443",
      "tree": "d27f03a73170da9cce96b6eae5b2ecd874eace22",
      "parents": [
        "2170233c49e50f3986cdc4f726016d6003cb5b8e"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 17 13:46:19 2015 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 17 13:46:43 2015 -0700"
      },
      "message": "stagefright: warnings be gone, some are now errors, use clang\n\nChange-Id: I81f438ae444f04c12ae27ae4ef6d073033de172c\n"
    },
    {
      "commit": "2170233c49e50f3986cdc4f726016d6003cb5b8e",
      "tree": "177f9549d93188931db2ba9cde44a9b953ec641d",
      "parents": [
        "bfb03d2486e3c5dd21120bf403d68fa36323b102",
        "d3c28f66a48dd450f5f6d8a3ba92a40132bc45de"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 17 18:45:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 17 18:46:00 2015 +0000"
      },
      "message": "Merge \"NuPlayerDriver: Maintain the timeStamp after seek\""
    },
    {
      "commit": "d3c28f66a48dd450f5f6d8a3ba92a40132bc45de",
      "tree": "263dec7b22e9f6080c3feb78fa73fea54e63a022",
      "parents": [
        "3d66eb4128aebef31bb0fa44c4d53d6122294a26"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Fri Apr 10 16:47:16 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 17 11:43:11 2015 -0700"
      },
      "message": "NuPlayerDriver: Maintain the timeStamp after seek\n\n While offload playback is going on, if user pause\n and seeks to new position before offload tear-down,\n on resume playback starts from old time-stamp.\n\n Once tear-down happens NuPlayer loses updated time-stamp\n so while resuming it resumes playback with stale time-stamp.\n Make sure the updated time-stamp is maintained in\n NuPlayerDriver which is used while starting the playback\n after resume.\n\nauthored-by: Sharad Sangle \u003cassangle@codeaurora.org\u003e\nChange-Id: Ie125cf0fab1b0a237e67e43b0e5b4a704483ef99\n"
    },
    {
      "commit": "0852843d304006e3ab333081fddda13b07193de8",
      "tree": "f60be26aad988e89bc135a86f6e4ae8853c69a49",
      "parents": [
        "3d66eb4128aebef31bb0fa44c4d53d6122294a26"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Apr 08 09:06:54 2015 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Apr 16 19:01:15 2015 -0700"
      },
      "message": "stagefright: initial timed id3 support in hls\n\nChange-Id: I00a8a786b3f4b74742c34770edd94e937abe20a8\n"
    },
    {
      "commit": "c224ec53a17994fa97ab2f29304647c9f195c51c",
      "tree": "6086a1cf5720b82e7dc25b7ecd60af39d66c738d",
      "parents": [
        "f2326ac96366ec4d05f470cc4a0b407e7805bab7",
        "99f31604136d66ae10e20669fb6b5716f342bde0"
      ],
      "author": {
        "name": "Chris Watkins",
        "email": "watk@google.com",
        "time": "Thu Apr 16 17:06:37 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 16 17:06:42 2015 +0000"
      },
      "message": "Merge \"Unhide the android.media.[Media]DataSource interface.\""
    },
    {
      "commit": "99f31604136d66ae10e20669fb6b5716f342bde0",
      "tree": "20e64f4f26533b37b087ce8656b1040b8189e24f",
      "parents": [
        "2f33dbc6ca08d45efea2df775c158e2a11e07ab6"
      ],
      "author": {
        "name": "Chris Watkins",
        "email": "watk@google.com",
        "time": "Fri Mar 20 13:06:33 2015 -0700"
      },
      "committer": {
        "name": "Chris Watkins",
        "email": "watk@google.com",
        "time": "Wed Apr 15 17:12:22 2015 -0700"
      },
      "message": "Unhide the android.media.[Media]DataSource interface.\n\nThis allows apps to implement MediaDataSource, which is modeled on\nstagefright\u0027s DataSource, to supply media data to the framework. This\nwas already implemented for MediaExtractor, but it was renamed from\nDataSource.\n\nMediaExtractor, MediaPlayer and MediaMetadataRetriever each have a new\noverload: #setDataSource(android.media.MediaDataSource)\n\nOnly NuPlayer supports this new data source.\n\nThe change introduces:\n * IDataSource:        The binder interface for DataSource.\n * JMediaDataSource:   The native counterpart to the java interface. It\n                       implements IDataSource.\n * CallbackDataSource: A stagefright DataSource that wraps an\n                       IDataSource.\n\nChange-Id: Ib3c944b49cc8a792c8eb9c85e5015c07f298ebc1\n"
    },
    {
      "commit": "43cc944ecdc1634dccd92a1aad559f0caa13b53c",
      "tree": "c13828bb2144bbd42a3435bcfd46bb6961778e64",
      "parents": [
        "7233234a32d22d2ffb63ed4e92df339458047887"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 15 13:38:38 2015 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 15 13:41:31 2015 -0700"
      },
      "message": "fix NuPlayerDecoder discontinuity handling with async mode\n\nbug: 20234224\n\nChange-Id: I317b52b089f1e1432255100ef5f36322a231a399\n"
    },
    {
      "commit": "7bef0e14010d2527ac4f8abe26e13fe24c918ed1",
      "tree": "1a0554191c300c0b7c7b91684dc85bde26808321",
      "parents": [
        "d0210ed12d55356c000dca64c2653ed22c586478",
        "d9c2e9c81a6f75c4dd6818a3d5075a875d25a2d4"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Apr 13 15:47:16 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 13 15:47:17 2015 +0000"
      },
      "message": "Merge \"NuPlayerRenderer: adjust delay of posting drain audio message based on playback rate.\""
    },
    {
      "commit": "d9c2e9c81a6f75c4dd6818a3d5075a875d25a2d4",
      "tree": "b243561201665dedca09d985361340dc78b89983",
      "parents": [
        "ed5554fb1c837f6b1008d3910018c979c57da502"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 10 19:04:09 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 10 19:04:09 2015 -0700"
      },
      "message": "NuPlayerRenderer: adjust delay of posting drain audio message based on playback rate.\n\nBug: 19196501\nChange-Id: I2a98e877ed946e899af0974a0c2397c4146ce349\n"
    },
    {
      "commit": "e6109e2f10b43c2cc2561c6fd6633b5f988bd7a9",
      "tree": "3b8f9bd7d8caab7cdd2e58ad5a918619938db9a3",
      "parents": [
        "421f47ca9c2dcc78584b2bb609c3755483b55155"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 10 17:18:22 2015 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 10 17:48:56 2015 -0700"
      },
      "message": "mediaplayer: support async mode for widevine legacy mode\n\nBug: 14679336\nChange-Id: Id224eb8c31ec148ca9a144758cc56ddbf5465f5c\n"
    },
    {
      "commit": "421f47ca9c2dcc78584b2bb609c3755483b55155",
      "tree": "2b24b0f64519123129b99aaac3b8113f8b345c1f",
      "parents": [
        "f945d614116015361e489634737b9f70b6c39e66"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Mar 25 14:40:32 2015 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Apr 10 17:23:05 2015 -0700"
      },
      "message": "mediaplayer: use async mode in NuPlayer\n\nBug: 14679336\nChange-Id: I5e471a6e13be82a375afc2718599f27cd0255bf5\n"
    },
    {
      "commit": "30f4dfafc6ae73bb2e40deedc9904b8740ab995b",
      "tree": "60cff6ed50ed45d82fa38f5725c9ad0f1890484d",
      "parents": [
        "f75c2fef14354024ec27bff1444f9e50b5ef55a9",
        "8b63533e6aaff121378878998925c57dbe9a9e16"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Fri Apr 03 15:36:13 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 15:36:15 2015 +0000"
      },
      "message": "Merge \"nuplayer: Has video hint for offload\""
    },
    {
      "commit": "8b63533e6aaff121378878998925c57dbe9a9e16",
      "tree": "1c4a4f96b9983991d39938eec2eb9a1a55110591",
      "parents": [
        "5c86635f1ce78210ebb7f6de96b94a01d2ad9b7d"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Mar 30 17:59:47 2015 -0700"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Thu Apr 02 15:49:10 2015 -0700"
      },
      "message": "nuplayer: Has video hint for offload\n\nSend a hint indicating whether the clip being played has a video stream\nfrom NuPlayer to NuPlayerDecoderPassThrough. This hint is used to open the audio\nsink with the correct offload config. Currently, NuPlayerDecoderPassthrough\nalways calls openAudioSink with hasVideo set to false causing an unnecessary\nrecreation of AudioTrack.\n\nChange-Id: I7bc6c73818b65f9237a6e606721b7d48e1d807b9\nCRs-Fixed: 811510\n"
    },
    {
      "commit": "fcd3e94c075e964670d946f6ec5d82d059bf9e09",
      "tree": "04671659ed1853cb36f7e00e76dbc0e4720a2f20",
      "parents": [
        "ac41a6f253a69671f6e018fcc84daf0030615ca9"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Mar 31 10:06:48 2015 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 01 09:42:36 2015 -0700"
      },
      "message": "mediaplayer: ensure secure decoders are instantiated before starting source\n\nBug: 19984798\nChange-Id: Iff13cf03c4ce3141380f4d7ab4a2b1045c5ce747\n"
    },
    {
      "commit": "9bb23ff63e17b91a8480b142975067e8b6ab69ec",
      "tree": "9724db4b1a9a4b2f46342493a7fec445c9b73d98",
      "parents": [
        "27ce49ff57e36f0472f1675d0ff2b3a5f6aebbcc",
        "7c8708046117e03c0d38006bdd9685139df3ac6b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Mar 27 22:37:47 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 27 22:37:48 2015 +0000"
      },
      "message": "Merge \"HLS: faster switching and pause/resume on low buffer\""
    },
    {
      "commit": "7c8708046117e03c0d38006bdd9685139df3ac6b",
      "tree": "e921d42722d2c627e3c002560dadd5ea501e3919",
      "parents": [
        "514d7af22c5d6526309e71fadcff42b072c30241"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 17 16:27:56 2015 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Mar 27 15:36:39 2015 -0700"
      },
      "message": "HLS: faster switching and pause/resume on low buffer\n\n- when upswitching, discard excessive buffering on low\n  bandwidth variant, switch to new variant earlier\n\n- when downswitching, report newly found IDR positions\n  continuously, and switch as soon as new fetcher passes\n  playback position. This allows us to skip time-consuming\n  resumeUntil() of old fetcher most of the time\n\n- implement pause/resume on low buffering, and notify\n  buffering percentage\n\n- buffering parameter tuning, separate pause/resume/ready\n  buffer level and up/down switch buffer level, boost up\n  fetcher buffering significantly\n\nbug: 19567254\n\nChange-Id: I750dfcc6f861d78d16a71f501beb86d8129cb048\n"
    },
    {
      "commit": "91e5e043d766e39b0840f2ca2e658e2fe58987e7",
      "tree": "c64d01549385272f154c13898876b2ff85a61beb",
      "parents": [
        "5c86635f1ce78210ebb7f6de96b94a01d2ad9b7d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 26 14:16:17 2015 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 26 14:16:17 2015 -0700"
      },
      "message": "Fix seek issue\n\nThe removed code was original added to fix a deadlock, but is no longer needed.\n\nBug: http://b/19947213\nChange-Id: I4dd9d6fdf5eb6c0fb654953569dc87b820579f84\n"
    },
    {
      "commit": "230b188b2c2ed74aa017cb93f847e9a558feba95",
      "tree": "ca0e21a1d99297745220acbaf634a313e2de3ac2",
      "parents": [
        "802a568f77b9a372537e4216b2a7cbb203958a87"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Mar 19 15:13:51 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Mar 19 15:35:56 2015 -0700"
      },
      "message": "mediaplayer: check existence of AudioTrack before trying to access it.\n\nBug: 19828971\nChange-Id: Ib7fdb8bf36e33ef95d21fa5342cd1647fd81ff24\n"
    },
    {
      "commit": "c84eb736fd051c37e1d7e8585d14612713388a58",
      "tree": "1b52e75ec6fc5699e13b8cdc4b350ad29b4c7f7e",
      "parents": [
        "3cb7e0dcc2e915280cb9a5121def8b5277d8a6e6",
        "c287cad65bd0c7a79e43f4decc5e04593027a7c8"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 12 20:34:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 12 20:34:53 2015 +0000"
      },
      "message": "Merge \"nuplayer: remove prefill cache code\""
    },
    {
      "commit": "3cb7e0dcc2e915280cb9a5121def8b5277d8a6e6",
      "tree": "281f392a8018d7398667b3cf390ce25438bb93e6",
      "parents": [
        "5c9054bc6efc080b265e028f2ebb1abd2a2e3953",
        "66704af4d82c2b6303609b29402641f861fdcb19"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 12 20:32:39 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 12 20:32:40 2015 +0000"
      },
      "message": "Merge \"NuPlayer: play out pending frames on discontinuity\""
    },
    {
      "commit": "c287cad65bd0c7a79e43f4decc5e04593027a7c8",
      "tree": "e38414751df94e897150c36887fa26c6004fa37b",
      "parents": [
        "88b456640085fa0e92d66e42ddaf24449c8c4fdb"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 19 18:30:30 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 12 10:43:30 2015 -0700"
      },
      "message": "nuplayer: remove prefill cache code\n\nit\u0027s only needed if we post Reset to GenericSource\u0027s looper, but\nwe now do reset outside NuPlayer or GenericSource\u0027s looper.\n\nalso don\u0027t allow buffering percentage to go backward unless\nthere\u0027s seek or pause.\n\nChange-Id: I1a39df4bc0a685f76d8558c368db1bac92b490c2\n"
    },
    {
      "commit": "366d92e0b2732406fff4153f6d3d0f7de50a425b",
      "tree": "8bf5ce2d43ad1a42e811a83c519d8965b1465e25",
      "parents": [
        "0911783d3cd2a14bb0fb0b1839c2b85a8e5e2649",
        "8edb3f85f58e8738582e8f9abbc018c85100b712"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 11 18:43:55 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 11 18:43:56 2015 +0000"
      },
      "message": "Merge \"mediaplayer: update mAnchorNumFramesWritten when anchor time is updated.\""
    },
    {
      "commit": "8edb3f85f58e8738582e8f9abbc018c85100b712",
      "tree": "ae9bbfd270264be3bcd88b9a3771ef523c66e4db",
      "parents": [
        "1c2a7a6391a5465cb5b059bb004fbbc884ce1a29"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 11 11:07:45 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 11 11:42:47 2015 -0700"
      },
      "message": "mediaplayer: update mAnchorNumFramesWritten when anchor time is updated.\n\nThis will fix the max duration for anchor time.\n\nBug: 19196501\nChange-Id: I9b8e0775105e31d47d919afaf49ca1e3d608a2f6\n"
    },
    {
      "commit": "66704af4d82c2b6303609b29402641f861fdcb19",
      "tree": "d0e4590f29767a93b3abed762f04e2f41eba2928",
      "parents": [
        "d4db9dcd7d29234893d580c329f23242197fe664"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 03 19:32:35 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 10 14:43:10 2015 -0700"
      },
      "message": "NuPlayer: play out pending frames on discontinuity\n\nbug: 19567254\n\nChange-Id: Iff689e1eea54283095068d68bcdff4c2674af554\n"
    },
    {
      "commit": "3f27436a9346f043f52265da1e6a74cde2bffd4d",
      "tree": "a7404d2ba96071bea1f02f93f6782214fc1e4cc1",
      "parents": [
        "0655386a0dc15fc31883d2e38917ff0e9db89ae7"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 05 14:35:41 2015 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Mar 10 10:36:09 2015 -0700"
      },
      "message": "stagefright: don\u0027t use ALooperRoster mutex for reply handling\n\nChange replyID-s from uint32_t to an object\nMove reply handling into the loopers (to reuse a common mutex)\n\nBug: 19607784\nChange-Id: Iaa035b846c424c5687ed17ce1079b325e86c54be\n"
    },
    {
      "commit": "1c2a7a6391a5465cb5b059bb004fbbc884ce1a29",
      "tree": "ad4c1d401c2b63d328d7b047fe1cf51ffe2ce364",
      "parents": [
        "0ad38cd9674f2f7180d3310820d7dd2820159320",
        "5833b6aad2c46ba516bdc8262f4fc4667e8018ed"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Mar 10 00:47:31 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 10 00:47:31 2015 +0000"
      },
      "message": "Merge \"mediaplayer: move MediaClock from NuPlayer to libstagefright.\""
    },
    {
      "commit": "5833b6aad2c46ba516bdc8262f4fc4667e8018ed",
      "tree": "ff4014a0c9a409d1849bf9d2c7583a361ff9637b",
      "parents": [
        "e8c9a8f78a9f9213060e5d54a15cde364df3e0d0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Mar 09 17:01:47 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Mar 09 17:01:47 2015 -0700"
      },
      "message": "mediaplayer: move MediaClock from NuPlayer to libstagefright.\n\nBug: 19666434\nChange-Id: I86865e594226419bbbbee217098f96434e43afbe\n"
    },
    {
      "commit": "1d15ab58bf8239069ef343de6cb21aabf3ef7d78",
      "tree": "d4b3266c9baf5e6dee214fc6562391101e198be7",
      "parents": [
        "5804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Mar 04 16:46:34 2015 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 05 17:49:50 2015 -0800"
      },
      "message": "media: switch to new AMessage handling\n\nBug: 19607784\nChange-Id: I94cddcb81f671422ad4982a23dc4acfe57a9f1aa\n"
    },
    {
      "commit": "c10e7f121d346b433c32d1c0d791c4b547cbe60e",
      "tree": "2edbb48c0eafa968049c75c864bebb6684e35cf9",
      "parents": [
        "1a86a8adbf4ab43a6aed2c3c8aa0830c001adb77",
        "62ca0231787d5fe23ee95c482d15b8434add2427"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Mar 06 00:42:39 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 06 00:42:39 2015 +0000"
      },
      "message": "Merge \"Revert \"Fix NuPlayer::Decoder input buffer loss upon seamless format change\"\""
    },
    {
      "commit": "c8206ffa7d2361dd89c09166ff85ca6396babe28",
      "tree": "c56033dda077fce3c622bfdd3807b754f83c7ad3",
      "parents": [
        "e8c9a8f78a9f9213060e5d54a15cde364df3e0d0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 04 13:59:37 2015 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 04 13:59:37 2015 -0800"
      },
      "message": "mediaplayer: call setPlaybackRate after Renderer has looper set up.\n\nBug: 19196501\nChange-Id: Iaac34a4a9e095799eb60e7d7a9bc228f0c7212b6\n"
    },
    {
      "commit": "62ca0231787d5fe23ee95c482d15b8434add2427",
      "tree": "81e378e94592d3afbb5f691f2c57b2d049d255f5",
      "parents": [
        "c5eef08195a6f81c2ae8fe7d4c346f12b15944e5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Mar 04 18:47:04 2015 +0000"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Mar 04 18:47:04 2015 +0000"
      },
      "message": "Revert \"Fix NuPlayer::Decoder input buffer loss upon seamless format change\"\n\nThis reverts commit c5eef08195a6f81c2ae8fe7d4c346f12b15944e5.\n\nChange-Id: I49d817ed367aaa29a93e22135e9adf1e2ad253f1\n"
    },
    {
      "commit": "e8c9a8f78a9f9213060e5d54a15cde364df3e0d0",
      "tree": "04a444ead06fd5ad998b5132acc8962481dd93f3",
      "parents": [
        "6d32d81f966b1e5e6e037d55a5003fea4b87e55b",
        "c5eef08195a6f81c2ae8fe7d4c346f12b15944e5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Mar 04 00:22:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 04 00:22:03 2015 +0000"
      },
      "message": "Merge \"Fix NuPlayer::Decoder input buffer loss upon seamless format change\""
    },
    {
      "commit": "7d3f4df0a77e052a7d37de9268aff8c2ed0909cc",
      "tree": "060550294c95fe8a35ba5c7c0c9d476d7c91d788",
      "parents": [
        "1ba399206f6a99fec17331186041b55c3733c8d8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Mar 03 15:28:00 2015 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Mar 03 15:28:00 2015 -0800"
      },
      "message": "mediaplayer: use non-blocking mode for AudioSink::write().\n\nThis cherry picks https://googleplex-android-review.git.corp.google.com/#/c/643541/ to master.\n\nBug: 19448263\nChange-Id: I43dea830212de79c2b080185b6c6b36078f517d2\n"
    },
    {
      "commit": "212765f2d5ee6e533f3d032d6609125faa95bf48",
      "tree": "8e6701ad7c2b2af5f9200ab79960de1c724f7635",
      "parents": [
        "7c4820d23b68f748b8dfff3d4bb5b13e9d4811a8",
        "9816016afb2a13c6a866cd047d57020566a8b9a9"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 25 23:10:06 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 25 23:10:07 2015 +0000"
      },
      "message": "Merge \"mediaplayer: support dynamic playback rate\""
    },
    {
      "commit": "9816016afb2a13c6a866cd047d57020566a8b9a9",
      "tree": "176a616a7d5da21447e880158cef57516efee9c3",
      "parents": [
        "658fc18d8e632441cd5d83a4f74b53620cbac1fe"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 04 17:01:11 2015 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 24 16:34:11 2015 -0800"
      },
      "message": "mediaplayer: support dynamic playback rate\n\nBug: 19196501\n\nChange-Id: I856b1507d5fa2cedfb645706d2435683a7d3e050\n"
    },
    {
      "commit": "fc6cfd8343ae8919e85ec22efed9df626fe8854b",
      "tree": "fcf83cc3b64ca5d8db11669e079166018c6488e9",
      "parents": [
        "07aed75a681793474487e7e5e100d21c2f31de9c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 19 16:39:59 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Feb 23 11:08:19 2015 -0800"
      },
      "message": "nuplayer: do not use cached source for wvm content\n\nbug: 18730095\nChange-Id: Ibd4f54907949daae1d095fa0922050310d16698f\n"
    },
    {
      "commit": "c5eef08195a6f81c2ae8fe7d4c346f12b15944e5",
      "tree": "312897fec636a262c99bd36869ef85efa68486bc",
      "parents": [
        "27a3e954a587c2cf070fdd2aae7d93d839888db9"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Feb 20 17:01:55 2015 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Feb 20 17:11:09 2015 -0800"
      },
      "message": "Fix NuPlayer::Decoder input buffer loss upon seamless format change\n\nBug: 19462710\nChange-Id: I30f2ab76785a524e95b404b8b18ddc862e9c414e\n"
    },
    {
      "commit": "e2cce8139fb5a205170d4e878cc9fea5493755d1",
      "tree": "834cec19f223598b38eb045749a7a0646af7c0a2",
      "parents": [
        "8f7b7fa417566e9a6a29ea9f0e220b3cd6d1a9e3",
        "78acc89eae9789366b6384707861f4563addf2d3"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 12 22:21:41 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 12 22:21:42 2015 +0000"
      },
      "message": "Merge \"process all SEI messages for CC extraction\""
    },
    {
      "commit": "78acc89eae9789366b6384707861f4563addf2d3",
      "tree": "fd802dae4773a8cbffc6a7abb18fb8a485d68e84",
      "parents": [
        "9fdb3bd42af0876a9b76bae42d7aba2287b53af4"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Feb 06 22:11:23 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 12 14:02:24 2015 -0800"
      },
      "message": "process all SEI messages for CC extraction\n\nbug: 19297083\nChange-Id: I5b89e35cc2bd5fb2f332872941e7978f15a6f403\n"
    },
    {
      "commit": "49c9a53d098091791b0e6e2d97ce6bf0d562d17e",
      "tree": "54d465b8b2e933cda923baa0d7e8e1e857b67878",
      "parents": [
        "c9f122d8f32ba6928ac9087448025fa3bed1553d",
        "157defdde7013062bbd04f7e873b6856adce14ca"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Feb 10 15:57:08 2015 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Feb 10 15:57:08 2015 -0800"
      },
      "message": "resolved conflicts for merge of 157defdd to master\n\nChange-Id: I14fd8063fa052f16868b8053a211190092131317\n"
    },
    {
      "commit": "157defdde7013062bbd04f7e873b6856adce14ca",
      "tree": "bf6503e41529df950c27f694e256519add85752b",
      "parents": [
        "6d5a1afac2a7bca6b171261ca9b237c3a516e567",
        "4fc5d758d6722bedf341e5d93a0ba5698c658c29"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Feb 10 04:33:08 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 10 04:33:08 2015 +0000"
      },
      "message": "am 4fc5d758: am 0c11f31b: Merge \"nuplayer: acquire wakelock during offload pause timeout\" into lmp-mr1-dev\n\n* commit \u00274fc5d758d6722bedf341e5d93a0ba5698c658c29\u0027:\n  nuplayer: acquire wakelock during offload pause timeout\n"
    },
    {
      "commit": "35d5af131c9d4962e935082f204ccd6a2130861c",
      "tree": "3a0456f7e9ddba7cddb0769f2a15d1589f820647",
      "parents": [
        "17e95f40a534101e2df48f077a8029430adef6c3"
      ],
      "author": {
        "name": "Weiyin Jiang",
        "email": "wjiang@codeaurora.org",
        "time": "Wed Jan 28 16:14:02 2015 +0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Feb 06 16:32:24 2015 -0800"
      },
      "message": "nuplayer: acquire wakelock during offload pause timeout\n\nHold a wakelock while paused in audio offload mode, until audio\nteardown event is received, or pause is canceled.\n\nSince ARM cores are sleeping, the delayed AMessage will not be\nreceived, and the audio output driver will not be closed.\nThis blocks XO shutdown.\n\nBug: 19297092\nChange-Id: I3d11fef633e3f2783f4aa31e71285e2fa09d234c\n"
    },
    {
      "commit": "abc4872bb8af6699c8c5fc285a538bf492c51748",
      "tree": "bb46235d2708cb576ff451b13a10b4698ab4500b",
      "parents": [
        "5549bb5b651db8465ac846b3490eee9378253a76",
        "78a0d1acd4cb7103bba349f8a23fd1814bed483b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Feb 06 13:31:55 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 06 13:31:55 2015 +0000"
      },
      "message": "am 78a0d1ac: am 04d2804a: am 13cfe85a: Merge \"reuse CCDecoder on video discontinuity\" into lmp-mr1-dev\n\n* commit \u002778a0d1acd4cb7103bba349f8a23fd1814bed483b\u0027:\n  reuse CCDecoder on video discontinuity\n"
    },
    {
      "commit": "78a0d1acd4cb7103bba349f8a23fd1814bed483b",
      "tree": "135356292f21561ad4fe8ce5a2ec8d4bed2e2e6c",
      "parents": [
        "e576086224f6e630159eaeec59ab5146c8533dc7",
        "04d2804a212c2625425cb23b2b778ab4f3683769"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Feb 06 00:06:52 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 06 00:06:52 2015 +0000"
      },
      "message": "am 04d2804a: am 13cfe85a: Merge \"reuse CCDecoder on video discontinuity\" into lmp-mr1-dev\n\n* commit \u002704d2804a212c2625425cb23b2b778ab4f3683769\u0027:\n  reuse CCDecoder on video discontinuity\n"
    },
    {
      "commit": "13cfe85ae9f4daab1d0bfcd248fc2576585e259a",
      "tree": "f12d2ac589e97085e5ef6f8f47655ee69479c011",
      "parents": [
        "0662f5b0c43fcfdf055704d02ea41202c9b6094a",
        "341ab6eebb6a992ec7bdf095420cf82bcab1c6b3"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 04 23:24:38 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 04 23:24:38 2015 +0000"
      },
      "message": "Merge \"reuse CCDecoder on video discontinuity\" into lmp-mr1-dev"
    },
    {
      "commit": "b96efd3cd7ff49e85049a1515b8bb3b7514dce0b",
      "tree": "49f0352ad0769b1acb3f79b75f1409a0f8c03913",
      "parents": [
        "c42ab4fcd42875ef74f8e9b8d8150f7bcfd0cd3b",
        "7b15cb33847e6282ea8352c98894683b796127f3"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 04 23:07:35 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 04 23:07:36 2015 +0000"
      },
      "message": "Merge \"mediaplayer: Add MediaClock component and use it in NuPlayerRenderer.\""
    },
    {
      "commit": "341ab6eebb6a992ec7bdf095420cf82bcab1c6b3",
      "tree": "bc31f63e34f4a74a7bf679786e5a9af005348ed3",
      "parents": [
        "77f877f82733263bca825b92a3f4537caafabf74"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 04 13:37:18 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 04 13:38:59 2015 -0800"
      },
      "message": "reuse CCDecoder on video discontinuity\n\nbug: 19266084\nChange-Id: I06ef57b09b048a85f77be4dee27599c4f60aacc9\n"
    },
    {
      "commit": "c9fcfb923bb891d980238d47f33fdf488f758dc2",
      "tree": "546704e694b862ad8ded7f0e0899fa562c468424",
      "parents": [
        "e074a93046ebe5cea0b55c3a479e082a426e1e07",
        "07840f7544de883fe5c00cbd18bc6458a20e2691"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 04 15:04:04 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 04 15:04:04 2015 +0000"
      },
      "message": "am 07840f75: am 3a7ed550: am efbb6195: NuPlayer: pause playback when buffering is low\n\n* commit \u002707840f7544de883fe5c00cbd18bc6458a20e2691\u0027:\n  NuPlayer: pause playback when buffering is low\n"
    },
    {
      "commit": "07840f7544de883fe5c00cbd18bc6458a20e2691",
      "tree": "7d87728d81255aea09833408830e33f06f277828",
      "parents": [
        "f6b1396150ed55fa9829e31f11533cd65c61d914",
        "3a7ed550579b5ecd99439c44ce13a48b3f0639ae"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Feb 04 02:03:01 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 04 02:03:01 2015 +0000"
      },
      "message": "am 3a7ed550: am efbb6195: NuPlayer: pause playback when buffering is low\n\n* commit \u00273a7ed550579b5ecd99439c44ce13a48b3f0639ae\u0027:\n  NuPlayer: pause playback when buffering is low\n"
    },
    {
      "commit": "7b15cb33847e6282ea8352c98894683b796127f3",
      "tree": "576c3736eead5a1e9502ff08c50d22b56117091b",
      "parents": [
        "8517576f7ee1fcb72655b91ff18390a514858cf3"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 03 17:46:06 2015 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 03 17:46:06 2015 -0800"
      },
      "message": "mediaplayer: Add MediaClock component and use it in NuPlayerRenderer.\n\nAlso fix some racing conditions, remove unused code in NuPlayerRenderer.\n\nThis obsoletes https://googleplex-android-review.git.corp.google.com/#/c/609880/.\n\nBug: 19196501\nChange-Id: I0eebeb573ce7229dd8bacecd0e1c5d6f5634a72f\n"
    },
    {
      "commit": "efbb61950db36a5eb789be83f077246172507c67",
      "tree": "0904a0a4b377dd60935c274b29bf1550d0038389",
      "parents": [
        "77f877f82733263bca825b92a3f4537caafabf74"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Jan 30 17:13:27 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Feb 03 16:36:09 2015 -0800"
      },
      "message": "NuPlayer: pause playback when buffering is low\n\nalso fix buffering percentage report (should be the buffered position)\n\nbug: 18730095\nChange-Id: I11e7ca4ba9e772a1ae76861ca1ff1725b62f65ae\n"
    },
    {
      "commit": "d7dbf4179aa87a018d4a8a4cd0958a5ed5d7fe5f",
      "tree": "ee55d13457f0cf3d10883b2ac9ea68905e5ba180",
      "parents": [
        "5aa874ad77f366d93abe118b1edab1511ec04dec",
        "82bbd248d0578e5da04aa95d9906006275c330b5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Feb 02 15:37:10 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 02 15:37:10 2015 +0000"
      },
      "message": "am 82bbd248: am c37a6e6b: am 7a434265: Merge \"Wrong format used in seamless check\" into lmp-mr1-dev\n\n* commit \u002782bbd248d0578e5da04aa95d9906006275c330b5\u0027:\n  Wrong format used in seamless check\n"
    },
    {
      "commit": "82bbd248d0578e5da04aa95d9906006275c330b5",
      "tree": "12f5ca992ef7b93e46463a0eb0f53910c76a24b7",
      "parents": [
        "f5a60185ec550d8447a44172027925550e6849d9",
        "c37a6e6bbe038cf94d11abdb6f8003e7476e11af"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Feb 02 15:29:51 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 02 15:29:51 2015 +0000"
      },
      "message": "am c37a6e6b: am 7a434265: Merge \"Wrong format used in seamless check\" into lmp-mr1-dev\n\n* commit \u0027c37a6e6bbe038cf94d11abdb6f8003e7476e11af\u0027:\n  Wrong format used in seamless check\n"
    },
    {
      "commit": "7a4342651cc6539fc9a8775ce1e322a47adeda78",
      "tree": "874385f4926736daaea5309e0090c950d4989009",
      "parents": [
        "296a0d038e9e485d7a10b54057f24a562a2e76e3",
        "7abbd4c954e26fb69235831e11090ad61cec7b94"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Jan 31 03:49:13 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 31 03:49:13 2015 +0000"
      },
      "message": "Merge \"Wrong format used in seamless check\" into lmp-mr1-dev"
    },
    {
      "commit": "7abbd4c954e26fb69235831e11090ad61cec7b94",
      "tree": "20c13e7b64e248ec04e8130f1474fdad80d8c800",
      "parents": [
        "64c496c8d51c71605cd34a510da2ecd8180656ec"
      ],
      "author": {
        "name": "joakim johansson",
        "email": "joakim.c.johansson@sonymobile.com",
        "time": "Fri Jan 30 14:16:03 2015 +0100"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Jan 30 18:15:57 2015 -0800"
      },
      "message": "Wrong format used in seamless check\n\nThe targetFormat that is sent to supportsSeamlessFormatChange\nfunction corresponds to the data in mInputFormat but the format\nprovided is the output format, so the check will always return\nfalse.\n\nUse the input format instead.\n\nBug: 18821145\nChange-Id: Iea3cbd59e423da5f2f813e98505b40dc341061b8\n"
    },
    {
      "commit": "2ac21a5d35591acc7f7ff4f85fda146ebeaa2551",
      "tree": "4d5b3052cedb8b4b7878f24f69394861cf3eb322",
      "parents": [
        "3e68c081d905e3164e11797287484beb68747ab5",
        "5fcd4d19e95d5237fef46b1dec8b6f649ea64b84"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jan 28 03:25:33 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 28 03:25:33 2015 +0000"
      },
      "message": "am 5fcd4d19: am 0bd5274e: am 231406d5: NuPlayerRenderer: return current real time as render time for video frame when paused.\n\n* commit \u00275fcd4d19e95d5237fef46b1dec8b6f649ea64b84\u0027:\n  NuPlayerRenderer: return current real time as render time for video frame when paused.\n"
    },
    {
      "commit": "5fcd4d19e95d5237fef46b1dec8b6f649ea64b84",
      "tree": "4a194104b83fefb7dfd657f294d02909f8073e12",
      "parents": [
        "88d74d203cda0ee6da387f3a5b929934b505d307",
        "0bd5274ef93eae389cd7da89e163b1a5b67a47e1"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jan 28 03:22:00 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 28 03:22:00 2015 +0000"
      },
      "message": "am 0bd5274e: am 231406d5: NuPlayerRenderer: return current real time as render time for video frame when paused.\n\n* commit \u00270bd5274ef93eae389cd7da89e163b1a5b67a47e1\u0027:\n  NuPlayerRenderer: return current real time as render time for video frame when paused.\n"
    },
    {
      "commit": "980b106908cb8e105bb8849749722c5088e2f6eb",
      "tree": "0e5e837bd3f127e7af4caffc0e2ec83444466a83",
      "parents": [
        "5c2be9eddba74a503c55808816aa37cc8ce18c50",
        "9391844deb3f6a442745cea62f78aca2cea19e50"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 27 15:38:17 2015 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 27 15:38:17 2015 -0800"
      },
      "message": "resolved conflicts for merge of 9391844d to master\n\nChange-Id: I348a71d1b3e3238bc3871a69454edc8247d03111\n"
    },
    {
      "commit": "231406d597cca1c9c009f870fbb62e46b8475186",
      "tree": "db58d4edd4e0407ce8076bf3f6c9819e8f882649",
      "parents": [
        "64c496c8d51c71605cd34a510da2ecd8180656ec"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 27 11:42:42 2015 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 27 15:13:32 2015 -0800"
      },
      "message": "NuPlayerRenderer: return current real time as render time for video frame when paused.\n\nThis allows video to display immediately during seeking in paused state.\nAlso fix some racing condition.\n\nBug: 19153026\nChange-Id: I0d7a8981ca3c121f5dbc430c2c6d8b7522edc24a\n"
    },
    {
      "commit": "9391844deb3f6a442745cea62f78aca2cea19e50",
      "tree": "c8868256f6cbd8e683b45c7fa4e3d56aa26d2574",
      "parents": [
        "b7909adcef247c627fbe8026624b9ecbeba47655",
        "b955b7224382b488a4d8d5663c92118feb8deb1e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 27 10:04:01 2015 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 27 10:04:01 2015 -0800"
      },
      "message": "resolved conflicts for merge of b955b722 to lmp-mr1-dev-plus-aosp\n\nChange-Id: I385371869169eee4fe6330ffe0abc5eda4cb4f72\n"
    },
    {
      "commit": "b955b7224382b488a4d8d5663c92118feb8deb1e",
      "tree": "30033d3aeffb55ee270e5cdb2711bdec28346f55",
      "parents": [
        "64b08d230c94872e014831bdb7b8a323c4b584ec",
        "47deb15e99cbf60e558027e074b7415c95637943"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 27 17:52:57 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 27 17:52:57 2015 +0000"
      },
      "message": "am 47deb15e: Merge \"Remove MediaPlayerService::decode()\"\n\n* commit \u002747deb15e99cbf60e558027e074b7415c95637943\u0027:\n  Remove MediaPlayerService::decode()\n"
    },
    {
      "commit": "b7848f1c442bc8c71020957948d1b003a62a25b7",
      "tree": "b0a1dfd418429171c0af5379a1820569775a840b",
      "parents": [
        "1ed13b3b443735e7f7b5002954f31741b0b1c572"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 04 08:57:56 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jan 26 07:57:39 2015 -0800"
      },
      "message": "Remove MediaPlayerService::decode()\n\nand make SoundPool use MediaCodec for decoding files to PCM.\n\nBug: 18239054\nChange-Id: Ia144fc1bbb0d2787638ee972e2224339b4965310\n"
    },
    {
      "commit": "50870c983127f2c9e0a3c04a46ea7c24ad2271cf",
      "tree": "3247012a33b750e461459a1d167b73f39a2a6e04",
      "parents": [
        "cd7382b7dcb2ba428a51264cf4e1d369884ff161",
        "4beddcf5130bd24847c1e87696f864df41d42cae"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Jan 16 00:44:39 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 16 00:44:39 2015 +0000"
      },
      "message": "am 4beddcf5: am 9e308de9: am 4d4ea7f7: Merge \"do not use paused postition if it\\\u0027s not available\" into lmp-mr1-dev\n\n* commit \u00274beddcf5130bd24847c1e87696f864df41d42cae\u0027:\n  do not use paused postition if it\u0027s not available\n"
    },
    {
      "commit": "4beddcf5130bd24847c1e87696f864df41d42cae",
      "tree": "0b974f4ea2d41c42a4e86104d6dae946ee1c4d41",
      "parents": [
        "c09eb2dfef090864e3ab827c12e724424fc8ca01",
        "9e308de9214e55dd0d102484ea44b117ec050540"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Jan 16 00:35:32 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 16 00:35:32 2015 +0000"
      },
      "message": "am 9e308de9: am 4d4ea7f7: Merge \"do not use paused postition if it\\\u0027s not available\" into lmp-mr1-dev\n\n* commit \u00279e308de9214e55dd0d102484ea44b117ec050540\u0027:\n  do not use paused postition if it\u0027s not available\n"
    },
    {
      "commit": "4d4ea7f7ca04cfe70ecf6f35658389f52ae6d3c1",
      "tree": "65233f48967b2de8c1ce6ac794db49c59f9e6110",
      "parents": [
        "21291a420e11ccdf23e955c3dc390304230ddce3",
        "cec7febc48ff76b293ace0cc12a6288f13f72293"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Jan 16 00:24:48 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 16 00:24:48 2015 +0000"
      },
      "message": "Merge \"do not use paused postition if it\u0027s not available\" into lmp-mr1-dev"
    },
    {
      "commit": "cec7febc48ff76b293ace0cc12a6288f13f72293",
      "tree": "e767cf2b97cdef0fc856edcbdc631927595d987c",
      "parents": [
        "ad019236b9bc4a030c2740fd9cfdd0670b118d5c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Jan 15 11:22:24 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Jan 15 11:22:24 2015 -0800"
      },
      "message": "do not use paused postition if it\u0027s not available\n\nbug: 18896133\nbug: 18996505\nChange-Id: I1e24fabe3fe8f2275b1ccc0df100cb2c4ba2264b\n"
    },
    {
      "commit": "32479c9f7a004d2c1daeac015684529b0158f8a4",
      "tree": "d0f6cb7cb08b29506090a4cf44e4c723f903fb16",
      "parents": [
        "2326ed104477a80c850eb3cef6a7039f1585a69d",
        "7993d6b343f2723872dac085756743630371454d"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Jan 08 18:03:45 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 08 18:03:45 2015 +0000"
      },
      "message": "am 7993d6b3: am e0344754: am 468977f0: Merge \"mark any copyrighted content as protected to disable capture\" into lmp-mr1-dev\n\n* commit \u00277993d6b343f2723872dac085756743630371454d\u0027:\n  mark any copyrighted content as protected to disable capture\n"
    },
    {
      "commit": "7993d6b343f2723872dac085756743630371454d",
      "tree": "3577f12b2dee471ed021462b9ca731fb5e85a51d",
      "parents": [
        "27a78b56e1cf9814971192883cb7d15c186465f7",
        "e03447548d1c56fa9875cac7d500f1012a6b5c26"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Jan 08 17:57:36 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 08 17:57:36 2015 +0000"
      },
      "message": "am e0344754: am 468977f0: Merge \"mark any copyrighted content as protected to disable capture\" into lmp-mr1-dev\n\n* commit \u0027e03447548d1c56fa9875cac7d500f1012a6b5c26\u0027:\n  mark any copyrighted content as protected to disable capture\n"
    },
    {
      "commit": "1713460104b86f6be3a5d9993d9ace864d889b2d",
      "tree": "47be834572c94f418cd6d087e953a53a9d655127",
      "parents": [
        "5db7897ddd32e3ec3ab45ecdb6f21b6265e7e14a"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Jan 07 16:14:34 2015 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Jan 07 17:08:43 2015 -0800"
      },
      "message": "mark any copyrighted content as protected to disable capture\n\nbug: 18916274\nChange-Id: I23f096b51433bf18a10dc5fe6dc6b75c3881c340\n"
    },
    {
      "commit": "64cbdee08a18b25448a5fb0b058d3b83d5630d7f",
      "tree": "d61ce681054523ad22f2d9af19f2cada4db94279",
      "parents": [
        "5d0937c663a9c3a20ca981bedf0b75e7d110eb34",
        "545d5c41f04ec591bd0f034434b6d65ffd4c4c9c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Dec 29 17:33:08 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 29 17:33:08 2014 +0000"
      },
      "message": "am 545d5c41: am 69bdf92f: am 0d19abb4: Merge \"NuPlayer: Do not recreate AudioTrack if not needed\" into lmp-mr1-dev\n\n* commit \u0027545d5c41f04ec591bd0f034434b6d65ffd4c4c9c\u0027:\n  NuPlayer: Do not recreate AudioTrack if not needed\n"
    },
    {
      "commit": "545d5c41f04ec591bd0f034434b6d65ffd4c4c9c",
      "tree": "3570cf5cb6ea7ecf6484911576bfedc30088e793",
      "parents": [
        "8564e13b37d372da78bce08f34a3610795ae173c",
        "69bdf92f3e20147a08194da45e3c61ac7f16d280"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Dec 29 17:14:34 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 29 17:14:34 2014 +0000"
      },
      "message": "am 69bdf92f: am 0d19abb4: Merge \"NuPlayer: Do not recreate AudioTrack if not needed\" into lmp-mr1-dev\n\n* commit \u002769bdf92f3e20147a08194da45e3c61ac7f16d280\u0027:\n  NuPlayer: Do not recreate AudioTrack if not needed\n"
    },
    {
      "commit": "0d19abb440c7e62e944efbeadf02299990f9a589",
      "tree": "77638d29013a8bae57a7232e4aa5ea71baadc341",
      "parents": [
        "f580806d893c4631f5324ff0af5c2db68a40ef42",
        "f0e83644637bd05852c244df481f21a0d435ff66"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Dec 23 00:27:46 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 23 00:27:46 2014 +0000"
      },
      "message": "Merge \"NuPlayer: Do not recreate AudioTrack if not needed\" into lmp-mr1-dev"
    },
    {
      "commit": "f0e83644637bd05852c244df481f21a0d435ff66",
      "tree": "1906a30a9d09e3def397d39fba5d64deadc78ae5",
      "parents": [
        "e48cf5b8f823c30af93577c1e380d752ac69b871"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 19 17:55:56 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 19 18:15:33 2014 -0800"
      },
      "message": "NuPlayer: Do not recreate AudioTrack if not needed\n\nOn output format change from the decoder, check if a new audio\ntrack is really needed. This prevents excessive track\ncreation/destruction during seeks.\n\nBug: 18817027\nChange-Id: I4290dcb90cb35bc1303b025e162f6b813d49a05b\n"
    },
    {
      "commit": "8e883a15d950c461f258104d7fe5c3c81c1db0de",
      "tree": "dbb2d0fdffc739477ecf4f8e4596174ded92a1ef",
      "parents": [
        "68586a6c3d8ce45c054bb7e7c3c38f70f3e167fd",
        "bae511e3b982355fbc75ae2ba13bb88feab9fe8c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 19 22:31:54 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 19 22:31:54 2014 +0000"
      },
      "message": "am bae511e3: am 4af263bd: am ad019236: Merge \"NuPlayer: reports paused position in paused state.\" into lmp-mr1-dev\n\n* commit \u0027bae511e3b982355fbc75ae2ba13bb88feab9fe8c\u0027:\n  NuPlayer: reports paused position in paused state.\n"
    },
    {
      "commit": "bae511e3b982355fbc75ae2ba13bb88feab9fe8c",
      "tree": "67593d3fda0779b0850f57c44756c4e9deca5201",
      "parents": [
        "01a7aaf2cec81edbdc2bb62a5a46594312cce078",
        "4af263bd15a8177f1e28a53a2765277022d7372e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 19 22:27:00 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 19 22:27:00 2014 +0000"
      },
      "message": "am 4af263bd: am ad019236: Merge \"NuPlayer: reports paused position in paused state.\" into lmp-mr1-dev\n\n* commit \u00274af263bd15a8177f1e28a53a2765277022d7372e\u0027:\n  NuPlayer: reports paused position in paused state.\n"
    },
    {
      "commit": "ad019236b9bc4a030c2740fd9cfdd0670b118d5c",
      "tree": "0ed6c5d9be18759948a97807f2bcd2f46e9e7778",
      "parents": [
        "d4b056da7cbf1adb2a5f668e4425def3754a9c09",
        "d4cdba18ba7d0057ae54ec7efa5871b1a9d8beca"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 19 22:18:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 19 22:18:10 2014 +0000"
      },
      "message": "Merge \"NuPlayer: reports paused position in paused state.\" into lmp-mr1-dev"
    },
    {
      "commit": "68586a6c3d8ce45c054bb7e7c3c38f70f3e167fd",
      "tree": "f09a6a34c4444f798621c8ee52849c2e8cbcf57e",
      "parents": [
        "8bcd9e06bec53bf671e18c13294be8f539b072f5",
        "01a7aaf2cec81edbdc2bb62a5a46594312cce078"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 19 20:12:42 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 19 20:12:42 2014 +0000"
      },
      "message": "am 01a7aaf2: am 823ee706: am d4b056da: Merge \"NuPlayer: Fix failure to stop audio playback\" into lmp-mr1-dev\n\n* commit \u002701a7aaf2cec81edbdc2bb62a5a46594312cce078\u0027:\n  NuPlayer: Fix failure to stop audio playback\n"
    },
    {
      "commit": "01a7aaf2cec81edbdc2bb62a5a46594312cce078",
      "tree": "bf96e6ca5190e19d93c8d0049dcd3acc243a61f5",
      "parents": [
        "a07593a1c167c775279226c6c8f36d9087d2e3e6",
        "823ee7067a7d525a88d4ba55780e98975cfed6fc"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 19 20:07:22 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 19 20:07:22 2014 +0000"
      },
      "message": "am 823ee706: am d4b056da: Merge \"NuPlayer: Fix failure to stop audio playback\" into lmp-mr1-dev\n\n* commit \u0027823ee7067a7d525a88d4ba55780e98975cfed6fc\u0027:\n  NuPlayer: Fix failure to stop audio playback\n"
    },
    {
      "commit": "d4cdba18ba7d0057ae54ec7efa5871b1a9d8beca",
      "tree": "6a8a44525450cb0a0d13ab0c60ad31c47bed9f1b",
      "parents": [
        "e48cf5b8f823c30af93577c1e380d752ac69b871"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 18 10:44:17 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 19 11:29:30 2014 -0800"
      },
      "message": "NuPlayer: reports paused position in paused state.\n\nBug: 18733773\nChange-Id: I993a4bf108913ab98a0294d7dcf7605349f7029b\n"
    },
    {
      "commit": "3491232a7c0d953fa021f6a81baee64c44f364f3",
      "tree": "974b02384d160e7baad77f93ed9ab2ba38209134",
      "parents": [
        "e48cf5b8f823c30af93577c1e380d752ac69b871"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Dec 18 18:48:39 2014 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Dec 18 18:48:39 2014 -0800"
      },
      "message": "NuPlayer: Fix failure to stop audio playback\n\nDon\u0027t stop audio sink if gapless - it\u0027s not necessary and has\na side effect of resetting the AudioTrack frames written\nwithout resetting the AudioSink frames written.\n\nBug: 18787619\nChange-Id: I71063b9e3aad9a6dfd7d46ea614e107c815e4c57\n"
    },
    {
      "commit": "f06060f9544c71ebdc1e0b1b8d73f6cb275e6311",
      "tree": "d12f14d9da5a0a2f4008cebd00ca732b8a71c055",
      "parents": [
        "8b67ce7210caa4f119a687e9b0946b339db08265"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Thu Nov 06 16:15:20 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 18 10:00:50 2014 -0800"
      },
      "message": "DO NOT MERGE - 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": "8b67ce7210caa4f119a687e9b0946b339db08265",
      "tree": "14726dcfaba10a6364c4497cf9d532c5db7e8caf",
      "parents": [
        "6f3b732b6f95e9b96172164cba13382ce64864ba"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Nov 19 10:02:16 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 18 09:59:21 2014 -0800"
      },
      "message": "DO NOT MERGE - NuPlayer: invalid anchor time when render is flushed.\n\nAlso rememeber the pause time in NuPlayerDriver.\n\nBug: 18436336\nChange-Id: If09f680a0d0f9137bd55c5f94201eb3aa783278a\n"
    },
    {
      "commit": "abb627e4e971e134e1618d9fb602f23696717c6a",
      "tree": "a89f79f5fe1537ff38ab73142449699bffb7d6f1",
      "parents": [
        "a683bb2a7f92b44e9b04752a8126106ce3b0ecca",
        "d1f0f143fecd65c0987691fd33ee3975708479ec"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 15 22:46:54 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 15 22:46:54 2014 +0000"
      },
      "message": "am d1f0f143: am 42818cca: am 9f932418: Merge \"Fix for apps that forget to use widevine:// urls\" into lmp-mr1-dev\n\n* commit \u0027d1f0f143fecd65c0987691fd33ee3975708479ec\u0027:\n  Fix for apps that forget to use widevine:// urls\n"
    },
    {
      "commit": "d1f0f143fecd65c0987691fd33ee3975708479ec",
      "tree": "9a8ae1fb9cab977e08108b73cef1528342e31275",
      "parents": [
        "d7aa535fc6ed1f4f0ee68bd3c7c483717d30205e",
        "42818cca55fa4e4faca5b5686c7930070c2bf434"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 15 22:41:39 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 15 22:41:39 2014 +0000"
      },
      "message": "am 42818cca: am 9f932418: Merge \"Fix for apps that forget to use widevine:// urls\" into lmp-mr1-dev\n\n* commit \u002742818cca55fa4e4faca5b5686c7930070c2bf434\u0027:\n  Fix for apps that forget to use widevine:// urls\n"
    },
    {
      "commit": "f1596a66a32072d8cdf7b5e877bdaea7033b761b",
      "tree": "3b09c2b2298c1be25f9536b319e7bce8c70a99cc",
      "parents": [
        "96143d433419e789c5667a54d54ca0241f3286f0",
        "dc039672b8fad7746200ecc36304d0e85db4f367"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Dec 15 22:04:10 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 15 22:04:10 2014 +0000"
      },
      "message": "am dc039672: am a0b3a0a4: am 6e430fbd: Merge \"NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\" into lmp-mr1-dev\n\n* commit \u0027dc039672b8fad7746200ecc36304d0e85db4f367\u0027:\n  NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\n"
    },
    {
      "commit": "9f932418856844c6b8242d4c921654d0cc6af754",
      "tree": "359457f5fadee5eeb72f600e0a74a597724a16de",
      "parents": [
        "2aa82e786be2e986be1ecb48d72b095b040efe9a",
        "661a5270303392bbf22eaa459961e6ab7b26b529"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 15 21:21:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 15 21:21:41 2014 +0000"
      },
      "message": "Merge \"Fix for apps that forget to use widevine:// urls\" into lmp-mr1-dev"
    },
    {
      "commit": "dc039672b8fad7746200ecc36304d0e85db4f367",
      "tree": "372501991e4a48766a53dbd7b87fca2f7c2d1d20",
      "parents": [
        "690257fe8288bc6f84069cc4b5d7f2a76e850401",
        "a0b3a0a46dc42eafe620ffd053604515bbd9ca9a"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Dec 15 19:31:45 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 15 19:31:45 2014 +0000"
      },
      "message": "am a0b3a0a4: am 6e430fbd: Merge \"NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\" into lmp-mr1-dev\n\n* commit \u0027a0b3a0a46dc42eafe620ffd053604515bbd9ca9a\u0027:\n  NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\n"
    },
    {
      "commit": "6e430fbd927b9cc043639eb728ddc921392a60e8",
      "tree": "ecc06c27de37c7b561e86e90a9a996617a9454dc",
      "parents": [
        "8ddb02230d02968d471aa41b22433957c38827c0",
        "895651b07fec30b0f9b0d2499599a179d95c9be4"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Dec 15 19:15:08 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 15 19:15:09 2014 +0000"
      },
      "message": "Merge \"NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\" into lmp-mr1-dev"
    },
    {
      "commit": "661a5270303392bbf22eaa459961e6ab7b26b529",
      "tree": "da831271890b6b0d615128a4cdace36a1e6487c6",
      "parents": [
        "8cffa91a76d3fa4c96268fc40fc8722a0d33dc8d"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Dec 12 15:24:46 2014 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 15 18:28:54 2014 +0000"
      },
      "message": "Fix for apps that forget to use widevine:// urls\n\nbug: 18554455\n\nChange-Id: I8ff08e7270c65c375205169eb068f361f2a4a727"
    },
    {
      "commit": "895651b07fec30b0f9b0d2499599a179d95c9be4",
      "tree": "bd1a9d42072c8db53dcd72aa3f7392f520b1f4fe",
      "parents": [
        "82a69ea8b090d57bff5e02774688b546a711bbb8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 10 17:31:52 2014 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 12 14:34:50 2014 -0800"
      },
      "message": "NuPlayer: send NOT_SEEKABLE media info to client when the source is not seekable.\n\nLiveSession: return -1 for duration when it\u0027s not available.\n\nBug: 18599325\nChange-Id: Iecd040f48750806f98d1799e2aaab2f90c6f3887\n"
    },
    {
      "commit": "9ae34ec4f2a78d98643cf8428cd8eafdc48e6245",
      "tree": "78102481db0da10e030e4a5212e9a5647d0c22e0",
      "parents": [
        "11bfbc251e78486cd10fe891e27ae25b17285cb4",
        "b6ac4d49e468e155aa1591f3c400e1c06442e7b1"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Dec 11 16:21:42 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 11 16:21:42 2014 +0000"
      },
      "message": "am b6ac4d49: am 2253b3c5: am f484952e: mediaplayer: allow setVideoSurface before setDataSource\n\n* commit \u0027b6ac4d49e468e155aa1591f3c400e1c06442e7b1\u0027:\n  mediaplayer: allow setVideoSurface before setDataSource\n"
    },
    {
      "commit": "b6ac4d49e468e155aa1591f3c400e1c06442e7b1",
      "tree": "77ff44f19744afc794791d3c2b47a7ac9088b45b",
      "parents": [
        "78e179e62b2b6e1e2736163162248ace06d30cdb",
        "2253b3c50ee4b89349553f42edf676ce8579e680"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Dec 11 16:11:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 11 16:11:43 2014 +0000"
      },
      "message": "am 2253b3c5: am f484952e: mediaplayer: allow setVideoSurface before setDataSource\n\n* commit \u00272253b3c50ee4b89349553f42edf676ce8579e680\u0027:\n  mediaplayer: allow setVideoSurface before setDataSource\n"
    },
    {
      "commit": "f484952edd94c1b7ee82d7b108edc1ce08671cc4",
      "tree": "cff6a131fad2248c456eee1618849df35bcae67e",
      "parents": [
        "7e45789f5fbcbe68075f57b6d17f72b7b48df546"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Dec 10 16:58:57 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Dec 10 16:59:39 2014 -0800"
      },
      "message": "mediaplayer: allow setVideoSurface before setDataSource\n\nBug: 18709604\nChange-Id: I41e4734faed48b5583feb29896cd5783b8cd7e33\n"
    },
    {
      "commit": "230e8b2b843666c2803d6b3ea3a5276381b1ecfb",
      "tree": "0d467a8e034368f9e55c5f84415d5a7b25c0be79",
      "parents": [
        "12e7c84f6af6b91493fc37eabec2dfb70c0951a6",
        "1ed99f0c1b9d7c4fbf2a59b3aeeb4901cc536e5c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 09 23:18:10 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 09 23:18:10 2014 +0000"
      },
      "message": "am 1ed99f0c: am 2b02f140: am 80c57d57: Merge \"NuPlayerRenderer: Update mAnchorMaxMediaUs when anchor time is changed to fix pause-seek-getCurrentPosition.\" into lmp-mr1-dev\n\n* commit \u00271ed99f0c1b9d7c4fbf2a59b3aeeb4901cc536e5c\u0027:\n  NuPlayerRenderer: Update mAnchorMaxMediaUs when anchor time is changed to fix pause-seek-getCurrentPosition.\n"
    },
    {
      "commit": "a7da121b3dc0097fa92dd29350efea3cf915dfae",
      "tree": "e049771975f9d9c0c11c0d5ae4e3595d32554948",
      "parents": [
        "dec5dcd7b8b9b21f20a96c62612faaf979e9d8df",
        "e4fe1b62b37eefe8b88aeeea896d2b3851d32480"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Dec 09 23:18:02 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 09 23:18:02 2014 +0000"
      },
      "message": "am e4fe1b62: am 876c21b1: am a147c17a: Merge \"fixes for non-secure widevine playback\" into lmp-mr1-dev\n\n* commit \u0027e4fe1b62b37eefe8b88aeeea896d2b3851d32480\u0027:\n  fixes for non-secure widevine playback\n"
    },
    {
      "commit": "33edcf10489f783a5659ff89ceaca02828496053",
      "tree": "b79a43951a3a4b47966863ab4916ecb663a3de08",
      "parents": [
        "c962ac8a8ae14764bbf8e99cc227746c9656b179",
        "5f480891e5818f111f431ae69b4c1354e302242a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Dec 09 00:57:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 09 00:57:43 2014 +0000"
      },
      "message": "am 5f480891: am 4c56f8e0: am b65842dd: Merge \"Fix NuPlayer assertion on failure to create AudioTrack\" into lmp-mr1-dev\n\n* commit \u00275f480891e5818f111f431ae69b4c1354e302242a\u0027:\n  Fix NuPlayer assertion on failure to create AudioTrack\n"
    },
    {
      "commit": "c962ac8a8ae14764bbf8e99cc227746c9656b179",
      "tree": "ee2716ff94c2720285c28f6c4a88f949c5dabcad",
      "parents": [
        "882687382f3bf2eea0578242e0734e9eb2c0fa73",
        "3202a2dc337a3f4eb5410781e35f1ca0a1428615"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Dec 09 00:57:42 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 09 00:57:42 2014 +0000"
      },
      "message": "am 3202a2dc: am 7cc9a1c5: am 76c156f7: Merge \"fix threading in RTSPSource and StreamingSource\" into lmp-mr1-dev\n\n* commit \u00273202a2dc337a3f4eb5410781e35f1ca0a1428615\u0027:\n  fix threading in RTSPSource and StreamingSource\n"
    }
  ],
  "next": "1ed99f0c1b9d7c4fbf2a59b3aeeb4901cc536e5c"
}
