)]}'
{
  "log": [
    {
      "commit": "134d945b9119d3edd7ca36fa587e368aa0997bba",
      "tree": "2b6bca222dc1263733886fe2f996f41b79a73888",
      "parents": [
        "6ce01631b8a7710186bef4d2b4872f255613d6eb",
        "372e8f2b19f3a0018b926f226c8ad0ca62320652"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 14 01:36:03 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 14 01:36:03 2019 +0000"
      },
      "message": "Merge \"Improve concurrency access for updateMetrics()\""
    },
    {
      "commit": "cf272c82a2bda2cb759b62a01ad38d89bd31d356",
      "tree": "d8aae1d1a4d0b6a15386afa95b8ecb26a8cd9ce1",
      "parents": [
        "ba76e4f4a6dc67c93307983d41b52c6441c7349e",
        "f875b213e0655511bc8283f46d701296092838d6"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 13:24:27 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 13 13:24:27 2019 -0800"
      },
      "message": "Merge \"NuPlayer2: Call video flush on audio teardown\" am: bf430563f8 am: d98913f7b5\nam: f875b213e0\n\nChange-Id: Ib523ce5acae56fa834da438e14f71ba54d8e5ed5\n"
    },
    {
      "commit": "f875b213e0655511bc8283f46d701296092838d6",
      "tree": "94bed3826747c7b85ed54ab923ba159ea4763ea1",
      "parents": [
        "29c6a1fa100592aed5654913ddbd9ad5adf0e775",
        "d98913f7b54e9f7a622325d6544789cccf72eebe"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 13:17:13 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 13 13:17:13 2019 -0800"
      },
      "message": "Merge \"NuPlayer2: Call video flush on audio teardown\" am: bf430563f8\nam: d98913f7b5\n\nChange-Id: I4c1f8cf10cd6bbc555d6b453f2555c284ebc5eda\n"
    },
    {
      "commit": "d98913f7b54e9f7a622325d6544789cccf72eebe",
      "tree": "decb3ea5a382eacb9da0ed762c5236d8a47a2c7f",
      "parents": [
        "436d9e9d91adead6f62c1f1fb0b88808414d92ec",
        "bf430563f889db13dbd463dcea92c79b40ec82e9"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 13:11:13 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 13 13:11:13 2019 -0800"
      },
      "message": "Merge \"NuPlayer2: Call video flush on audio teardown\"\nam: bf430563f8\n\nChange-Id: I7c83aed564ac4bb5b4e4a006958ceb87d198a32d\n"
    },
    {
      "commit": "bf430563f889db13dbd463dcea92c79b40ec82e9",
      "tree": "62b80cf250aeb38ef10cee2dd53203eef01ad8c1",
      "parents": [
        "d0939173441f0ff2efcfea44de6924ef18454e6c",
        "8bd4d3946b0308da0fa457ac5ceb6dccb591d78b"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 20:52:26 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 13 20:52:26 2019 +0000"
      },
      "message": "Merge \"NuPlayer2: Call video flush on audio teardown\""
    },
    {
      "commit": "8bd4d3946b0308da0fa457ac5ceb6dccb591d78b",
      "tree": "ff59d867724608353a6e18466f76286efbf738cf",
      "parents": [
        "eca08fb8619db79e7e47b0dba9f8f5f9e961dfef"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 10:38:06 2019 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Feb 13 10:38:06 2019 -0800"
      },
      "message": "NuPlayer2: Call video flush on audio teardown\n\nwhen audio tear down happens, audio gets flushed and seek is issued.\nIf video is not flushed before seek, previous video buffers will be\nrendered and leads to A/V sync issue. Hence call video flush.\n\nBug: 70919418\nTest: MediaPlayer2Test\nChange-Id: I66b6f8e024f29e797a89e68d52c819cddbf37016\n"
    },
    {
      "commit": "8d7fea64521c9e79e81051d615875e8a4e6af610",
      "tree": "ea89a48bdf8764c15a3de328840a5b2b65bd4449",
      "parents": [
        "8c27636d64b702659b6dfe3bc9872a30e8935d01",
        "e0aad0c92795f012e061b7a428ef66cd009d2642"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 12 21:23:40 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 12 21:23:40 2019 -0800"
      },
      "message": "Merge \"Fix bugs regarding clamping of numFrames variable.\" am: f4935e88d1 am: 716f64f54c\nam: e0aad0c927\n\nChange-Id: Icc90f9b1e561d4b3db61730509d65b0a8b0cc0f2\n"
    },
    {
      "commit": "e0aad0c92795f012e061b7a428ef66cd009d2642",
      "tree": "8b4293f5d25c3fc98802db7c11a2e31ab62071ac",
      "parents": [
        "752403d7b33cb3242316037cbd3c1e1a4951ffd8",
        "716f64f54cfef823e8b996427d4c52c9348db5cb"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 12 21:04:08 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 12 21:04:08 2019 -0800"
      },
      "message": "Merge \"Fix bugs regarding clamping of numFrames variable.\" am: f4935e88d1\nam: 716f64f54c\n\nChange-Id: Id52b35a1b5d4fb4f803172f57cabf6487242be85\n"
    },
    {
      "commit": "716f64f54cfef823e8b996427d4c52c9348db5cb",
      "tree": "dd7492506b355a86ac67aedfb7894be9cf98000d",
      "parents": [
        "e08a1f04f3d98d479325bd6ddf91ceaad1c03d1a",
        "f4935e88d1b38756033727c6a70d1530532636b7"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 12 20:54:40 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 12 20:54:40 2019 -0800"
      },
      "message": "Merge \"Fix bugs regarding clamping of numFrames variable.\"\nam: f4935e88d1\n\nChange-Id: Ibac7f239c1c60deae4b17e2ce5d422576c6112a8\n"
    },
    {
      "commit": "82b657f45c39cc22adc13b1fcb16c42ec9228336",
      "tree": "6c2d49631fa56bcc18992980b90cbff3499bb1cb",
      "parents": [
        "bceab46baa96f4b0f77707ec7e1f08c083f6fd14"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 12 18:11:36 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 12 18:15:00 2019 -0800"
      },
      "message": "Fix bugs regarding clamping of numFrames variable.\n\nthere is a clamping value in getDurationUsIfPlayedAtSampleRate function\nnumFrames parameter is uint32_t type. when return value, cast uint32_t to int32_t.\nthat make clamp value of numFrames\nTest: compiles\nBug: 123665692\n\nChange-Id: I12e35df3030659bc10b3e86ed9d1712be6b62a88\n"
    },
    {
      "commit": "062780418f2d259b3649e18bb48c0502943bf9b4",
      "tree": "d5c1a1be42982843e8bf62df7a653f79177561e9",
      "parents": [
        "1342d0740e9a7accd48a7c28725ca61ded231ee1"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Feb 12 12:20:02 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Feb 12 12:23:39 2019 -0800"
      },
      "message": "Log nuplayer2 version information\n\nadd apk/pkg version for mediaplayer2 / nuplayer2 media.metrics info.\n\nBug: 119817586\nTest: logcat\n"
    },
    {
      "commit": "372e8f2b19f3a0018b926f226c8ad0ca62320652",
      "tree": "dcbae95dac10ab55bb8a999f340c0306b30cbe34",
      "parents": [
        "1342d0740e9a7accd48a7c28725ca61ded231ee1"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Feb 11 11:38:31 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Feb 11 11:43:46 2019 -0800"
      },
      "message": "Improve concurrency access for updateMetrics()\n\nnuplayer\u0027s updateMetrics() referenced an unprotected shared stats buffer.\nIt\u0027s a small buffer, so we now make a copy during updateMetrics()\n[at a point where we are mutexed] instead of putting a mutex on the\nunderlying frequently used construct.\n\nEnsure that nuplayer2 has the same protections.\n\nBug: 123256408\nTest: race condition\n"
    },
    {
      "commit": "342d98554de86ed62580bd142dd4ab70c9cb764e",
      "tree": "c79d9ae418102269d979377f2310b12758460ab1",
      "parents": [
        "8d1e0c5b73c03d6d2e1d00c1ad3126b9b92d6cd6"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Sun Jan 27 17:14:15 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Sun Jan 27 17:16:30 2019 +0000"
      },
      "message": "Use the correct headers for header_only_library dependencies on\nlibnativehelper.\n\nBug: 119840313\nTest: m -j100\nChange-Id: I9d9afeb8713cc8daca486c6f96fff09f6f8a473e\n"
    },
    {
      "commit": "89269d69b4d93deed90aa50881d0a5d88b3fd8d9",
      "tree": "b90605dcd07492d22dede6ac3295190892982520",
      "parents": [
        "ba8c48429d82d22737a84d2713fa1880a4654cbd"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Sun Jan 20 14:46:19 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jan 24 15:57:51 2019 -0800"
      },
      "message": "MediaPlayer2 using the new mediametrics stable interface\n\nconverts mediaplayer2 to use the new interface.\n\nBug: 112555455\nTest: boot / relevant ctsMediaTests\nChange-Id: I186c1931408414e9fd42bbc501e636a9624b6a6e\n"
    },
    {
      "commit": "d4ece817f96685f89892d9e0305096be6208c451",
      "tree": "3b04caa49b5006fcf4b1986f701e3e0ad013d463",
      "parents": [
        "723be42fdbbbfe0e50c044952496acb313b2a7a6",
        "b2521645be978f16844aff42222b363ef9d62930"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 09 21:12:22 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 09 21:12:22 2019 -0800"
      },
      "message": "Merge \"NuPlayer2Renderer: support 8/16 bit and float PCM types\" am: d19b646398\nam: b2521645be\n\nChange-Id: Iefe37b747371593f193fcdc37afe4acf269410ef\n"
    },
    {
      "commit": "b2521645be978f16844aff42222b363ef9d62930",
      "tree": "2a141039dfa407cd89ee3f92cc8d9079c024f0b4",
      "parents": [
        "f7f5ab992415e8b62e3a63c054072cfcff04758a",
        "d19b646398356eb6c883246562c291e344a7203b"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 09 21:00:45 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 09 21:00:45 2019 -0800"
      },
      "message": "Merge \"NuPlayer2Renderer: support 8/16 bit and float PCM types\"\nam: d19b646398\n\nChange-Id: I06eb5ea1be91af3c56644f440018bfe4041f91c6\n"
    },
    {
      "commit": "d19b646398356eb6c883246562c291e344a7203b",
      "tree": "c5cf71c436bde0db710469212f9ff8a797ead149",
      "parents": [
        "bccd73e209ca599c9e585ae23b62e30df094f1af",
        "4a16e2ae916cad2f070c85a0052be938377c33ce"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 10 04:39:46 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 10 04:39:46 2019 +0000"
      },
      "message": "Merge \"NuPlayer2Renderer: support 8/16 bit and float PCM types\""
    },
    {
      "commit": "4a16e2ae916cad2f070c85a0052be938377c33ce",
      "tree": "b6072395cf870bfbb1baba83ef58448be332dfcc",
      "parents": [
        "c6b48fe6272db5d3ca910598565c2b48b547ce7f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 15:26:48 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 09 23:48:12 2019 +0000"
      },
      "message": "NuPlayer2Renderer: support 8/16 bit and float PCM types\n\nTest: cts\nBug: 120749869\nChange-Id: I95f9865e7cea00e57f3faebeefd5cd095736201d\nMerged-In: I95f9865e7cea00e57f3faebeefd5cd095736201d\n"
    },
    {
      "commit": "fc9f40f380004ac7f23aa9f4312fdf227181235f",
      "tree": "4cc14286eb62e339895861bb90d2c4731bc67ccc",
      "parents": [
        "435ba2e250da24bed173d4ca7415f5adb5f7846b"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Fri Jan 04 14:15:28 2019 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Jan 09 10:47:02 2019 -0800"
      },
      "message": "jWakeLock\n\nreplace native binder with java PowerManager in JWakeLock\n\nTest: MediaPlayer2Test\nBug: 122470692\nChange-Id: I488758892d225ca31defbe3d96ebf68a57dc9e35\n"
    },
    {
      "commit": "58dc71df204a9b222d252e0cc1dfbe5ed4ba9a90",
      "tree": "fd6bf8eeae532e0246a81379414c31757ce28de7",
      "parents": [
        "261822541bc23754c4ebe784895230bb3c0e752a",
        "362db1aded3ba358e831a4de4d1ed8d8eaed6b7b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 08 15:59:15 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 08 15:59:15 2019 -0800"
      },
      "message": "Merge \"NuPlayerRenderer: handle fractional audio data before EOS\" am: 18c84ba4ec\nam: 362db1aded\n\nChange-Id: Ie616a6129ae619b8a375572dd8050c203bcb7f44\n"
    },
    {
      "commit": "362db1aded3ba358e831a4de4d1ed8d8eaed6b7b",
      "tree": "7e93bcf16ef486605d8fb1493068e62f698e0e52",
      "parents": [
        "d80c35a12d68c1f4c11477eeb32f84f0e49d640d",
        "18c84ba4ec155b58bdfa397b3fa93fb2b7bda284"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 08 15:55:04 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 08 15:55:04 2019 -0800"
      },
      "message": "Merge \"NuPlayerRenderer: handle fractional audio data before EOS\"\nam: 18c84ba4ec\n\nChange-Id: I025ac75e18bfb29e1104154659a1c83176740086\n"
    },
    {
      "commit": "353c3d3663e88a205925f98da5257d025de6ea43",
      "tree": "38c1821f7cab561bd7995a1d873c94d23b7bb5c7",
      "parents": [
        "c041f3043a72f17908d740175d0a00a8098df5b7"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 12:44:38 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jan 08 10:58:02 2019 -0800"
      },
      "message": "NuPlayerRenderer: handle fractional audio data before EOS\n\nWhen audio reaches EOS and MediaClock has not started, use video\ntimestamp to start MediaClock.\nTest: MediaPlayer sends MEDIA_PLAYBACK_COMPLETE\nBug: 122052445\n\nChange-Id: Ia37643b8d5260cda0e7cde22dea883804511cff6\n(cherry picked from commit 1225b9329367ab30587983c78f343734c33af4d4)\n"
    },
    {
      "commit": "797a0e9ea4e3d16e459b559a8b94d62bc5b04638",
      "tree": "091d11806c2c295c1629afbd11617ec4392f1a6e",
      "parents": [
        "4400c9791fefc04d0c991d5f9461a67db151045d",
        "919f85f20efe47e23a37b053a05ff071a770d1d0"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Jan 08 01:31:25 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 08 01:31:25 2019 +0000"
      },
      "message": "Merge changes from topic \"mp2_ndk\"\n\n* changes:\n  MediaPlayer2: replace IPCThreadState with libbinder_ndk.\n  Completely remove Metadata from MediaPlayer2.\n"
    },
    {
      "commit": "2c66f89ff17cc327ace5a6104676a6197a15585e",
      "tree": "048f570dd414fa247e42e316f0b95e61073f1449",
      "parents": [
        "c186a6f9409d7f51c2b82d055b792657d60bb07f"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jan 07 14:39:17 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jan 07 15:06:23 2019 -0800"
      },
      "message": "Completely remove Metadata from MediaPlayer2.\n\ndeprecated Metadata class has dependency on libbinder, so this change\nremoves Metadata usage from MediaPlayer2 completely.\n\nTest: make libmedia2_jni\nBug: 112766913\nChange-Id: I32b0ae618c524a32afee07a21e950dbfad3e5750\n"
    },
    {
      "commit": "c26cc64671b201face4f31e8b78198cfc0f1510b",
      "tree": "abf8d102726f2d338c6383bab856df77050a5fb0",
      "parents": [
        "c186a6f9409d7f51c2b82d055b792657d60bb07f",
        "896b4d6dd04b8624fdb46963f37e494461a4ec45"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 07 19:38:27 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 07 19:38:27 2019 +0000"
      },
      "message": "Merge \"NuPlayer2Renderer: support 8/16 bit and float PCM types\""
    },
    {
      "commit": "896b4d6dd04b8624fdb46963f37e494461a4ec45",
      "tree": "2c221b1e3e7af57db8ca0b7b9f882df3b8659b0d",
      "parents": [
        "8bd05d3cb43121321053e10f1836b5da6f61271f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 15:26:48 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 15:26:48 2019 -0800"
      },
      "message": "NuPlayer2Renderer: support 8/16 bit and float PCM types\n\nTest: cts\nBug: 120749869\nChange-Id: I95f9865e7cea00e57f3faebeefd5cd095736201d\n"
    },
    {
      "commit": "1225b9329367ab30587983c78f343734c33af4d4",
      "tree": "5577c8387b58e6524d34f50c131f6fcc321012b7",
      "parents": [
        "8bd05d3cb43121321053e10f1836b5da6f61271f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 12:44:38 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 12:52:29 2019 -0800"
      },
      "message": "NuPlayerRenderer: handle fractional audio data before EOS\n\nWhen audio reaches EOS and MediaClock has not started, use video\ntimestamp to start MediaClock.\nTest: MediaPlayer sends MEDIA_PLAYBACK_COMPLETE\nBug: 122052445\n\nChange-Id: Ia37643b8d5260cda0e7cde22dea883804511cff6\n"
    },
    {
      "commit": "f60cbe5665dea5b0b244f57815ab49db5a652eea",
      "tree": "c3cccffd83d22a9fbacaad30e6da4f38e0d3de82",
      "parents": [
        "73142871e81c42374cb85390efc1fb7adca230f3"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Dec 21 13:32:36 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Dec 21 13:32:36 2018 -0800"
      },
      "message": "nuplayer2: pass crypto info from extractor to decoder\n\nBug: 121387877\nTest: MediaPlayer2DrmTest\nChange-Id: Iabe59aaffe2b0fae2f5a8420566b41ff324d0758\n"
    },
    {
      "commit": "c37b1908b6a054e4331465bda7d36497b8746001",
      "tree": "c67dcd817f5432b5fd568f247fcf17d9feb932cc",
      "parents": [
        "48d4fff79246d1a988b5538f9f9db5fc57746f9c"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Tue Dec 18 11:36:13 2018 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Dec 19 18:48:40 2018 -0800"
      },
      "message": "Video frame scheduler using public APIs\n\nBug: 112555500\nTest: MediaPlayer2Test\nChange-Id: Ie4b21964c761b4350b50b23271b28cf9dcd933ad\n"
    },
    {
      "commit": "17944af5b111ade413e8e71a34898ccf8a51c15a",
      "tree": "fd28b2e1a64b2bdb75a0ff20f75c9e125da3e67d",
      "parents": [
        "d00c4607a5f7d25dfe925a20a1fc5fd7cfcee67a"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 13 18:13:10 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 13 20:04:45 2018 -0800"
      },
      "message": "mediaplayer2: add srcId for source dependent API\u0027s\n\nTest: cts\nBug: 112549021\nChange-Id: I619c85af8f59cb5956ca0b399e918ea38e3b32b5\n"
    },
    {
      "commit": "92466dd60772c38e563ec42b6b06ef5185d68396",
      "tree": "afb475ba5c923b6ab35354b896c04f84640deb3e",
      "parents": [
        "b21b5ab7c6f9925c8b63d79cefcfbd2d633868d2",
        "18343452006468a83457b9623b082f64fb479169"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 13 05:45:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 13 05:45:21 2018 +0000"
      },
      "message": "Merge \"DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\""
    },
    {
      "commit": "cf80f34cc5e8d16d939df21879d770200defaf6e",
      "tree": "b5b29fbe679c05db09412a5a09ddbb41111226b9",
      "parents": [
        "a92e90e069a8d3d1163d46ac40fc57f260ac6d51",
        "e6c208f5c4a08f5ea47910ce6a4a5ae009182e8b"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 17:05:05 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 11 17:05:05 2018 -0800"
      },
      "message": "Merge \"Fix cert-dcl16-c clang-tidy warnings in libmediaplayer2.\" am: b13d332cf6 am: 981c2e3268\nam: e6c208f5c4\n\nChange-Id: Ib0b63974f20965a59c771343eaf1f647c5cb17ec\n"
    },
    {
      "commit": "e6c208f5c4a08f5ea47910ce6a4a5ae009182e8b",
      "tree": "f34805f6202f5de15cae3fabddb7c4daa16c9c33",
      "parents": [
        "d06f3a304f2fd0fced9e09fee58a7b8b295ef750",
        "981c2e32683ff06edd88157a9fd59c04b332e158"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 16:58:49 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 11 16:58:49 2018 -0800"
      },
      "message": "Merge \"Fix cert-dcl16-c clang-tidy warnings in libmediaplayer2.\" am: b13d332cf6\nam: 981c2e3268\n\nChange-Id: I010d8afaa33dbeb4b0428cfbf91a848eeb926887\n"
    },
    {
      "commit": "981c2e32683ff06edd88157a9fd59c04b332e158",
      "tree": "206aca452a4e1aa530d7c6ab3845a2aecb88ef6d",
      "parents": [
        "e544aba6cbef0be475c4235a658cd8dd32614a26",
        "b13d332cf65b52a212462e9309f4b3b76d624684"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 16:23:10 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 11 16:23:10 2018 -0800"
      },
      "message": "Merge \"Fix cert-dcl16-c clang-tidy warnings in libmediaplayer2.\"\nam: b13d332cf6\n\nChange-Id: Ie0f6cd6db03e2afb460672410636d3fe503f3727\n"
    },
    {
      "commit": "18343452006468a83457b9623b082f64fb479169",
      "tree": "1999a7d544c9bd5b1b4c09a536f0199fd93f1805",
      "parents": [
        "c6b48fe6272db5d3ca910598565c2b48b547ce7f",
        "0cf77658fa992cef0247484ba6b43526a9d2d571"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 13:59:12 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 13:59:12 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\n\nBug: 120502534\nChange-Id: Ifdd73b6dfcf3791fb8dae2b1796a34bb56aea190\n"
    },
    {
      "commit": "d42529d5cc9b5949fd3ec449876d44142c6506b1",
      "tree": "c7c9ce218ac87294bb0a29ee3ec2c26e893b967e",
      "parents": [
        "14c577fac81b8fdcc75e4bf9243f16bd624ba58b"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 13:53:10 2018 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 11 13:53:10 2018 -0800"
      },
      "message": "Fix cert-dcl16-c clang-tidy warnings in libmediaplayer2.\n\nBug: 120614316\nTest: make with WITH_TIDY\u003d1 DEFAULT_GLOBAL_TIDY_CHECKS\u003d-*,cert-dcl16-c\nChange-Id: Iac1ca7c7dc6e20624714e1f279036dd3cf0f9821\n"
    },
    {
      "commit": "bffb47d61fcea60a900c98f37632c93ec1a5b2d6",
      "tree": "d5f2fa0af37d15514e0662d283a9271ca7b8d033",
      "parents": [
        "25427e247dc56d8bd2aad46bc628c696fc47c1a3",
        "0cf77658fa992cef0247484ba6b43526a9d2d571"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Dec 10 10:04:56 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 20:26:00 2018 +0000"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master\n\nBug: 120502534\nChange-Id: I674b89442ad4fb75081fb5b8fdbb8ea89be97c5c\n"
    },
    {
      "commit": "17e1cf21c74d7c76bd98e7e5fd002ee220a67727",
      "tree": "7428011c001871fcc2440bc215222d61e7a89499",
      "parents": [
        "df7d3e08762a077ec6d5c909129472100c9a6649",
        "c3fca0e0d6430ea3eb2a3d710790f32f4a14f3d1"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Dec 07 01:23:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 07 01:23:29 2018 +0000"
      },
      "message": "Merge \"nuplayer2: per-source DRM prepare/release impl\""
    },
    {
      "commit": "df7d3e08762a077ec6d5c909129472100c9a6649",
      "tree": "c5b6e36454a1d838d7ac56fb52c1a7cc5754cff8",
      "parents": [
        "0209452544dfd347de2ddb4e8cfaf89f51bc039c",
        "6671ea8a46da5cbeaba2da4c623353441758cf50"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 17:16:25 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 06 17:16:25 2018 -0800"
      },
      "message": "Merge \"Remove CFI diagnostics.\" am: 64ac8c6301 am: b89b976d77\nam: 6671ea8a46\n\nChange-Id: I4de33cfd8451cceab9ca234d884522e6e9489b08\n"
    },
    {
      "commit": "6671ea8a46da5cbeaba2da4c623353441758cf50",
      "tree": "028c90a937c4b8e8681bd7648c89faff1b325597",
      "parents": [
        "6ff493b2fe11e3ced040c16724f35c76a3e740a1",
        "b89b976d77807ba33edeafc9976cdf7b462adcaf"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 17:00:56 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 06 17:00:56 2018 -0800"
      },
      "message": "Merge \"Remove CFI diagnostics.\" am: 64ac8c6301\nam: b89b976d77\n\nChange-Id: I0f2c332719da81447afb695c124d7b6c6c16b80d\n"
    },
    {
      "commit": "b89b976d77807ba33edeafc9976cdf7b462adcaf",
      "tree": "9a6f5b07dc7952f817c384e5335b40f4a91118e5",
      "parents": [
        "ddb6b5e7543b1a8c7ba91113fffa8de0bd1fa4ee",
        "64ac8c6301d0e809d2fc0935dbf16bf318b4940d"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 16:26:25 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 06 16:26:25 2018 -0800"
      },
      "message": "Merge \"Remove CFI diagnostics.\"\nam: 64ac8c6301\n\nChange-Id: I1b53ec592c27efb662a6f6204b7346cf8fe0cd80\n"
    },
    {
      "commit": "db19f572b941e62ffd688f2198da122977c55a28",
      "tree": "3713ab1298069be97a599b88c5cae6ef0900bee8",
      "parents": [
        "8c545704ea199e13c23f47cd8f4067bcdc25071f"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 10:33:28 2018 -0800"
      },
      "committer": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 10:53:33 2018 -0800"
      },
      "message": "Remove CFI diagnostics.\n\nRemove diagnostics mode from CFI across the board. This should reduce\nperformance overhead and also allows the minimal runtime to work when\nother ubsan sanitizers are enabled. CFI stack dumps should include a\ncfi related function, so it should be apparent when a crash is CFI-related.\n\nBug: 117417735\nTest: make -j\nChange-Id: Id2cb6cb64425c4c89c031d93156fb1a20be5fa7b\n"
    },
    {
      "commit": "c3fca0e0d6430ea3eb2a3d710790f32f4a14f3d1",
      "tree": "c29efd138c978f5a04a2035899501763be4fa4b5",
      "parents": [
        "71738ebf94589faa5aef3c1ba8d53cd17b7fec0f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Dec 04 17:08:04 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Dec 06 18:44:39 2018 +0000"
      },
      "message": "nuplayer2: per-source DRM prepare/release impl\n\nBug: 119675660\nTest: MediaPlayer2DrmTest\nChange-Id: I6252f33560190854b3dde218e303edd0331f30ac\n"
    },
    {
      "commit": "3c3728de60aba0d98c7fa3576a17b1a79582dd33",
      "tree": "aa58e8496e9379b34ac39aa331610817b4033a87",
      "parents": [
        "b6670e3dbe3ca63d6766ae45de809ea97590d817"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Dec 04 17:06:36 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Dec 04 22:59:55 2018 -0800"
      },
      "message": "mediaplayer2: per-source DRM prepare/release iface\n\nBug: 119675660\nTest: MediaPlayer2DrmTest\nChange-Id: I583be4de45cb7de4e1638fb3442511dbabc661b3\n"
    },
    {
      "commit": "608be269771c276d6059c40a2d5f1c87e61725fe",
      "tree": "5e0edfd9d0e87677e75ebb0b3016333fa0467efc",
      "parents": [
        "c55606b22fb908f030150b82194ded0c2038cab3",
        "039224f18894843ea9395d474c0d2051d036f329"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 30 03:10:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 30 03:10:57 2018 +0000"
      },
      "message": "Merge \"NuPlayer: add missing getSelectedTrack in CCDecoder\""
    },
    {
      "commit": "039224f18894843ea9395d474c0d2051d036f329",
      "tree": "799ce989f5cffd1cedd04a5c46ef046547a72d2e",
      "parents": [
        "938b6ca467c19285ec89b98316a13891012887d4"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 29 17:25:17 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 29 17:25:17 2018 -0800"
      },
      "message": "NuPlayer: add missing getSelectedTrack in CCDecoder\n\nTest: cts\nBug: 119938763\nChange-Id: I0dcc35ec65f0912d43aa5b0e3a797334d2581a78\n"
    },
    {
      "commit": "8c8b57a94840bbcf4852eb97195c83bfb8b05bf3",
      "tree": "d9dac7cdcafa7cc66e06561e4dcac8cf50ed854c",
      "parents": [
        "55bb8a1dcce15a931c35d3705afe19c52d06f881"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Nov 28 11:09:50 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Nov 28 11:09:50 2018 -0800"
      },
      "message": "NuPlayer2: fix looper name\n\nTest: cts\nBug: 112549021\nChange-Id: Ied2b37b4812722aacef634be318c79f868c9f692\n"
    },
    {
      "commit": "2a6038e529574bfa183ab1de1fffd01a1504fc3a",
      "tree": "9df5355e91eac1f55bf16c00256dd135d8539a60",
      "parents": [
        "c514e5467caa77730c40874ee72869c13c533647",
        "48c1623453ff6f30fd5d8d640b84c71782de1544"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Nov 19 17:26:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 19 17:26:54 2018 +0000"
      },
      "message": "Merge \"JAudioTrack: fix uninitialized mFlags\""
    },
    {
      "commit": "48c1623453ff6f30fd5d8d640b84c71782de1544",
      "tree": "5cbfa81fb4b1ebab803b81c1200b25d1ae975105",
      "parents": [
        "d1f7ce14c1b97facb2e4fd4bc78677f70092953f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Nov 17 17:22:59 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Nov 17 17:40:23 2018 -0800"
      },
      "message": "JAudioTrack: fix uninitialized mFlags\n\nTest: MediaPlayer2Test#testPlaybackRate is not flaky any more\nBug: 112549970\nChange-Id: Ieb80acd89bf578bdd683f0344dfe40ffa0d40c08\n"
    },
    {
      "commit": "cd0e42759f3820bb42522a7f60396957d40126e4",
      "tree": "e23f104e3caaf89f884d190bebe96dc1a84a7126",
      "parents": [
        "08feec53d2d7760bb6639dc4c93b33f0bd51b79c"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Nov 15 10:49:14 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Nov 15 10:50:10 2018 -0800"
      },
      "message": "MediaPlayer2: replace canOffloadStream with public API.\n\nThis was missed in the previous change, I85c689b029a821\n\nTest: build\nBug: 112549970\nChange-Id: Id9c30f5a1fc759c635662e5efd0b0d824182f502\n"
    },
    {
      "commit": "946bdb362d8bd54afd95c1270c1b6905a298f331",
      "tree": "c50396c7dec306f3f44303b83a25409f55243988",
      "parents": [
        "54cbc29870372ef9d5763c2a86d86508bc351d1b"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Nov 14 10:12:00 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Nov 14 16:19:04 2018 -0800"
      },
      "message": "MediaPlayer2: use AudioManager.isOffloadedPlaybackSupported\n\nTest: MediaPlayer2Test\nBug: 112549970\nChange-Id: I85c689b029a82122ff148c381a021657db2893d4\n"
    },
    {
      "commit": "f872691537da559a5d3f755604dc52e430d12617",
      "tree": "f053337222092b30abb6bf3ec00d9a8df5f10adb",
      "parents": [
        "c25db9303131d04d15f2ca28f1a8f9153becf449"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Oct 17 13:31:26 2018 -0700"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Nov 08 14:18:11 2018 -0800"
      },
      "message": "Enable JAudioTrack.\n\nMediaPlayer2 AudioOutput using public APIs.\n\nBug: 112549970\nTest: android.media.cts.MediaPlayer2Test, android.media.cts.RoutingTest\nChange-Id: Id76d80c040a52fd2ab724999697e222495906aec\n"
    },
    {
      "commit": "4d432f1d0b33b54e49fc21fd583f57e1e86966f1",
      "tree": "f07a3a595d607b972043218c33337c5a81414b3f",
      "parents": [
        "69c9844bed34c367224d5f6219e8410664b2119b"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 01 12:29:06 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Nov 02 20:04:14 2018 +0000"
      },
      "message": "AMediaDataSourceWrapper: keep DataSource sp alive\n\nBug: 118506674\nTest: android.media.cts.MediaPlayer2Test#testConsecutiveSeeks\nChange-Id: Iafa26d6a0fa6ad4aa7dee696fff1673075e51624\n"
    },
    {
      "commit": "e72cb45e3a13e4f6175e53e672ffcb2995c78841",
      "tree": "e66b61cf1549b851fe1efbf63b03a13fd96ccffe",
      "parents": [
        "34056aea2f45149dcbcda09940a8733f83101303"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 30 11:44:59 2018 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 30 14:18:49 2018 -0700"
      },
      "message": "Fix implicit-fallthrough warnings. DO NOT MERGE.\n\nThese changes are not needed in goog/master.\n\nTest: make checkbuild\nBug: 112564944\nChange-Id: I02d5cdaacecf06994f6c26328533eccf511009bb\n(cherry picked from commit 03ef7ffc93e07f59bb5a329b57a9b2006b39af0d)\nExempt-From-Owner-Approval: do not block on new warnings\n"
    },
    {
      "commit": "c292a161349ca16ed36b2d27df8f59d72182558f",
      "tree": "937058571ee3e6cdc7aa0cdb4129fb2538ecd489",
      "parents": [
        "9cc2d5ad2f14e5d19da5a543fad72df8d3ce8c00",
        "e31ac8a2decec1ecda02bc9739984c35783fc92c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 25 22:11:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 25 22:11:19 2018 +0000"
      },
      "message": "Merge \"DataSourceDesc: set max time in ms and us\""
    },
    {
      "commit": "e31ac8a2decec1ecda02bc9739984c35783fc92c",
      "tree": "275526fa98f5be607aa5abbb207adf7b5fb1140d",
      "parents": [
        "2d4cf009bb6e7ed9a35971061323ba566bf1a61c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 25 11:06:21 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 25 11:28:54 2018 -0700"
      },
      "message": "DataSourceDesc: set max time in ms and us\n\nTest: cts\nBug: 112549021\n\nChange-Id: I3198cf221dc17b9c6504b3c160121a385a848487\n"
    },
    {
      "commit": "3d2b89b19abacd1c3c07e8f5bc19551a8583bc2a",
      "tree": "743c162572d5b6a152f66041446955f10566865f",
      "parents": [
        "395ac579a9943f712f2a97333ffb67437653d509"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Oct 24 17:53:23 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Oct 24 17:57:44 2018 -0700"
      },
      "message": "GenericSource2: fix data source reset/init\n\nBug: 118307474\nTest: MediaPlayer2Test.testPlayAudio\nChange-Id: I68ab335294a374637f32637be8738db8347c97d3\n"
    },
    {
      "commit": "5106743a12cd1c93a41ddbc392e6d75535fe1967",
      "tree": "5a9efd5ea2a6a6235ffdeec523e299c8a6767da4",
      "parents": [
        "e1a209a6a99048f50fcce8e47088c211801ef4bf",
        "03ef7ffc93e07f59bb5a329b57a9b2006b39af0d"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 23 16:38:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 23 16:38:32 2018 +0000"
      },
      "message": "Merge \"Fix implicit-fallthrough warnings. DO NOT MERGE.\""
    },
    {
      "commit": "2d4cf009bb6e7ed9a35971061323ba566bf1a61c",
      "tree": "cdeb4ed2ac8c737a85847585c8ba941f011fb0e7",
      "parents": [
        "99b5d269d6ef1ceda16306d463468bc566a89ae0",
        "d1864f9a15c52bfbebb4ca4ffa61341087be6046"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 23 00:00:02 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 23 00:00:02 2018 +0000"
      },
      "message": "Merge \"NuPlayer2: support end position of data source\""
    },
    {
      "commit": "d1864f9a15c52bfbebb4ca4ffa61341087be6046",
      "tree": "4ce78474a2b01e66878e913aa0cca0bf15b78046",
      "parents": [
        "0a0c0278c7c89f0b6a9b5ec75ab13c052d95a4e7"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Oct 19 12:34:56 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Oct 22 13:41:12 2018 -0700"
      },
      "message": "NuPlayer2: support end position of data source\n\nTest: cts\nBug: 112549021\nChange-Id: I5143754eb22fa42c3134474c584d986eb6f2b33d\n"
    },
    {
      "commit": "6fde7ab8ebb7b2e8b8c5db291ce56bb95ad0d1e5",
      "tree": "4bdaf25ed182efe235f9164a2588dea611bcf26a",
      "parents": [
        "efd99ec863f5a69f20dfacea3f6f4835962c5362"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Oct 22 10:25:48 2018 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Oct 22 10:25:48 2018 -0700"
      },
      "message": "Allow implicit-fallthrough warnings locally. DO NOT MERGE.\n\nIt will be a global error by default.\nThis change is not needed for goog/master.\n\nTest: make checkbuild\nBug: 112564944\nChange-Id: Ia716882a2796bdb2222067499906b04b15d661d8\nExempt-From-Owner-Approval: do not block on new warnings\n"
    },
    {
      "commit": "49fb89d3a0853ef77ecd533bec586abc65754857",
      "tree": "c5384ccf1b4c014763cb1039ea1e90d95861b3a3",
      "parents": [
        "cab10da0da9d9a991c4b895992b6c0e34d5b8293"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Jan 31 17:53:19 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Oct 21 15:09:28 2018 -0700"
      },
      "message": "nuplayer2: remove NuCachedSource2 reference from GenericSource\n\nBug: 63934228\nChange-Id: I6862ca94327df88dddd7afaa125622c64d61516b\n"
    },
    {
      "commit": "03ef7ffc93e07f59bb5a329b57a9b2006b39af0d",
      "tree": "75de1b8b5350807e9dbcbd00eae0636ba1486167",
      "parents": [
        "31215a03a3bf554a5e85b21d8e531674bdeac409"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Oct 19 15:30:09 2018 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Oct 19 15:30:09 2018 -0700"
      },
      "message": "Fix implicit-fallthrough warnings. DO NOT MERGE.\n\nThese changes are not needed in goog/master.\n\nTest: make checkbuild\nBug: 112564944\nChange-Id: I02d5cdaacecf06994f6c26328533eccf511009bb\n"
    },
    {
      "commit": "f01e3127b4fb1d35570c2a081dcf7743c059dbab",
      "tree": "14f99df22307e9ce54d553c44576a47ba6ded194",
      "parents": [
        "f719b86b628797339567a81c76bfdea1a81e557a"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 18 11:49:44 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 18 11:49:44 2018 -0700"
      },
      "message": "MediaPlayer2: support start position of data source\n\nTest: cts\nBug: 112549021\nChange-Id: I4062fab27aff101223cfb3924841c8e7c3afa6ce\n"
    },
    {
      "commit": "303bd2da085cf1a8509041c1a0bfbc984e8f9a5d",
      "tree": "349f747b921610e7e1e814a8c347ec2c4eb484e8",
      "parents": [
        "5e0659c82240821cfa6766d33cca438a5f09ef32"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Fri Sep 28 12:52:49 2018 -0700"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Oct 03 18:04:51 2018 -0700"
      },
      "message": "Erase bufferCount in audio output.\n\nTest: Build and run on phone\n\nChange-Id: I8fd62b5ac1f343d6b397b3221c1285b22bf8cd06\n"
    },
    {
      "commit": "1a45cef93b8df626bed1d19e8830148627151d8b",
      "tree": "587b513b65aa846272c520c290a919a57cfa3a77",
      "parents": [
        "66b4c2c74829721f7e12de810b936e5e323a51dd",
        "ec94086752cb0b6cf29abcad841d6e8c69f77f74"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Oct 03 15:51:21 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 03 15:51:21 2018 -0700"
      },
      "message": "Merge \"nuplayer2: Fix two use-after-frees\" am: b6eac609bc am: baa7ec9b3e\nam: ec94086752\n\nChange-Id: Iaf7180c6ea33befb4fa6eafb946be4d14f876fa0\n"
    },
    {
      "commit": "ec94086752cb0b6cf29abcad841d6e8c69f77f74",
      "tree": "f96bf31b3dfe9729cb4f164235091fd1b8aeae0b",
      "parents": [
        "7b8cad4e2458ecfa2e8dc8ddd5fbc8cf44346713",
        "baa7ec9b3e310ddc77d0d4e79d1f30b67d013ad7"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Oct 03 15:45:12 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 03 15:45:12 2018 -0700"
      },
      "message": "Merge \"nuplayer2: Fix two use-after-frees\" am: b6eac609bc\nam: baa7ec9b3e\n\nChange-Id: Idf13fe90334462de5f30b04f25b1e0a7c1dc8709\n"
    },
    {
      "commit": "23256e444364ca08407833f475393a151d825d79",
      "tree": "def85757935db4627154cb98a4f84985d3118e00",
      "parents": [
        "21d312e7187ca9d7399f0ec6cae189cc1c5651c9"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Oct 03 11:18:34 2018 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Oct 03 19:02:10 2018 +0000"
      },
      "message": "nuplayer2: Fix two use-after-frees\n\n- std::ostringstream::c_str returns a string by value, so we can\u0027t\n  immediately call c_str() on it and assign that to a variable.\n- DrmUUID::arrayToHex returns a String8 by value. Similar \"can\u0027t just\n  call string() and assign that to a variable\".\n\nBoth caught by our static analyzer.\n\nBug: None\nTest: Ran the analyzer again\n\nChange-Id: Ia9e0b2b00ee5150225dd487f3611a3893946fa4b\n"
    },
    {
      "commit": "1b9c75e70f0a61931ad9af8fe9da808b07f28c6f",
      "tree": "276b62e43f5541fd8fd08ae500aa876721846b22",
      "parents": [
        "cadb93ccb6d598179c8c074e3fef9eba9b1119bd",
        "612a7cc33a493ec5a07aba3473818edc54ce4dec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 02 22:55:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 22:55:51 2018 +0000"
      },
      "message": "Merge \"Remove libmediadrm from Mediaplayer2 dependencies\""
    },
    {
      "commit": "6376cd5767f85e7f094dbee387c2c345c1e2e664",
      "tree": "c33eb2f7cc9ac15cae55f0fcab9963582c4f7b32",
      "parents": [
        "f0941797537ee31027e6c6e9600eb3fd939b7ea8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 26 11:42:55 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 26 11:42:55 2018 -0700"
      },
      "message": "MediaPlayer2: allow prepared-\u003epause\n\nTest: cts\nBug: 112549021\nChange-Id: I3ead79f5c2441c01b80483e454d34e559129727e\n"
    },
    {
      "commit": "612a7cc33a493ec5a07aba3473818edc54ce4dec",
      "tree": "21870bf033fd8308b2edb9ab977056b13ad9c5ca",
      "parents": [
        "3237d6b595d577aafb7a41ac07cf053d67a42d5a"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Sep 24 16:25:09 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Sep 24 23:48:28 2018 +0000"
      },
      "message": "Remove libmediadrm from Mediaplayer2 dependencies\n\nBug: 109928575\nChange-Id: Ib8fe26d0df91c4aec15b0edabb0e21967ba66fb5\n"
    },
    {
      "commit": "64389ec22a60ba87108f981d4a024aee8cb612b9",
      "tree": "7d40f93c11746508bef8309d5bbc81cfb36b3655",
      "parents": [
        "9e99a1bf3e95685237f5f5571b1c772cc9e5ef5f",
        "700a7c2bfd96bb09e2e5ad2dfdeddbc668039b2c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 19 19:57:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 19 19:57:19 2018 +0000"
      },
      "message": "Merge \"MediaPlayer2: fix setPlaybackParams\""
    },
    {
      "commit": "700a7c2bfd96bb09e2e5ad2dfdeddbc668039b2c",
      "tree": "e25272a17dac30c2dd5123e41943f429352d565d",
      "parents": [
        "4622878b8f7f47f6b9ae41135f9a6d909a5fccdf"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Sep 14 18:04:35 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Sep 14 18:04:35 2018 -0700"
      },
      "message": "MediaPlayer2: fix setPlaybackParams\n\nTest: testSetPlaybackParamsSpeeds\nBug: 112549021\nChange-Id: I9b4bf607e01c421a0f912f4d38b80086ae6c3da7\n"
    },
    {
      "commit": "8b5eeb77158a44d3362dfdc8df30ea09c9d6d72f",
      "tree": "fbdb09b7df2d9e5d8c4b7803dfc57473c0c4c482",
      "parents": [
        "f783424b1ad040f6437ed83ffb690e8ec5c793ec",
        "3bc9597fda7cc1031e0e10296a7ccb5037732d25"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Sep 13 18:04:36 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 13 18:04:36 2018 -0700"
      },
      "message": "Merge \"Suppress implicit-fallthrough warnings in nuplayer*.\" am: daba8f4f19 am: 4eabdc1237\nam: 3bc9597fda\n\nChange-Id: Ie45ea20d706e5c43d09b30be3e71021c207b771e\n"
    },
    {
      "commit": "3bc9597fda7cc1031e0e10296a7ccb5037732d25",
      "tree": "eebc7de682c7a94a7de7eae16d98b572a2484ab5",
      "parents": [
        "fd9ed407e0986dabd2c74958462d466fec14446b",
        "4eabdc123701200b91ca48602458ad254e3b0703"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Sep 13 17:58:16 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 13 17:58:16 2018 -0700"
      },
      "message": "Merge \"Suppress implicit-fallthrough warnings in nuplayer*.\" am: daba8f4f19\nam: 4eabdc1237\n\nChange-Id: I814792ed988e4dfdb077ff121ccf360bd779e593\n"
    },
    {
      "commit": "c89566d5ec0b348693a354242b8fd8308f5d3b7a",
      "tree": "c238ca06e220cf2054315e7384c3e09f31c65d48",
      "parents": [
        "e91c38936da30ecee4784425f4731fb4fc3e3534"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Sep 13 14:22:06 2018 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Sep 13 14:22:06 2018 -0700"
      },
      "message": "Suppress implicit-fallthrough warnings in nuplayer*.\n\nAdd FALLTHROUGH_INTENDED for clang compiler.\n\nBug: 112564944\nTest: build with global -Wimplicit-fallthrough.\nChange-Id: I5b7ab7abb46884b363e13284382eddf7a256a3e2\n"
    },
    {
      "commit": "a0e816ac2a7b1394774776f334de9e066367ecc0",
      "tree": "080b46a69cc83fa8c8c1a1bca1b0938a38bd82ee",
      "parents": [
        "41929fb5f625b80fe5a492fdef3456a74987001e"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Sep 10 19:46:49 2018 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Sep 10 23:15:09 2018 -0700"
      },
      "message": "MediaPlayer2: use protobuf instead of parcel for TimedText\n\nTest: MediaPlayer2Test\nBug: 112767225\nChange-Id: I3f6b06d49b2a245e8350d792c01bccb9fd44037f\n"
    },
    {
      "commit": "41929fb5f625b80fe5a492fdef3456a74987001e",
      "tree": "5a93bbf9a5b0d49b0ce982ac4d673dc7b1390a10",
      "parents": [
        "55071964900997e3bc4a47a931839829e3665028"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Sun Sep 09 08:29:56 2018 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Sep 10 20:39:52 2018 -0700"
      },
      "message": "MediaPlayer2: use protobuf instead of parcel for notification message\n\nTest: MediaPlayer2Test\nBug: 112767225\nChange-Id: I7f5bd177c138a8ad5c005f4505d4d9c5042486a8\n"
    },
    {
      "commit": "083263937bfb1623adf6015da7ca3cdc258e0352",
      "tree": "d54a8f6abca0694cfbee1f3564eee63160fcf235",
      "parents": [
        "efe34a570d91b826b009d40e44c2e470dd180ace"
      ],
      "author": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Tue Aug 07 18:01:50 2018 -0700"
      },
      "committer": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Mon Sep 10 23:19:46 2018 +0000"
      },
      "message": "NuPlayer2CCDecoder: Add bound check before memcpy\n\nTest: none\nBug: 111874331\nChange-Id: I6764802e8e8afd7e970ee433741f73a9b3d366dd\n(cherry picked from commit 71920217d6017a5112ecd73abc4e68c16d680458)\n(cherry picked from commit e96c64a0d21d1ab2c9ba9726766fd8432462888a)\n"
    },
    {
      "commit": "8c927dfd46e5d7952e036cb8360c9e583d79d694",
      "tree": "3a59eda1afe3fb0e93b666f8bcd7e7c6bd894935",
      "parents": [
        "f4942d7989993b8d82010dd1047a4c68d625b324",
        "e2062af59cc21ab42a6db554463b5b4b6ed9509a"
      ],
      "author": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Wed Sep 05 21:57:15 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 05 21:57:15 2018 -0700"
      },
      "message": "Merge \"NuPlayer2CCDecoder: Add bound check before memcpy\" into pi-dev\nam: e2062af59c\n\nChange-Id: I7d0b0d3725426f968952642ab85aaf74cf05b218\n"
    },
    {
      "commit": "9f6319815f0dea99268530f1fd0d0f4f299f7eee",
      "tree": "2b5ee87da59183aa7cc7e5c8bd1cb70d794f2272",
      "parents": [
        "0d97cec0533f47237b16b294fd92a827f2ebdc6f"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Jul 10 12:34:41 2018 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Aug 28 17:47:41 2018 -0700"
      },
      "message": "MediaPlayer2: use protobuf instead of parcel in invoke()\n\nTest: pass MediaPlayer2Test\nBug: 63934228\nChange-Id: Ie3d7c9352f369b6481e35c98e40b736cdff23204\n"
    },
    {
      "commit": "0151ef43e9e435c4fd55652dae40432dc8681c51",
      "tree": "707750ee447f816922e2ff12c6edf7726487c59c",
      "parents": [
        "f42230f2ed5c01f2de62e78d462cb102953be5dc"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 24 16:40:21 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 24 16:40:21 2018 -0700"
      },
      "message": "MediaPlayer2: remove stop and related enums\n\nTest: cts\nBug: 109928575\nChange-Id: Ice031d6cecd4cc3642b57e9cbeeabbf48cd9c1b0\n"
    },
    {
      "commit": "975be2f38fdef33e614aa0f6982f551fabb0d163",
      "tree": "f893acb4bf6c8169cc5005900ffdd2b072b80b24",
      "parents": [
        "e8198ce2bb3d27604dee02299c9de7117124cad2"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Aug 23 18:23:04 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Aug 23 18:23:40 2018 -0700"
      },
      "message": "NuPlayer2: send MEDIA2_INFO_DATA_SOURCE_START when starting\n\nTest: cts testPlaylist\nBug: 109928575\n\nChange-Id: Icc52599504c2c157f7d8ae0777c509f268eaab20\n"
    },
    {
      "commit": "a70beb16195266900997f2f376d2f28017cd45a4",
      "tree": "ba0716f8eb0e1210e663bd48242c2b56deeee401",
      "parents": [
        "9985754cabf9d426bf95e3adfc27cea7fcc86e42"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jul 17 14:10:03 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 23 08:10:30 2018 -0700"
      },
      "message": "Move MediaExtractor back to libstagefright\n\nIt is no longer needed in libmediaextractor, and moving it back\nto libstagefright will avoid a circular dependency later.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I1373a9eedee27998e7733ea23ae1a375e45cc9c3\n"
    },
    {
      "commit": "e96c64a0d21d1ab2c9ba9726766fd8432462888a",
      "tree": "e8d29805f7296814bf500389d37c5999b91187a2",
      "parents": [
        "11e0589b4dea913f66668ea483dd52eed3d3869b"
      ],
      "author": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Tue Aug 07 18:01:50 2018 -0700"
      },
      "committer": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Mon Aug 20 20:26:35 2018 +0000"
      },
      "message": "NuPlayer2CCDecoder: Add bound check before memcpy\n\nTest: none\nBug: 111874331\nChange-Id: I6764802e8e8afd7e970ee433741f73a9b3d366dd\n(cherry picked from commit 71920217d6017a5112ecd73abc4e68c16d680458)\n"
    },
    {
      "commit": "edf39faeee8fbd0743e25ae7071ebcf0418e6c50",
      "tree": "bf9f810c45fc3d8fd49f5c123551dfd5bf692e90",
      "parents": [
        "0f94463362911de14bdfbf00a1c09d3d2fa1b96f",
        "1e1bcaae46b7901f095bc244d554692146deccf2"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Aug 15 20:18:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 15 20:18:40 2018 +0000"
      },
      "message": "Merge \"MediaPlayer2: Remove libdrmframework.so dependency.\""
    },
    {
      "commit": "9af566a4c30a79984bdbb51fb3bc11208ec246b5",
      "tree": "cf1f3fd263dcdea95732213392316fde2d579f1a",
      "parents": [
        "6d567e1f19dafe010bf115148fed0ec034d5ceb9"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 10 16:36:35 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 10 17:35:08 2018 -0700"
      },
      "message": "NuPlayer2Driver: send MEDIA2_INFO_DATA_SOURCE_REPEAT when looping\n\nTest: cts test\nBug: 109928575\nChange-Id: Iaacaa2fa9f957244d305d821d76e5139164e2b35\n"
    },
    {
      "commit": "71920217d6017a5112ecd73abc4e68c16d680458",
      "tree": "1cdaaa05b0bf2c51fc28543c22681a6b32a26e54",
      "parents": [
        "06fcfb071cee44bb0364a379c791bac183c38e45"
      ],
      "author": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Tue Aug 07 18:01:50 2018 -0700"
      },
      "committer": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Wed Aug 08 18:01:01 2018 -0700"
      },
      "message": "NuPlayer2CCDecoder: Add bound check before memcpy\n\nTest: none\nBug: 111874331\nChange-Id: I6764802e8e8afd7e970ee433741f73a9b3d366dd\n"
    },
    {
      "commit": "1e1bcaae46b7901f095bc244d554692146deccf2",
      "tree": "899fb78a5c207c1d7bc5617ceee53a8d46150d0b",
      "parents": [
        "978dcac6101c416158ca234e6ef01baa861bbcd0"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Aug 01 12:44:46 2018 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Aug 03 19:18:15 2018 +0000"
      },
      "message": "MediaPlayer2: Remove libdrmframework.so dependency.\n\nlibdrmframework.so is being used in FileSource and MediaHTTP\nfor Forward Lock DRM use case.\nThis change removes this dependency from MediaPlayer2 by adding\nClearFileSource and ClearMediaHTTP.\nForward Lock DRM use case will be covered by MediaPlayer1.\n\nTest: build \u0026 MediaPlayerTest \u0026 DrmTest\nBug: 111406958\nChange-Id: I5cf51b2d6f477e8fa8950ac931c0142491baa747\n"
    },
    {
      "commit": "c74e507ea7742da83d97768b332b17dcea60cfc0",
      "tree": "1519942b0e58ff015b73b2bba75cb7e80587f238",
      "parents": [
        "d02904c6d5b30d2e32cdd57495c4a182b6187b32",
        "cad5a3a204aca14bf4e6f9aba169f82026549b5e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 01 17:57:07 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 01 17:57:07 2018 +0000"
      },
      "message": "Merge \"mediaplayer2: rename some MEDIA2_INFO_* constants\""
    },
    {
      "commit": "cad5a3a204aca14bf4e6f9aba169f82026549b5e",
      "tree": "d6851f465861fdf081fad7d82daf3124121e5ef6",
      "parents": [
        "f344afa981e537b5f354352284272a8a51cf6759"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jul 31 17:03:56 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jul 31 17:03:56 2018 -0700"
      },
      "message": "mediaplayer2: rename some MEDIA2_INFO_* constants\n\nTest: cts tests\nBug: 109928575\nChange-Id: I186e5c5c43f67cc594fc34fbb0d996587fb98ffb\n"
    },
    {
      "commit": "9b5a7ad0e9901bb1b4ed46f0f1aac5a75ea8e627",
      "tree": "1864c5bc84f8214fd52391e291b20cb2afb5f77b",
      "parents": [
        "93adab132cfdd6e71cee2af14eea711b49a4c76d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jul 27 17:33:24 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jul 27 17:41:55 2018 -0700"
      },
      "message": "NuPlayerDecoder: check buffer size before memcpy\n\nTest: none\nBug: 111649621\nChange-Id: I7f19a66a11eaeb54bf9513a4f56aa1ee7d3d81f5\n"
    },
    {
      "commit": "41cd823562cb58642eb2fe0d19328259227766c4",
      "tree": "7a5c1160d00bd913f8507da52523e0b80b08b448",
      "parents": [
        "8add485d4b07deb5c84feb594c688be514a491c7"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed May 09 00:16:42 2018 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed May 09 07:33:23 2018 +0000"
      },
      "message": "Remove unused `tags` property from Android.bp files\n\nThe tags property is (and has always been) unused by Soong. The property has\nbeen defined as a list of strings, and the `androidmk` converted any\nLOCAL_MODULE_TAGS entries over to it, but we\u0027ve never done anything with it.\n\nIn preparation for removing the definition from Soong, I\u0027m removing it from all\nAndroid.bp files in the tree.\n\nSince this has never done anything, this is a no-op, but if you really did want\nthe Android.mk behavior, the proper way to define a module to be installed in\nuserdebug / eng builds is to use PRODUCT_PACKAGES_DEBUG or PRODUCT_PACKAGES_ENG\nin the appropriate product makefile.\n\nChange-Id: I4a6a26cd7e139c19f63e02d6e1e7a2617c55b72d\nExempt-From-Owner-Approval: global no-op build change\nTest: remove `tags` from Soong, see errors go away.\n"
    },
    {
      "commit": "0cd95065c5d293f0d6e53cd75e44d20106dd2e6e",
      "tree": "a6f501e0ab021946977d8d395ed254e9f36e9283",
      "parents": [
        "bb32f8706f7c7b15c9d1822e9514494864883bd0"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Jan 21 17:41:16 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Mar 05 20:56:57 2018 -0800"
      },
      "message": "nuplayer2: port GenericSource2 to NDK APIs\n\nBug: 63934228\nChange-Id: I8bddacf5ce9eb8f22f3d4a945e0a7db1b52628d3\n"
    },
    {
      "commit": "d83d4f4a43616f38217591ba2d3f10d77fd4e748",
      "tree": "8c4c462635c15290a3436b01dc2614caade4ff84",
      "parents": [
        "b95a5989190a427a7ea092dc18741af524009bdb"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Feb 24 19:02:46 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon Mar 05 20:36:13 2018 +0000"
      },
      "message": "NdkMediaExtractor: per-sample format metadata API\n\nBug: 63934228\nTest: MediaPlayer2Test\nChange-Id: I8ac081ba91152b1bb2e7bb61bf6977f90bcb8e3c\n"
    },
    {
      "commit": "a1d39ba72fd92df6b447939b1bbede5c56df17e6",
      "tree": "54fff7206b48bd7123929128a4fc1e2b1d0a44d4",
      "parents": [
        "062ffd042fcbd237f445d499bc8ea8c5baf61d98"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Mar 02 04:33:02 2018 +0000"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Mar 02 04:33:02 2018 +0000"
      },
      "message": "Revert \"NdkMediaExtractor: per-sample format metadata API\"\n\nThis reverts commit 062ffd042fcbd237f445d499bc8ea8c5baf61d98.\n\nBug: 63934228\nBug: 74089496\n\nReason for revert: original change bypassed presubmit, causing mediaextractor crash, \n\nChange-Id: Iac4c49659dfa7415908d60da98a2285c583a1196\n"
    },
    {
      "commit": "062ffd042fcbd237f445d499bc8ea8c5baf61d98",
      "tree": "689681687a4f67f44b6532a904718eb984919c25",
      "parents": [
        "006b7eebe4c86eba7a67471d99b061b6b76177f5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Feb 24 19:02:46 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Mar 01 14:11:11 2018 -0800"
      },
      "message": "NdkMediaExtractor: per-sample format metadata API\n\nBug: 63934228\nTest: MediaPlayer2Test\nChange-Id: I3e6dc40d39bcb6d939ef7c555c2373995a9b6ae4\n"
    },
    {
      "commit": "c2c0aabfef24cbf48cdf6755f8627386971abdd3",
      "tree": "9ae9ca31e811a59e6530f362f6bac9f324a30209",
      "parents": [
        "4c96b75c87bc3f8dd2da7f76b08a81333b43ce22",
        "6969da62b068aff2aee650d57590532f8fc8de69"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Feb 26 23:30:00 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 26 23:30:00 2018 +0000"
      },
      "message": "Merge \"Revert \"Remove IDataSource dependency from DataSource.\"\""
    },
    {
      "commit": "4c96b75c87bc3f8dd2da7f76b08a81333b43ce22",
      "tree": "f0e8dfb12a8edcb837c59cc793467c7762b13ac3",
      "parents": [
        "54c28999afa7834a8dbc6079a2707598a37db56f",
        "3d21ae3fad5a894cf15f2e7e7a1d54d0f3d19db0"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Feb 26 22:12:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 26 22:12:54 2018 +0000"
      },
      "message": "Merge \"Remove RefBase from the extractor API\""
    },
    {
      "commit": "3d21ae3fad5a894cf15f2e7e7a1d54d0f3d19db0",
      "tree": "4e73f99782f61c1d3d76767b9e03e2aae7ea6130",
      "parents": [
        "13cb23855c3b5242818725262d8822dd4f9be24e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 16 08:24:08 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 23 10:04:34 2018 -0800"
      },
      "message": "Remove RefBase from the extractor API\n\n- Add MetaDataBase base class that MetaData derives from, but which\n  does not derive from RefBase.\n- MediaBuffer::meta_data() now returns a MetaDataBase\u0026 rather than an\n  sp\u003cMetaData\u003e\n- Rename MediaSourceBase to MediaTrack.\n- MediaSource no longer derives from MediaSourceBase (or MediaTrack)\n- MediaTrack::getFormat(), MediaExtractor::getTrackMetaData() and\n  MediaExtractor::getMetaData() all take a MetaDataBase\u0026 parameter that\n  they fill out, rather than returning a MetaData directly (the\n  corresponding methods on MediaSource and RemoteMediaExtractor continue\n  to return MetaData)\n\nBug: 67908544\nTest: CTS MediaPlayerTest, DecoderTest, EncodeDecodeTest, manually record video\n\nChange-Id: Ib531ab309061290be33d40d6100c9a8127e22083\n"
    }
  ],
  "next": "800fe37160c77c2da1dc78ed4e76047a42ea061a"
}
