)]}'
{
  "log": [
    {
      "commit": "599e95afa2c717caea823c3fd330eaaebf54880c",
      "tree": "629cdebdaa29c2bb115524a1913cc554a4ab0de6",
      "parents": [
        "2ca3dd3338d861ad844306c6efdbc57510671dfe",
        "d214a56215f01f2d4f4ac17cc842a1d63e146126"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 14 20:57:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 14 20:57:05 2017 +0000"
      },
      "message": "Merge \"NuPlayerRenderer: allow video to continue when audio ends\""
    },
    {
      "commit": "f86731d6a5d7392bb600123af2843687f6aa9c2e",
      "tree": "9ecdc3a984e9d93b5186c0a1d9f7dc9ecb7b2e9d",
      "parents": [
        "f34e3f272d9ca267b73188ec7cb6c40ef27682ec"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jul 11 17:24:34 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jul 11 17:24:34 2017 -0700"
      },
      "message": "NuPlayer: fix track error notification\n\nAudio/video decoder could have been shut down due to error. When the\ncounter track has error, it should take this into consideration.\nTest: MediaPlayer sends out corrent error notification.\nBug: 63116575\n\nChange-Id: Ie31d4e6d9b2bc6715d657a4c8e2dc7c1368257b1\n"
    },
    {
      "commit": "d214a56215f01f2d4f4ac17cc842a1d63e146126",
      "tree": "5a1efbf660952ba998b2d7a14cf2499ee2c30082",
      "parents": [
        "f34e3f272d9ca267b73188ec7cb6c40ef27682ec"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jul 10 13:20:55 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jul 10 13:20:55 2017 -0700"
      },
      "message": "NuPlayerRenderer: allow video to continue when audio ends\n\nTest: video can continue when audio ends\nBug: 63397228\nChange-Id: Iebd79006b7205ddd4d616a803fe0e5f492cbc866\n"
    },
    {
      "commit": "ddd11adcd9e44b0536d9eeb758b0672eec0439dc",
      "tree": "667d8bb98ca3f4a951e845d7038b0bfe291050a1",
      "parents": [
        "96521b2b71efb194315277a520cb06e4ade7187a"
      ],
      "author": {
        "name": "Santhosh Behara",
        "email": "santhoshbehara@codeaurora.org",
        "time": "Tue Jun 13 15:01:35 2017 +0530"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jun 23 14:19:55 2017 -0700"
      },
      "message": "media: Change the location of dumping stats\n\nThe latest photos apk calls the setVideoSurfaceTexture\nwith a null bufferProducer. Hence the surface is set as\nNULL.\nDue to this, the video decoder is shutdown before the\nsurface is set. Hence the stats are lost. Thus when the\napp calls reset after surface is set, the stats are not\nprinted.\n\nTest: see dump stats\nCRs-Fixed: 2063273\n\nBug: 62897827\n\nAuthor: anubhavp@codeaurora.org\n\nChange-Id: Iafc09c50840960be4a20e55b34d5d31ba6a2da49\n(cherry picked from commit 563acd6f5a0bfc0174aee61a9ec04916fc227f14)\n"
    },
    {
      "commit": "360abaf9d7045bb125e0df414e82af1ef89681d0",
      "tree": "75c1764562c54d7f46d2255c1e82e05496f20e09",
      "parents": [
        "88e94d3c1e3644d1c36b9e9c2f161cfe891ce4e1",
        "8631fd7b270e99ebee6ba056f4edd38e6bd4f93f"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Mon Jun 05 18:53:29 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 05 18:53:29 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer: L3 playback fails at OMX mmap; preparDrm preparing\" into oc-dev\nam: 8631fd7b27\n\nChange-Id: I88c8b84a400df2ed20e4e2017309634d8a725af4\n"
    },
    {
      "commit": "8631fd7b270e99ebee6ba056f4edd38e6bd4f93f",
      "tree": "dba08a8301476a0be1c971b9975f019216a74fcf",
      "parents": [
        "1d32e9f8e5ba52d69c6319270c8a63a995d2c4f2",
        "838be3907fc58eab119d7093a3d73be7267bd4d2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 05 18:44:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 05 18:44:50 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer: L3 playback fails at OMX mmap; preparDrm preparing\" into oc-dev"
    },
    {
      "commit": "838be3907fc58eab119d7093a3d73be7267bd4d2",
      "tree": "a669b7f03ce3ca7799aa7311240a49d0846c6755",
      "parents": [
        "0375da69b221b05c3e44c49b1ad2f3b93a6bf2f9"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue May 23 14:14:24 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Jun 01 12:21:03 2017 -0700"
      },
      "message": "Modular DRM for MediaPlayer: L3 playback fails at OMX mmap; preparDrm preparing\n\nBug: 34559906\nBug: 38390836\nBug: 38039230\nBug: 62194380\n\nTest: GTS Tests\nChange-Id: I51e2479f745a4c3e271628abdd79efcb97368ec2\n"
    },
    {
      "commit": "0094fd70678b901b8ffd92bc4a15c272f9ce28f0",
      "tree": "beab53f4d02fd0fb583ebdaf651d3dc2aafbd7e8",
      "parents": [
        "d2b26cd85d54b5258bfd0296313c07e80bee1957"
      ],
      "author": {
        "name": "YOUNG HO CHA",
        "email": "ganadist@gmail.com",
        "time": "Thu May 25 23:16:51 2017 +0900"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 26 21:49:52 2017 +0000"
      },
      "message": "Android.mk: remove $TOP in LOCAL_C_INCLUDES\n\nTest: make systemimage\n\nChange-Id: I5f83786afe3f2c65819b127b041cb74fc4c989ac\nMerged-In: I5f83786afe3f2c65819b127b041cb74fc4c989ac\nSigned-off-by: YOUNG HO CHA \u003cganadist@gmail.com\u003e\n(cherry picked from commit 2ee7aab4a39139a86a24ca14f718eb20a1b355db)\n"
    },
    {
      "commit": "8eed27bece03299d70d7a1acbc77236a192e7fe5",
      "tree": "779b88bb86216339da43e3670d53a45fb145a303",
      "parents": [
        "67618464bab2ef84786ac40ca846d23eca50b0bc",
        "b7b6818b7397eb44b3d43175afdd9a4fd71f2cd4"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed May 24 19:20:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 24 19:20:08 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer/Fixing legacy frame drop at NuPlayerDecoder\" into oc-dev\nam: b7b6818b73\n\nChange-Id: I601ddcab5011a7fd56b74df51ec5ac459f6ccb53\n"
    },
    {
      "commit": "62dec9555ec832b1a8c63c70e4df745aa8635488",
      "tree": "94de207630ccca1a5d147f18cca4cbd31fab5ab3",
      "parents": [
        "0556a2363ff5eb49bd35dc47f2d34cc2042de052"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu May 18 10:45:27 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue May 23 17:43:47 2017 -0700"
      },
      "message": "Modular DRM for MediaPlayer/Fixing legacy frame drop at NuPlayerDecoder\n\nBug: 34559906\nBug: 38039230\nBug: 38430289\nTest: GTS/CTS Tests\nChange-Id: I68dca5f8bae4f9f7866cfaaa6aba97c80dcd8ffb\n"
    },
    {
      "commit": "b69caa46e844d5131b3f97f4485c3293cdf9ebde",
      "tree": "45dd316437dc0650436d483448528a9caada78de",
      "parents": [
        "41e635dcce18df7af6d5d14804bbac028bde6648",
        "a666b6980027946c2dfeb8a3529c8e791fc279a4"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue May 16 16:17:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 16 16:17:17 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer/Race at stop/releaseDrm\" into oc-dev\nam: a666b69800\n\nChange-Id: I9a7d62c2e199bc33dd0677d54647d4d9be02893a\n"
    },
    {
      "commit": "355e8473df4a5b197f0cf136edfbede586416067",
      "tree": "f861410f2a1713975b0849d06f0036e0fdbdec29",
      "parents": [
        "d004c157bac96c4a180604bf304e0dbdb8bc11b5"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Fri May 12 10:33:16 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Mon May 15 18:36:20 2017 -0700"
      },
      "message": "Modular DRM for MediaPlayer/Race at stop/releaseDrm\n\nBug: 34559906\nBug: 37960096\nTest: GTS LLAMA_H264_XX_V0_SYNC (1000 rounds)\nChange-Id: I8576fb9dadf8922c2a54f2ea9e199d2e07c1820e\n"
    },
    {
      "commit": "c97b068fbda412605497c56498be1e47ff6f955d",
      "tree": "5fe08ce8229aa46cec0176258c5470cad1e5072a",
      "parents": [
        "8f4b21a004761e8ac066e2e17dfd47d2189402fe",
        "feb0d87f693abd8fd2fa7ebfcdf7d91f0b95c131"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sat May 13 01:37:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat May 13 01:37:21 2017 +0000"
      },
      "message": "Merge \"Suppress empty media.metrics records from nuplayer\" into oc-dev\nam: feb0d87f69\n\nChange-Id: I92792befd7909fc873114c69b10ae832ed0bb31e\n"
    },
    {
      "commit": "feb0d87f693abd8fd2fa7ebfcdf7d91f0b95c131",
      "tree": "25a0b212ba20065aa47b5257550e7aefeae58434",
      "parents": [
        "8467c128d7edfc16a93e2606bbae5188f067d2d5",
        "3991809be9c81daec6293f5a099a6ce040090aed"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 13 01:31:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 13 01:31:03 2017 +0000"
      },
      "message": "Merge \"Suppress empty media.metrics records from nuplayer\" into oc-dev"
    },
    {
      "commit": "3991809be9c81daec6293f5a099a6ce040090aed",
      "tree": "3aa084ae3a63d44d0fa359a62552fddba029ee86",
      "parents": [
        "24fd2f7d2900797b1300d6bc89d28bd94a31c3cb"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri May 12 16:22:05 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri May 12 16:22:05 2017 -0700"
      },
      "message": "Suppress empty media.metrics records from nuplayer\n\ntweaks the mechanism (a count) we use to suppress nuplayer records\nfor media.metrics to reflect recent changes that included datasource\ninformation.\n\nThis stops spurious records that pollute / degrade the uploaded\nmetrics data.\n\nBug: 38270725\nTest: examine output from: dumpsys media.metrics\n"
    },
    {
      "commit": "5a7ae5ecbadc465588f495cf35f1cf4c3b2b1b9d",
      "tree": "e922775b11357a97570857555c6cd10643d5241b",
      "parents": [
        "746e4da9fef85b962d945cb353e7c8ba888c64ed",
        "b81da0bd69fb703585f5601b9e712068fff6b4e9"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Wed May 10 02:15:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 10 02:15:47 2017 +0000"
      },
      "message": "Merge \"nuplayer: Do not notify EOS when paused\" into oc-dev\nam: b81da0bd69\n\nChange-Id: I6ca6e018d63cd171e38ef34a49da1f217f54fded\n"
    },
    {
      "commit": "b81da0bd69fb703585f5601b9e712068fff6b4e9",
      "tree": "e119cad1ba260969fa06dcb6e24588b0cb7b466b",
      "parents": [
        "b622f93984da567396b79af08bde231b61dd3169",
        "62d4e07eb5f99bd469f92897e47f5598abef99d3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 10 01:57:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 10 01:57:14 2017 +0000"
      },
      "message": "Merge \"nuplayer: Do not notify EOS when paused\" into oc-dev"
    },
    {
      "commit": "62d4e07eb5f99bd469f92897e47f5598abef99d3",
      "tree": "5e1162ee3e1122881f41d59e1e32351bd4702ef5",
      "parents": [
        "02cccfd9e790ba8758aba2b4f2a600a7d8fd1566"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Jun 13 11:23:22 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue May 09 22:25:32 2017 +0000"
      },
      "message": "nuplayer: Do not notify EOS when paused\n\nPlayback switches to next clip if a paused clip is seeked to EOS.\nThis happens as onDrainAudioQueue is allowed to fill buffer\nwhen paused. During drain, EOS is notified even during paused state\nand playback switches to next clip.\n\nAvoid notifying EOS when paused.\n\nauthored-by: Chaithanya Krishna Bacharaju \u003cchaithan@codeaurora.org\u003e\nTest: run mediaplayer\nBug: 38022556\nChange-Id: I8261219615f4ce726e03d02b0cb3e71889a711d0\n(cherry picked from commit b99e3649f468015f5156e71d02b11c2e2c236c58)\n"
    },
    {
      "commit": "59067134546c1bf70041fb4a1364d4bf623e4f4b",
      "tree": "4ad33b1a4d62c4332722a6049cbc725da7f712bd",
      "parents": [
        "2f321453982c00e1adf21faf86536c7aa53c469b",
        "36c68885f945ac85129b5b22e989c7dea1ce8727"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed May 03 01:59:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 03 01:59:17 2017 +0000"
      },
      "message": "Merge changes I155f9f77,Ibb1aa07a,If460a6ef,Ifabff1c2 am: 87f0897426 am: f8e4180ac2\nam: 36c68885f9\n\nChange-Id: Ie32c25b4887461dece19e28b0115784a5afc456e\n"
    },
    {
      "commit": "0bdcf66bf30dfe60b44ea2d69bc846cca33fc3f3",
      "tree": "b2cf28124cfdb348875ce7e0b173f71595d8ea85",
      "parents": [
        "f6014a1ceee2e2c71f6603048eebc346a261e87a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 27 16:15:51 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue May 02 15:08:48 2017 -0700"
      },
      "message": "Fix trivial warnings hidden by -isystem\n\nFix the trivial warnings that are hidden by the use of -isystem to\ninclude frameworks/av and caught by -Werror.\n\nTest: m -j checkbuild\nBug: 31751828\nChange-Id: I155f9f772ce0a84b364313814cb7cf528b9de4eb\nMerged-In: I155f9f772ce0a84b364313814cb7cf528b9de4eb\n(cherry picked from commit b8c35f94470d1518e2def0582aaec4e038c92af0)\n"
    },
    {
      "commit": "e941bda6971fa8a5dbfafc0a80ed528ac70e763f",
      "tree": "562b988a6860879c62cb9f3e62f66ac3365fb15c",
      "parents": [
        "af68d9aa9ae3e0c6c5df490ae63a5655dd1e2974",
        "76e360332d7e0e4c0c132bf712c14f5a8ee2a217"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 01 20:36:43 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 20:36:43 2017 +0000"
      },
      "message": "Merge \"GenericSource: close unused file descriptor\" into oc-dev\nam: 76e360332d\n\nChange-Id: Iee6c29c26709b8dee43551e553cddd3d9ee225b8\n"
    },
    {
      "commit": "76e360332d7e0e4c0c132bf712c14f5a8ee2a217",
      "tree": "9eddbd0c3c34595aa2dc83cf2d217fc11ff6daa8",
      "parents": [
        "0e69c9e25152b08a188ef254065e044594eba896",
        "116687f5c0bd31d8c890d3456213e0391b8cbf87"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 01 20:30:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 01 20:30:26 2017 +0000"
      },
      "message": "Merge \"GenericSource: close unused file descriptor\" into oc-dev"
    },
    {
      "commit": "116687f5c0bd31d8c890d3456213e0391b8cbf87",
      "tree": "5d5deeab6610b3d76b20bbe0da6007d6981666bd",
      "parents": [
        "abbb67724e5600c17450ed148fb2c214c5aac9ee"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 01 09:51:40 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 01 11:26:00 2017 -0700"
      },
      "message": "GenericSource: close unused file descriptor\n\nTest: dumpsys media.player with photos, ringtone\nBug: 37792834\nChange-Id: I04e0f05ea642e3bfe5e6af12bfabea69838716b4\n"
    },
    {
      "commit": "7e83db7830f34f9aa55d46a2d8dc2a8ee7e2dc2e",
      "tree": "eec71ccdd111e64218862d067cdef4e1c8b0b445",
      "parents": [
        "a9a09d6e34fe61c467863a2f5b9c21381f7e081f",
        "64f9ce291f2a8e8b89ba1682660299312148c1de"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Sat Apr 29 00:50:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 29 00:50:21 2017 +0000"
      },
      "message": "Merge \"Reporting the player\u0027s data source type in media analytics\" into oc-dev\nam: 64f9ce291f\n\nChange-Id: I9d31c3005249461f63bddc88597cce939d6739d6\n"
    },
    {
      "commit": "64f9ce291f2a8e8b89ba1682660299312148c1de",
      "tree": "19aae08c806f3d0417724257c5b8501914f1d98d",
      "parents": [
        "a01a7ff652eb163984f1ba9aacba5b8e9e0e44a9",
        "ff63de757653579d751665bc3611571fbcacf53d"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Sat Apr 29 00:45:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 29 00:45:48 2017 +0000"
      },
      "message": "Merge \"Reporting the player\u0027s data source type in media analytics\" into oc-dev"
    },
    {
      "commit": "8dbc1205446e09f43a00b2d88c15d2cd93a0b998",
      "tree": "c29cf31d4b09f5b8c1ceef87ac0410e0eb87b337",
      "parents": [
        "75d76012b684eaa56e90280f69b23fc2d8294636"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 27 12:33:20 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Apr 28 22:06:51 2017 +0000"
      },
      "message": "LOCAL_CLANG :\u003d true is now the default\n\nTest: verify that build has no failures\nChange-Id: Ib249b276c6295e55eb54fa37b6d15486415dfbed\nMerged-In: Ib249b276c6295e55eb54fa37b6d15486415dfbed\n(cherry picked from commit 5f5ee1110dd85001b43db7637a97474acfe8d681)\n"
    },
    {
      "commit": "ff63de757653579d751665bc3611571fbcacf53d",
      "tree": "a7abce0f9f1994088f057fcff666fb97282d6272",
      "parents": [
        "89b67d60548f8989412aa9cb6ad8a5f287ce303b"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Apr 26 15:10:42 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Fri Apr 28 11:15:27 2017 -0700"
      },
      "message": "Reporting the player\u0027s data source type in media analytics\n\nBug:  37720861\nTest: metrics dumpsys\nChange-Id: I44eb7049f10aa4f89c9e7b0de6b47d169129d15d\n"
    },
    {
      "commit": "d241b656d565bfbb37c2cbb84730b2bf3b25b158",
      "tree": "70007d12fb1e3575187fdfa3c9b47b386a6aa5e8",
      "parents": [
        "77bfcd38b78efd919e898a1165f1b99e34b6d7d7",
        "a28ec4a3f8357224b59fc44b6c91751fc1d8451c"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Apr 27 13:48:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 13:48:58 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer/Removing mimes report\" into oc-dev\nam: a28ec4a3f8\n\nChange-Id: I711f66f381452b18149276b9c798eb6ad9e35916\n"
    },
    {
      "commit": "a28ec4a3f8357224b59fc44b6c91751fc1d8451c",
      "tree": "84d60767098680a458f1f20c585e5f6a5c6f46fc",
      "parents": [
        "4271c82efd7c59f6e75e09fa748769bad4cfeee2",
        "dd4ce1877814d6fb005e89021272feb3ccfb81d0"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Apr 27 13:42:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 13:42:18 2017 +0000"
      },
      "message": "Merge \"Modular DRM for MediaPlayer/Removing mimes report\" into oc-dev"
    },
    {
      "commit": "dd4ce1877814d6fb005e89021272feb3ccfb81d0",
      "tree": "c881295cd82baf8c3d1f2d7045f833c8ab3cb1ae",
      "parents": [
        "5551797eb2d813ef01e23eb93fd680bc1e0dd886"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Apr 20 15:25:39 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Apr 26 21:58:23 2017 +0000"
      },
      "message": "Modular DRM for MediaPlayer/Removing mimes report\n\nBug: 34559906\nTest: GTS Tests\nChange-Id: I6877b9ac4ffd36f0ed476c3b4bbb0770da5abaf6\n"
    },
    {
      "commit": "05cb9fdce7924b7a5f118f0bc724caee4280df88",
      "tree": "b986794fa5df6f9d46bfff4370ef908dc1a56caf",
      "parents": [
        "e58485dc912bfea2f3084f50f53e40513eb52fbe",
        "087f3af6ceee8fe61a27901c7c910218664265c0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Apr 25 00:28:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 00:28:50 2017 +0000"
      },
      "message": "Merge \"MediaPlayer: enable more logs for extractor failure.\" into oc-dev\nam: 087f3af6ce\n\nChange-Id: I755add48326ae77a02708db2a941d3e23defeb70\n"
    },
    {
      "commit": "087f3af6ceee8fe61a27901c7c910218664265c0",
      "tree": "002b6eec341890f17136b300397be1b8147b0037",
      "parents": [
        "68d06eae7fdee42da33a0ef7bce3585f155067d6",
        "161dc698c7604cfd73310e96503179581822943b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 25 00:24:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 25 00:24:01 2017 +0000"
      },
      "message": "Merge \"MediaPlayer: enable more logs for extractor failure.\" into oc-dev"
    },
    {
      "commit": "161dc698c7604cfd73310e96503179581822943b",
      "tree": "2acd2a9acd1a46917046266ba7146237384ea152",
      "parents": [
        "b6ed37ed0e1176c3458294abae0ea1b11c30d44f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Apr 20 16:40:06 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Apr 24 15:25:00 2017 -0700"
      },
      "message": "MediaPlayer: enable more logs for extractor failure.\n\nTest: compiles\nBug: 37273297\nChange-Id: I53c6393e0c306c64ec4aa81c45e5ff6e8de233d8\n"
    },
    {
      "commit": "2fbf24446ef97345a49fbd3063c4210685ec22c9",
      "tree": "31d39d3490eaab887114a1976a9b5455328f5025",
      "parents": [
        "e0ca8fcf0bb527ff9c6c53ba5412a4b113118305",
        "c84e294c4b1cea79d8194898000881fc96c9a8c8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 21 23:03:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 23:03:59 2017 +0000"
      },
      "message": "Merge \"NuPlayerDecoder: check mCodec before dereferencing it.\" into oc-dev\nam: c84e294c4b\n\nChange-Id: I390ed5b4173d27213e44cea410e2584844609804\n"
    },
    {
      "commit": "37ff0e6639e90ca49d4f0386a76c09437b459efd",
      "tree": "a40d9d2f79dd9e3822335741afb8470efec038fc",
      "parents": [
        "b6ed37ed0e1176c3458294abae0ea1b11c30d44f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 21 11:24:45 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 21 11:24:45 2017 -0700"
      },
      "message": "NuPlayerDecoder: check mCodec before dereferencing it.\n\nTest: media cts tests\nBug: 37538141\nChange-Id: Ib95fd4786242d6742f3bdc7aab28f79d43e8da81\n"
    },
    {
      "commit": "4ca485f784820adf5ee8def70d782780e067c7dc",
      "tree": "3ebe11cd268107beec2e950415d98617d72ba236",
      "parents": [
        "6d97f7160291efa8482dac5f2dc83927492ab786"
      ],
      "author": {
        "name": "Vishwath Mohan",
        "email": "vishwath@google.com",
        "time": "Wed Apr 19 00:21:34 2017 -0700"
      },
      "committer": {
        "name": "Vishwath Mohan",
        "email": "vishwath@google.com",
        "time": "Thu Apr 20 13:50:53 2017 +0000"
      },
      "message": "Enable CFI for static media codec libraries.\n\nThis CL enables CFI for the following components:\n  - media/libstagefright/codecs/aacenc/\n  - media/libstagefright/codecs/m4v_h263/dec/\n  - media/libstagefright/codecs/m4v_h263/enc/\n  - media/libstagefright/codecs/mp3dec/\n  - media/libmediaplayerservice/nuplayer/\n  - media/libstagefright/rtsp/\n\nIn most cases, these changes enable CFI for static libraries that are\nincluded in CFI enabled components.\n\nBug: 30227045\nTest: ENABLE_CFI\u003dtrue m -j40\nTest: Media CTS tests pass.\nChange-Id: I976f5e5629a2c083dd24919ffe33a82967915ecd\n(cherry picked from commit 040dc275896f3aa8e31a8bc5504ca35779c43eed)\n"
    },
    {
      "commit": "649e2490a7d1d0041f69311d16a5eed8c0d4dab2",
      "tree": "fd26178bb52e65071faf2c1e267307a9f4fdde56",
      "parents": [
        "630ab33edb9167173c8e43ea3bddbe801e98adea",
        "f4b7240b9d7095545d1ee1a772edacdeec1f6610"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Apr 12 17:32:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 17:32:17 2017 +0000"
      },
      "message": "Merge \"NuPlayer: fix notification when one track is not played.\" into oc-dev\nam: f4b7240b9d\n\nChange-Id: I243b2e54e5103c44a5d940d37c08eccbc9274245\n"
    },
    {
      "commit": "2f6d8c555f235181ef954757aea9f2badbcdfa3c",
      "tree": "dabd6a47f6887b12790be06a221ce7eaf31b554a",
      "parents": [
        "dab5aae9390dccda539c2c805904440bc1e41e9e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Apr 11 09:50:31 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Apr 11 09:50:31 2017 -0700"
      },
      "message": "NuPlayer: fix notification when one track is not played.\n\nOne track is not played because it has no sink component.\nTest: pass failed cts test\nBug: 37216899\nBug: 24761723\n\nChange-Id: I669d59d6c193794da8973b9dd58bc8eac0b51996\n"
    },
    {
      "commit": "8265f2b5cccbea6db3f5b84182bf95ee513e4f0b",
      "tree": "7529f5e5900b50da091df9aab391ffeef65f1c24",
      "parents": [
        "460947a1c4a243a60ea730f3c0ed8349e0e96e97",
        "1b8ecbb25f142904e6da47171738b55b6be69e78"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Apr 08 00:32:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 08 00:32:51 2017 +0000"
      },
      "message": "Merge \"NuPlayer: notify client of playback error of individual track.\" into oc-dev\nam: 1b8ecbb25f\n\nChange-Id: Ic443d8791e81d4cda007d7c0f72c341c4c346efe\n"
    },
    {
      "commit": "1b8ecbb25f142904e6da47171738b55b6be69e78",
      "tree": "3ed030c10e95991f0ab3edb865e68e0b55e83b3b",
      "parents": [
        "98ace5dd8c4644e86af2c9b533c6d249fa0ff24b",
        "686e8e57299151127c4ae30daf84a21cd947bf65"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Apr 08 00:24:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 08 00:24:12 2017 +0000"
      },
      "message": "Merge \"NuPlayer: notify client of playback error of individual track.\" into oc-dev"
    },
    {
      "commit": "686e8e57299151127c4ae30daf84a21cd947bf65",
      "tree": "8b83bac2735593ddcf6ff21b3c19bfcdde74c88b",
      "parents": [
        "34bc4d97cf78920b4b38983767ef8b725424e1dd"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Apr 03 14:08:01 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Apr 05 13:20:33 2017 -0700"
      },
      "message": "NuPlayer: notify client of playback error of individual track.\n\nTest: mediaplayer doesn\u0027t send error notify to client when only one\ntrack has error.\nBug: 24761723\nChange-Id: Ie956f2c29483ac722a75bea86d649ce6d934a43d\n"
    },
    {
      "commit": "3e06f3fd584e94c1d36edc22e7d96401c753348d",
      "tree": "93e65bd6ea7a3d60bd8768d8393e79a5dc407ae6",
      "parents": [
        "b0e4789e6682241de5939cfccbc466d515ef8d2b",
        "fe3471f63bfcd829ecd33c8633f6f3b2ef57ad7c"
      ],
      "author": {
        "name": "Dhananjay Kumar",
        "email": "dhakumar@codeaurora.org",
        "time": "Tue Apr 04 23:12:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 04 23:12:04 2017 +0000"
      },
      "message": "Merge \"NuPlayer : send the correct streaming info while opening audio sink\" into oc-dev\nam: fe3471f63b\n\nChange-Id: I30fcfc85d8f3106f1e58212e272d2d6a182ca850\n"
    },
    {
      "commit": "fe3471f63bfcd829ecd33c8633f6f3b2ef57ad7c",
      "tree": "64b8211b343e7f2b182847bef2af99c79f110e73",
      "parents": [
        "e786547c7ebc199ba84dfcd3601fbbb666d9fa61",
        "c387f2b719a1a26c8306f77d79cc9a6f26b36813"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 04 23:06:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 04 23:06:23 2017 +0000"
      },
      "message": "Merge \"NuPlayer : send the correct streaming info while opening audio sink\" into oc-dev"
    },
    {
      "commit": "c387f2b719a1a26c8306f77d79cc9a6f26b36813",
      "tree": "e4c2e37b3345678d92b0f7208367a596910f0241",
      "parents": [
        "34bc4d97cf78920b4b38983767ef8b725424e1dd"
      ],
      "author": {
        "name": "Dhananjay Kumar",
        "email": "dhakumar@codeaurora.org",
        "time": "Thu Aug 06 10:43:16 2015 +0530"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Apr 04 10:29:40 2017 -0700"
      },
      "message": "NuPlayer : send the correct streaming info while opening audio sink\n\n -For any offload playback NuPlayerRenderer always open the audio sink\n  with isStreaming info as true.\n -Pass the streaming info to the NuPlayerRenderer while opening audio\n  sink\nTest: cts tests\nBug:36051644\nAuthor: Preetam Singh Ranawat \u003capranawat@codeaurora.org\u003e\nChange-Id: I249e6769ef4587917a13b0225d049a3923544d16\n(cherry picked from commit b2444b392d0d5de4118d37a24f4351f9de5c215d)\n"
    },
    {
      "commit": "05d698d9500891bab7f2468568da1fdb54715101",
      "tree": "c0164b851f57cfd16606af38ac77924f92f5fc8e",
      "parents": [
        "6d875c51f233a8947a33a683945a6d738e71d0c6",
        "80158939f9ce31676d6520ff97dc3af4a9760a7f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Apr 04 16:25:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 04 16:25:52 2017 +0000"
      },
      "message": "Merge \"NuPlayer: Use deep buffer AudioTrack for video playback\" into oc-dev\nam: 80158939f9\n\nChange-Id: Ica687a11fa6d7e01fec158bee7df7024b7ff7492\n"
    },
    {
      "commit": "71c8e5c9565af4745cfd7ff0e327da1a27d77bf7",
      "tree": "f5101967183477b764ef1236022e8049bc9d547a",
      "parents": [
        "58a220fe06957cf7f0325cc9509947f1602e2986"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Apr 03 15:50:27 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Apr 03 16:18:19 2017 -0700"
      },
      "message": "NuPlayer: Use deep buffer AudioTrack for video playback\n\nThis reduces power requirements and increases robustness against\naudio glitches.\n\nTest: Photos\nBug: 36867565\nChange-Id: I200728cfc1bfd01301441c8759816415abe58d48\n"
    },
    {
      "commit": "f097f6f4757e5f8fd795a0042ffa66d05c4bbd16",
      "tree": "9c11c3d8a17838dabbf1249dba3a2ffe7471e15f",
      "parents": [
        "990edc2f166d7380a09227fb37445ec5434ee97e",
        "1cbe62c82a8bfdb18a5bb79de57252dbd378445c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sun Apr 02 01:06:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Apr 02 01:06:10 2017 +0000"
      },
      "message": "NuPlayer: handle source error correctly.\nam: 1cbe62c82a\n\nChange-Id: I652f4c7c2748d4b9587d6209411c2cdc3c8df094\n"
    },
    {
      "commit": "1cbe62c82a8bfdb18a5bb79de57252dbd378445c",
      "tree": "13379a463ac11808ee9084d2760d5c37542bbf69",
      "parents": [
        "32efa2fd44f9ac834771663cd9fe2fcc5f5ec2f8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Mar 30 17:57:02 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sun Apr 02 01:02:00 2017 +0000"
      },
      "message": "NuPlayer: handle source error correctly.\n\nTest: source error is sent to app.\nBug: 35025627\nChange-Id: I668bab0de20cf24def028a6a467efceaed54af2b\n(cherry picked from commit 231fd353518502e3a05021473ae60e7addd9a46c)\n"
    },
    {
      "commit": "990edc2f166d7380a09227fb37445ec5434ee97e",
      "tree": "bb9533c1b477cf2e0657b5be718a8e23efa5cc9a",
      "parents": [
        "509850e7eb518884c2fbde9b0244d4bd0be62d73",
        "32efa2fd44f9ac834771663cd9fe2fcc5f5ec2f8"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sat Apr 01 00:20:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 01 00:20:52 2017 +0000"
      },
      "message": "Merge \"Nuplayer logging empty records to media.metrics\" into oc-dev\nam: 32efa2fd44\n\nChange-Id: I3546502201086644c02080b029dfcf223761753a\n"
    },
    {
      "commit": "32efa2fd44f9ac834771663cd9fe2fcc5f5ec2f8",
      "tree": "f2bf78c296d10bcea7abf4697a119631cafcf922",
      "parents": [
        "565a0ed7f805eb7bb3c4c33bc08386eb67fdaa27",
        "2e82d3167a4117134293f1c705be60a7a31ed3bc"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sat Apr 01 00:09:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 01 00:09:34 2017 +0000"
      },
      "message": "Merge \"Nuplayer logging empty records to media.metrics\" into oc-dev"
    },
    {
      "commit": "9ad9ede520240c4df47a7557cc51fff6bcbdb9a8",
      "tree": "958fa69e60759fa7061fe5f69a609da8d357cc90",
      "parents": [
        "16dc2a9f15e09578e09026321e1498295afb61ce",
        "fd1c19c3a794cf263262aebe52e18a8107b2a879"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Mar 30 17:57:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 30 17:57:26 2017 +0000"
      },
      "message": "Merge \"Allow MediaExtractor to create FileSource\" into oc-dev\nam: fd1c19c3a7\n\nChange-Id: Ied59190ff8832581e8fa82721bb29fa26065b82e\n"
    },
    {
      "commit": "2e82d3167a4117134293f1c705be60a7a31ed3bc",
      "tree": "bfcc3c3fcd82d75559b0de915b295962a6fa66e0",
      "parents": [
        "34bc4d97cf78920b4b38983767ef8b725424e1dd"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Mar 27 16:35:08 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 30 16:17:37 2017 +0000"
      },
      "message": "Nuplayer logging empty records to media.metrics\n\nChanges to ensure that nuplayer always reported a particular set\nof metrics through android.media.MediaPlayer.getMetrics() changed\nthe shape of what we should have considered as an empty record.\nThis caused some noise in the reported media metrics logs.\n\nAlso removed a no-longer-wanted ALOGD() diagnostic.\n\nBug: 36658856\nTest: read \u0027dumpsys media.metrics\u0027 output\n(cherry picked from commit e4ae17109893b6388299a1f46585fb5d00a0a70e)\n\nChange-Id: I2400e3636bb395aa5f46faf0142b2767f4fad610\n"
    },
    {
      "commit": "d49dbd6b625cddb82f3f7bbeac62d48ef338ef0f",
      "tree": "297315edf06765b4b3b114aaf07499e52a53743c",
      "parents": [
        "6480d09eec2b8188b623030c971032334739b4e4"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 07 14:20:35 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Mar 29 17:52:51 2017 +0000"
      },
      "message": "Allow MediaExtractor to create FileSource\n\nRemove binder call to MediaServer for reading files.\n\nTest: Photos, Play Music, Play Movies, Youtube\nBug: 29125703\nChange-Id: Id6abf592bf6d70b81158f6038b1982f0a537b9b9\n"
    },
    {
      "commit": "9eca6b92a56e575d0a7b068f7953be7fcf6c7b37",
      "tree": "6dc108dc6a93c7731d45395f4a319830217d8782",
      "parents": [
        "502750488ff71da1bb131b2ddcfd8cb7806f29f8",
        "6c86d2a370f08dbe5dc1db13aa061b0225189945"
      ],
      "author": {
        "name": "Krystian Turczyn",
        "email": "krystian.turczyn@sonymobile.com",
        "time": "Wed Mar 29 00:51:27 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 29 00:51:27 2017 +0000"
      },
      "message": "Merge \"Do not seek when switching to background playback\" am: 3db1bb97a7 am: 48e2144d15\nam: 6c86d2a370\n\nChange-Id: I872f358ce29f8403fbff52a536fd571900f1e9ec\n"
    },
    {
      "commit": "48e2144d1582667529264e06762bbd6f8f142a08",
      "tree": "905ebcdae46c637a8854f8571a88c457b3a9bc07",
      "parents": [
        "b808809b5fa902ca30601843d641b9e426873af4",
        "3db1bb97a7aab222cc117d6abefc404fa9aec2ef"
      ],
      "author": {
        "name": "Krystian Turczyn",
        "email": "krystian.turczyn@sonymobile.com",
        "time": "Wed Mar 29 00:44:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 29 00:44:02 2017 +0000"
      },
      "message": "Merge \"Do not seek when switching to background playback\"\nam: 3db1bb97a7\n\nChange-Id: I2c894349941e1a9bcfe329f4c40b0caea85987de\n"
    },
    {
      "commit": "5409770c9d3765279a063e828ec0cf55797fd686",
      "tree": "458fa4a630bc7176a32a163c347b12d5c19d9758",
      "parents": [
        "98d51861b0e72039cdedc589301979c17083f650"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Mar 17 16:18:35 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sat Mar 18 17:17:13 2017 -0700"
      },
      "message": "update metrics for mediaplayer\n\nrework for a better guarantee of what is always present\nin return value for android.media.MediaPlayer.getMetrics()\n\nBug: 36355865\nTest: ran cts \"android.media.cts.MediaPlayerTest\"\nChange-Id: Ieb6d14298e676fff7152dea5f7a9a66f7f7476a4\n"
    },
    {
      "commit": "9c544bb666bc990812422797c326a76a1bf53beb",
      "tree": "50d30c6c6be5517b02a2bf0b5e6af2e728d0d7a2",
      "parents": [
        "7929582fd0e3aab70a144b46aca3617340e432a9",
        "afb43f76821e6a63e17e6484289a40430ada6978"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 16 01:02:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 16 01:02:26 2017 +0000"
      },
      "message": "Merge \"Name changes to Media Metrics Keys\""
    },
    {
      "commit": "107488f4d20f3c4595a78ae33ba2f38bca0a50b9",
      "tree": "72ad5bca9911b3d92ecbe0377871b7cbd4a4daf1",
      "parents": [
        "899f77210153f84de08084417d993e1f042fa871",
        "04563aafa0debc95d50951ca944abf37ef2777ce"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 15 20:55:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 15 20:55:46 2017 +0000"
      },
      "message": "Merge \"Move hybrid interface from libbinder to libhidl/transport.\""
    },
    {
      "commit": "04563aafa0debc95d50951ca944abf37ef2777ce",
      "tree": "27f23c70a302d8d8740b62c569a7d5ee48418aad",
      "parents": [
        "0e4b8e9cb1b422195c49be49b48d039aa0814acf"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Mar 09 07:02:01 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Tue Mar 14 17:13:37 2017 -0700"
      },
      "message": "Move hybrid interface from libbinder to libhidl/transport.\n\nAlso, merge android.hardware.media.omx@1.0-impl into libstagefright_omx.\n\nTest: With CtsMediaTestCases.apk installed,\nadb shell am instrument -e size small -w\n\u0027android.media.cts/android.support.test.runner.AndroidJUnitRunner\u0027\nTest: Manual use of Camera, Photos, Play Movies and YouTube apps.\nTest: Manual use of screen mirroring.\n\nBug: 33854657\nChange-Id: Ie927bcafd86dc7e9509bb8b76bb3b51f9a423cc7\n"
    },
    {
      "commit": "e7a1f6c8c18306aa61fd9587811fa20f7937b3c6",
      "tree": "2457317edcc16398b32f6e15147d73b82c08842f",
      "parents": [
        "22fd9de35b387f1ed808f4fe6e0b87eac3e82690"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue Mar 14 09:24:28 2017 -0700"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue Mar 14 09:24:28 2017 -0700"
      },
      "message": "Modular DRM for MediaPlayer\n\nBug:  34559906\nTest: Manual through the test app\nChange-Id: Iac811acbd8078c1f7549730f2fdb5ebfa8937c9f\n"
    },
    {
      "commit": "afb43f76821e6a63e17e6484289a40430ada6978",
      "tree": "e68ad4984dcf2a7c90fb789c004fbe3ce593fc5b",
      "parents": [
        "22fd9de35b387f1ed808f4fe6e0b87eac3e82690"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 09 10:23:55 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Mar 13 11:48:22 2017 -0700"
      },
      "message": "Name changes to Media Metrics Keys\n\nThe API council noticed that we used keys like \"ht\" and \"wid\" which\nare more properly namespaced like \"android.media.mediacodec.height\".\nThis changes those keys on the generation side of the system; it goes\ntogether with other changes that document the namespaced-names in the\nconsumption and documentation side of the system.\n\nBug: 35811992\nTest: check \u0027dumpsys media.metrics\u0027, subset of CTS\nChange-Id: Ie05a105229ab931a6b14c0157cc642b5d8413dde\n"
    },
    {
      "commit": "6957962727b094263139f81b2c3172aef4b63188",
      "tree": "abdc7a909a9f1289af4c487e2ae1b1f98d341310",
      "parents": [
        "622761ea1155d31aa9e2bdb13fe096800a11f091"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue Mar 07 09:16:52 2017 -0800"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Tue Mar 07 10:12:22 2017 -0800"
      },
      "message": "Fix for the occasional prepareDrm/releaseDrm deadlock\n\nBug:  36023772\nTest: Manual through GTS tests\nChange-Id: Id2e8e5390231aa27e8f9a66613c2be6ce86e23a0\n"
    },
    {
      "commit": "8a750be2b732f523e5c3ee2b979252ade029122a",
      "tree": "f19e4717a2fceafc532d8dc784507087cc186c79",
      "parents": [
        "2928d74e1e6ed54ee80778de0fe1c988e2a0f1b5"
      ],
      "author": {
        "name": "Santhosh Behara",
        "email": "santhoshbehara@codeaurora.org",
        "time": "Mon Sep 28 16:03:55 2015 +0530"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Mar 02 14:19:01 2017 -0800"
      },
      "message": "httplive: Ignore seek request for livestreaming\n\nCheck added in HTTPLiveSource to throw error if seek\nis called in live streaming usecase.\n\nChange-Id: I3501172c0c03ecc662f2b9b18254e093d23c9f1f\n"
    },
    {
      "commit": "25b1328fdb2e1ea2ad38764fb7e55a611f27a423",
      "tree": "fd304902ee6a6bd80267fd48c2294ba502cae7bf",
      "parents": [
        "421c434e615a417d9f5443af9e52a30e3b29c256",
        "aaa4dfa3c854523b2935b7958d4c4a24498b7ce3"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Mar 01 18:01:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 01 18:01:19 2017 +0000"
      },
      "message": "Merge \"NuPlayerDriver: avoid deadlock.\""
    },
    {
      "commit": "aaa4dfa3c854523b2935b7958d4c4a24498b7ce3",
      "tree": "f7a4538c9ee72f25eda149d3fa3ba81b28cc21c5",
      "parents": [
        "8eacd8090e16c022dcbb11850cff83f984fe2357"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 28 17:22:59 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 28 17:25:13 2017 -0800"
      },
      "message": "NuPlayerDriver: avoid deadlock.\n\nTest: manually run mediaplayer\nBug: 32524218\nChange-Id: I343ce8c1844ae4d8338d9a0d7aaa171462715912\n"
    },
    {
      "commit": "687a589aecbcb4a1cb305c35a6b065cb972038aa",
      "tree": "81cf641aff144ada3cec3e1dbf6e6158761b2393",
      "parents": [
        "b95db7560eef62369312ecf82e2a90fb9d610d92"
      ],
      "author": {
        "name": "Krystian Turczyn",
        "email": "krystian.turczyn@sonymobile.com",
        "time": "Wed Jan 20 14:20:35 2016 +0100"
      },
      "committer": {
        "name": "Takahiro Aizawa",
        "email": "Takahiro.Aizawa@sonymobile.com",
        "time": "Tue Feb 28 11:35:53 2017 +0000"
      },
      "message": "Do not seek when switching to background playback\n\nSeeking during setting surface causes audible sound repetition. The seek\nis not necessary if switching to background playback. Therefore the\nsound issue can be avoided in such a case.\n\nBug: 35831966\nTest: background playback\n\nChange-Id: I0eecd7206bedb3b56b837bafe1a63f9a3f8c3703\n"
    },
    {
      "commit": "bed2c85b57d58a2cbfdd8725fffbe31fefe2d476",
      "tree": "0bb2554b4aec05ac49e9d2a29d170847d1bd827e",
      "parents": [
        "df2298ad3206a390ebbdaf26e15da94acdd2daff",
        "aeaa5f825cd62c5bd8a38277cd61006ba91dcb07"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 21 21:48:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 21 21:48:01 2017 +0000"
      },
      "message": "Merge \"NuPlayerSource: clarify getFormat API and fix its usage.\"\nam: aeaa5f825c\n\nChange-Id: I426a5e295bbac1365cf7b21ad6529ba0a544c760\n"
    },
    {
      "commit": "8bc34962d5bfe70e3c2ed086cc728572be4cba50",
      "tree": "10f17c90d9372aab44640af78810808f489c13d9",
      "parents": [
        "c21b625d06c5bee968ec6eb871320a5f0488de39"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 28 14:59:59 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 21 12:40:48 2017 -0800"
      },
      "message": "NuPlayerSource: clarify getFormat API and fix its usage.\n\nTest: manually run mediaplayer\nBug: 33818804\nChange-Id: I1a4e551493fa9521b3b1159182d446e8a9e7d523\n(cherry picked from commit 9737d3497f6ef8bf6a1083aabd8a03569944795d)\n"
    },
    {
      "commit": "bc1713d3b85d7ce656e032da6e4b6b342f14db03",
      "tree": "df2747b33b188cf3b5af2505d1076984120ddc8d",
      "parents": [
        "87251eee475a53599b980334df777326fa8e1527"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 13 18:37:50 2017 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 17 12:25:14 2017 -0800"
      },
      "message": "fallout of splitting rect.h out of libandroid.\n\nA lot of media makefiles didn’t specify libui or\nlibgui but included headers from these libraries\ndirectly. \n\nIt works because these headers are on the global\ninclude path. With this change, though, rect.h\nis not anymore (albeit exported from libui).\n\nTest: built and booted device\nBug: 35164655\nChange-Id: I72e8f0b7bd25c6a67eedc17afe52c4c484a147fe"
    },
    {
      "commit": "ca8126c04c91b6b5030be2e2c8cff786c160faac",
      "tree": "376bdbb9e6d0f96c8c229594eb14971e2fb9af6c",
      "parents": [
        "09b92c347ddcaf751571363e54a769eb4b95edd3",
        "181fd9b5b64bab24bb49a34208f60a16e98488c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 17 19:38:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 17 19:38:52 2017 +0000"
      },
      "message": "Merge \"stagefright: verbose logging for media connect/disconnect\""
    },
    {
      "commit": "181fd9b5b64bab24bb49a34208f60a16e98488c5",
      "tree": "01f5f3e2cd59acbe4a3c7d92f09ff1f5418af206",
      "parents": [
        "42a5de6da0084fd430c70d58671559f71c738cf0"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Feb 16 15:53:03 2017 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Feb 17 03:06:13 2017 +0000"
      },
      "message": "stagefright: verbose logging for media connect/disconnect\n\nbug: 35364355\n\nChange-Id: I7b5f0aecf98733255cc27b091fea78298fa7e602\n"
    },
    {
      "commit": "50b20c9ec88a09147cd76ab5658b079bb061bff3",
      "tree": "eb8bf06eaacfe1c31123767c3a5d5950d2d6edaf",
      "parents": [
        "6ab6061131a10b7f38074c156fd529fa3719a32b"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Feb 16 18:28:58 2017 -0800"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Feb 16 18:28:58 2017 -0800"
      },
      "message": "Removing source stop at flush for Modular DRM\n\nBug:  35445244\nTest: Manual through the test app\nChange-Id: Id25f033b0a4c99ea4838d397a67c610458226394\n"
    },
    {
      "commit": "45f1885997769b04b2c64b201c549724f50057fd",
      "tree": "3f371a77b1f44183a4bc07e9c958036755243de0",
      "parents": [
        "9e96ca0a6ba77d7d02988646314a3bd74e4ea084",
        "06a7081e96369d8c892c492c9158559167f57c27"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Feb 16 06:02:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 16 06:02:26 2017 +0000"
      },
      "message": "Merge \"Fix format string for Modular DRM for MediaPlayer\""
    },
    {
      "commit": "06a7081e96369d8c892c492c9158559167f57c27",
      "tree": "f6bb76a6aa7351fa564736306476d84d5c0b1f5f",
      "parents": [
        "9d4a8cf733e92d1cee181246ceeeee43d5f209d5"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Feb 15 21:57:45 2017 -0800"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Feb 15 21:57:45 2017 -0800"
      },
      "message": "Fix format string for Modular DRM for MediaPlayer\n\nBug:  34559906\nTest: Manual through the test app\nChange-Id: I60e7ee225c5fdfe6d4f1f338059f5d65cdb704c1\n"
    },
    {
      "commit": "e00e39229dedbd424438a3c8a9f88104aaf8bfc6",
      "tree": "2d3aca6bc19ff39f92364fbc4bd39afb4ddbfc75",
      "parents": [
        "9d4a8cf733e92d1cee181246ceeeee43d5f209d5"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Feb 15 20:24:41 2017 -0800"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Thu Feb 16 05:07:24 2017 +0000"
      },
      "message": "Fix format string for Modular DRM for MediaPlayer\n\nBug:  34559906\nTest: Manual through the test app\nChange-Id: I3cf239b0e4b25f5a5040f3f2394fc17eff55123c\n"
    },
    {
      "commit": "cefac14261a32fb856b0d1ab31541787112e306e",
      "tree": "d6fb3a4890929e05a5ffccc2d09c0b9da3d6bddc",
      "parents": [
        "2f77a2229be73b222098c45aed73728842667e12"
      ],
      "author": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Mon Feb 06 21:02:02 2017 -0800"
      },
      "committer": {
        "name": "Hassan Shojania",
        "email": "shojania@google.com",
        "time": "Wed Feb 15 18:15:37 2017 -0800"
      },
      "message": "Modular DRM for MediaPlayer\n\nBug:  34559906\nTest: Manual through the test app\n\nChange-Id: I286f9ff199c34563b7b8643de725f8d1534ea06c\n"
    },
    {
      "commit": "b16ebe1450d4a1d240175a2a9c0c63563d610f1e",
      "tree": "27a90148a860bb4e9b3136b6ee320c3f43bb2647",
      "parents": [
        "949bd11f057b3cb92256ef6c859b0de7746460d1",
        "66e4c4779f17198dd3cb0b13b97a7943c6eae3e5"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 07 18:43:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 18:43:34 2017 +0000"
      },
      "message": "Merge \"NuPlayerRenderer: Handle AMessage post error in openAudioSink\""
    },
    {
      "commit": "949bd11f057b3cb92256ef6c859b0de7746460d1",
      "tree": "6acd459cdc771789a2c98e3461615fcb4a572c31",
      "parents": [
        "d2b0b504f1762cf31f61fda093b180544acd3b53",
        "3539defd032864d33eed6add4820552f6fc4349b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 07 18:43:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 18:43:04 2017 +0000"
      },
      "message": "Merge \"nuplayer: handle error from MediaCodec in Decoder handleAnOutputBuffer\""
    },
    {
      "commit": "66e4c4779f17198dd3cb0b13b97a7943c6eae3e5",
      "tree": "0b3dbb57a99d9ac09cf650c6aaae580f3d6c8a5c",
      "parents": [
        "d7ae0b8529d0b08496392c85ae4d00753e28882e"
      ],
      "author": {
        "name": "Leena Winterrowd",
        "email": "lenhardw@codeaurora.org",
        "time": "Thu Sep 10 15:41:08 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Feb 03 10:42:35 2017 -0800"
      },
      "message": "NuPlayerRenderer: Handle AMessage post error in openAudioSink\n\nAMessage::postAndAwaitResponse can fail if the target looper no\nlonger exists or if allocation of the reply token fails. Check for\nerror in these cases to avoid deferencing a NULL response.\nTest: compiles\nBug: 34805421\n\n(cherry picked from commit b90c8f42036ea773e938cadd0d52480ac703edd7)\n\nChange-Id: Ib76c111a39462e867a41f320c0ba0a220a0c5641\n"
    },
    {
      "commit": "3539defd032864d33eed6add4820552f6fc4349b",
      "tree": "72f2bffb581700faf6b66da7d69ff731fe36332c",
      "parents": [
        "d7ae0b8529d0b08496392c85ae4d00753e28882e"
      ],
      "author": {
        "name": "Santhosh Behara",
        "email": "santhoshbehara@codeaurora.org",
        "time": "Fri Oct 09 17:32:58 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Feb 02 17:21:56 2017 -0800"
      },
      "message": "nuplayer: handle error from MediaCodec in Decoder handleAnOutputBuffer\n\nMediaCodec could send out message of output buffer available right before\nit hits an error and clears its buffers.\nTest: compiles\nAuthor:    Shalaj Jain \u003cshalajj@codeaurora.org\u003e\n\nChange-Id: Ife308f3b8dc0448bcd1112b13cc0805bf7dedd7d\n(cherry picked from commit 55f70d17df468db2b6691cbd7285a461e812eee4)\n"
    },
    {
      "commit": "24a8da67457267e4bac9ac2ffa07e1762510ca34",
      "tree": "bd870ccd666c0e988ae90d808da577124b98696e",
      "parents": [
        "bf3b18fbf4a68184cf65d9fa063ac457d5a2af5a",
        "095bc25818904fa31ae30c454d011f33cc936530"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 27 23:31:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 23:31:54 2017 +0000"
      },
      "message": "Merge \"avc_utils: fix sample aspect ratio.\""
    },
    {
      "commit": "095bc25818904fa31ae30c454d011f33cc936530",
      "tree": "3e6518d87adba2efdc0dd0fc0b5049b6e640a21e",
      "parents": [
        "d7ae0b8529d0b08496392c85ae4d00753e28882e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 27 10:16:16 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 27 13:58:01 2017 -0800"
      },
      "message": "avc_utils: fix sample aspect ratio.\n\nTest: ensure no 0:* and *:0 pattern of sample aspect ratio show up in\nNuPlayer.\nBug: 34770857\n\nChange-Id: I40bb2a9dc0ea7f50e3936d19dadb103d8214edf7\n"
    },
    {
      "commit": "db1221479a7ffe7094c51c463bbd36522ed106ab",
      "tree": "9d551bf00c96d22d529561669e411e3a4416c2be",
      "parents": [
        "fb388a72e613d669e4de8b0e07d64a6bf640b63a"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Jan 25 17:51:55 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Jan 27 00:12:08 2017 +0000"
      },
      "message": "Media Metrics for NuPlayer, Codec, Extractor\n\nCollect metrics for nuplayer/mediaplayer, codec, extractor.\npublishes them to media.metrics service\nprovides hooks that local APIs use to connect to retrieve metrics\nfrom the above when running on their behalf.\n\nSeparate set of changes does the final hop to the local APIs.\n\nBug: 34715803\nTest: build \u0026 run, observed code/extractor/player metrics in logs\nChange-Id: Ic5a0a7b3b93a5a41af93d81050ba038f0f7a4329\n"
    },
    {
      "commit": "dc6f340e537ce511ea1d2f8ce7dc1c4ed231f6a6",
      "tree": "45fc471ff4d3c46d91281d75b2c049bf73104748",
      "parents": [
        "c62b65fd690a585c674caa6e79559bb847e5b3bd"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jan 09 15:04:18 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 17 10:49:33 2017 -0800"
      },
      "message": "mediaplayer: add buffering settings API\n\nTest: compiles, checked that params is passed all the way to source.\nBug:32524218\nChange-Id: I637d1ab09f94a3830a33a39e7e9f1b3efb22357f\n"
    },
    {
      "commit": "2872c7ab71fb554ee14d4e8b65677f9c7a97f966",
      "tree": "9f7dc45786534b506ad0804d6a1c81813a33fdaf",
      "parents": [
        "7e95f0e695f16584416881d17e6193e11ae3559a",
        "48fa06d1e80a872c7495804979256e021e566ae0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Jan 14 02:54:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 14 02:54:24 2017 +0000"
      },
      "message": "Merge \"BufferingSettings: hook up internal BufferingSettings API.\""
    },
    {
      "commit": "d825ab9d5be990a6a7fb28033cfba84441100731",
      "tree": "4ac8dc151f6accb67caa432ee9737dfd060ea4e6",
      "parents": [
        "38267b773f2cdec4d684b12fde73179bcc66e0c7",
        "2c47cd273eb0a39aa4f11b67ea2c0156990bf167"
      ],
      "author": {
        "name": "qinzhichao",
        "email": "qinzhichao@xiaomi.com",
        "time": "Thu Jan 12 23:42:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 12 23:42:35 2017 +0000"
      },
      "message": "Merge \"Fix issues crashing with Fatal signal when calling getFormat\" am: 1808b0e3e4 am: 93b375b781 am: 4fdfda5cd2\nam: 2c47cd273e\n\nChange-Id: If3600c777454e1cb2b3307bae87eac9e551f94a4\n"
    },
    {
      "commit": "4fdfda5cd2b1d8670bdcf6048028f28875710a69",
      "tree": "c4687ccaf09cfe89f9c32bd458705727f95bd5cd",
      "parents": [
        "877f77997987212ae0fbfecb24b35c03a0573006",
        "93b375b781611a4413825821d0794ef452cb84cf"
      ],
      "author": {
        "name": "qinzhichao",
        "email": "qinzhichao@xiaomi.com",
        "time": "Thu Jan 12 23:37:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 12 23:37:33 2017 +0000"
      },
      "message": "Merge \"Fix issues crashing with Fatal signal when calling getFormat\" am: 1808b0e3e4\nam: 93b375b781\n\nChange-Id: I69aac49027bb64539da78406637d3bbce26d0e77\n"
    },
    {
      "commit": "9935bd490fc3c15693156ca5c10d7d533f71d448",
      "tree": "3610cc134cff6b40f296b9386e44707cd8831dd0",
      "parents": [
        "549e43194717a88bb987f006ba3330c3803325e5"
      ],
      "author": {
        "name": "qinzhichao",
        "email": "qinzhichao@xiaomi.com",
        "time": "Sat Dec 31 15:36:18 2016 +0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 11 19:00:28 2017 +0000"
      },
      "message": "Fix issues crashing with Fatal signal when calling getFormat\n\nwhen playing multimedia file, GenericSource::getTrackInfo run in the\nNuPlayerDriver thread, and GenericSource::getFormatMeta run in the\nGeneric thread. they would access the critical resource which is\nmMetaData in IMediaSource. There is no lock to protect mMetaData.\nOccasionally, SIGSEGV occurs when mMetaData point to a new object.\n\nInstead getting trackInfo in Generic thread.\n\nBug: 34220591\nSigned-off-by: qinzhichao \u003cqinzhichao@xiaomi.com\u003e\n"
    },
    {
      "commit": "ab79cd277a3ae4189bf9554be92d08bc3cd0a621",
      "tree": "a4a51224c9a2b164ede8ace9941333437c1baa26",
      "parents": [
        "f44271816fcdc38eee139df872d57fd513347325",
        "9737d3497f6ef8bf6a1083aabd8a03569944795d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 10 01:41:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 10 01:41:52 2017 +0000"
      },
      "message": "Merge \"NuPlayerSource: clarify getFormat API and fix its usage.\""
    },
    {
      "commit": "1de2223f43b0a6363de7d2242a8bfc9323bd64d0",
      "tree": "72afa539930732a8f5b1719a53ea1ae8787c80ab",
      "parents": [
        "e61f9e57e61cbf4d86d6385dd3cddb41e245f749"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jan 04 16:09:50 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jan 09 15:13:31 2017 -0800"
      },
      "message": "NuPlayerDriver: enable more logs.\n\nTest: added logs show up in logcat and bug report.\nbug: 34105140\nChange-Id: I71553fab34e888d6086b505bad46320e155a56c6\n"
    },
    {
      "commit": "d4d00616b6452e16889e6ca14b7fc5380ce0ed43",
      "tree": "eb7de0ece5ca038d23952e67611b9fb8ad30cf0f",
      "parents": [
        "32a5f5d53f9fe2ba584d2ecdf3edd487fb4146a7"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 03 09:36:27 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Jan 06 11:57:58 2017 -0800"
      },
      "message": "Initial Metrics for Media.player\n\nFirst round of logging metrics for media player. This marks\nmime types, resolution, frames/time played, duration of media.\nExpect more data in the future.\n\nBug: 33547820\nTest: run player, observe captured log\nChange-Id: I7bbfaf19e44113f4f285edb72f099b725beace72\n"
    },
    {
      "commit": "9737d3497f6ef8bf6a1083aabd8a03569944795d",
      "tree": "c82904719c030dbd26a6bc56e836b7cf3605d8ee",
      "parents": [
        "0ce91633d8a4f5dcb3706a7734c02ddb5099eefd"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 28 14:59:59 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 28 15:25:14 2016 -0800"
      },
      "message": "NuPlayerSource: clarify getFormat API and fix its usage.\n\nTest: manually run mediaplayer\nBug: 33818804\nChange-Id: I1a4e551493fa9521b3b1159182d446e8a9e7d523\n"
    },
    {
      "commit": "48fa06d1e80a872c7495804979256e021e566ae0",
      "tree": "dfe4dbc77af088971108446620c2cb6717ff4452",
      "parents": [
        "d0c3b930668c9ae76e21f7b0cb6a8ffa7cea3f3b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Dec 20 15:30:49 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 21 12:43:09 2016 -0800"
      },
      "message": "BufferingSettings: hook up internal BufferingSettings API.\n\nTest: compiles\nBug: 32524218\n\nChange-Id: I4b3f1689681560f0c1af3bfc62adee1ce630e218\n"
    },
    {
      "commit": "5249a5583df9a17dc3899100ea642f29eb86a23e",
      "tree": "3143680dce5f6f288154823a75b46d2e39a6c0b6",
      "parents": [
        "2b3867fb87f48a0627e3f8bb37826021df8dbd13"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Dec 05 10:03:53 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 09 15:22:55 2016 -0800"
      },
      "message": "Clean up DRM handling\n\nAvoid calling SniffDrm twice, and remove [gs]etDrmFlag methods\nsince they serve no purpose anymore.\n\nTest: ran forward lock CTS test, and played protected content in Play Movies\n\nChange-Id: I8313d2dae459151bf965a76ac1125d36ce8176e6\n"
    },
    {
      "commit": "d0c3b930668c9ae76e21f7b0cb6a8ffa7cea3f3b",
      "tree": "be1885871dd4b13c8e321c7c05f9a43d3fa2078c",
      "parents": [
        "ede2b25ba23c19265c98cdbb17b0d79d6edb42c4",
        "9a3101b22b5115717faeac986b43fc6618fd3b30"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 07 20:39:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 07 20:39:18 2016 +0000"
      },
      "message": "Merge \"NuPlayer: handle audio output format change in a clean way.\""
    },
    {
      "commit": "9a3101b22b5115717faeac986b43fc6618fd3b30",
      "tree": "dec7281ddce3f4dd29ff7e8cd39f78e3d056031c",
      "parents": [
        "48d8020342a4de6b0b925328ddbdfe34f22253a3"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Nov 08 14:34:24 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Dec 05 14:44:47 2016 -0800"
      },
      "message": "NuPlayer: handle audio output format change in a clean way.\n\nTest: manually run mediaplayer test\nBug: 32659046\nChange-Id: I5935ead79e3f3d2ccb47d9fe5c5ffe489755dcad\n"
    },
    {
      "commit": "ac6b30acb174dbdf35f845924cd63bdc48c43e8a",
      "tree": "07c1c5f102d3321f1dfaf563466933e24ee621b0",
      "parents": [
        "ba1dbe6e1fbb77a6b52549d42402d0ebf7c01c59"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 02 10:55:07 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 02 10:55:07 2016 -0800"
      },
      "message": "Remove unused includes\n\nChange-Id: Ia9e0ca63064b75099f66b8088a9cc4b0af436359\n"
    },
    {
      "commit": "96626b7f9a4e5c9e1e04f7f710383631d1470364",
      "tree": "c4bf3f8aca5060b7574d0a531597145d0bbfe9aa",
      "parents": [
        "66c42ee95b42bea78cfc8035a1ea4e00c34d6cac"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 01 13:58:59 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 01 15:12:27 2016 -0800"
      },
      "message": "Use property_get_bool where possible\n\nMake handling of boolean properties more readable and consistent by\nusing property_get_bool instead of parsing the result of property_get\n\nChange-Id: I8490d0f0b41a92eab5131e0aac0ecdf704a63381\n"
    },
    {
      "commit": "92d57f926eb39d72e8fd8f3b3c9e40d25f77ad47",
      "tree": "42986a629018563b7bb286b4a05082cd83d0216d",
      "parents": [
        "bd54eef2d289f786a7ae02139ce3bb9db2b03b24"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 22 10:36:03 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 28 19:04:03 2016 +0000"
      },
      "message": "Move \u0027sniff\u0027 functionality from DataSource to MediaExtractor\n\nand don\u0027t register the sniffers in every process that plays media,\nbut only in the extractor process.\n\nBug: 33166870\n\nChange-Id: Id269d1eab8be1549542adad3037729a63b5ebaef\n"
    },
    {
      "commit": "fc88363032d90492845ad5b917496589ca225f63",
      "tree": "862f236ce05d7f83003f2be6c57cc6f764240cb5",
      "parents": [
        "48d8020342a4de6b0b925328ddbdfe34f22253a3",
        "29b7dcf6d3cdb97103467dc8106151c6260c239a"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Nov 21 17:53:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 21 17:53:14 2016 +0000"
      },
      "message": "Merge \"Removing widevine classic\""
    }
  ],
  "next": "c5de09127e9e0d5df7aa587be317e1487d793245"
}
