)]}'
{
  "log": [
    {
      "commit": "c3a5109a543826590ca15d5f7e0670a81f815865",
      "tree": "0c0fede94b0e55a45d986b5f2e860b9f35dd8598",
      "parents": [
        "413ba846b377a1dd094ce94fa6ded78104de8b51",
        "ea911860ef33a1de7d580710def183c178bc6886"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 14 14:24:26 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 14 14:24:26 2019 +0000"
      },
      "message": "Merge \"MediaSessionManager: Add listener for Session2Token changes\""
    },
    {
      "commit": "ea911860ef33a1de7d580710def183c178bc6886",
      "tree": "e529ef0e1c2aa6e69f3e0e71827b58e0c7bec6f0",
      "parents": [
        "88b835f9b8952b0239854b2994339d838aef8b60"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Jan 07 16:45:14 2019 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Jan 14 21:17:24 2019 +0900"
      },
      "message": "MediaSessionManager: Add listener for Session2Token changes\n\nBug: 122234817\nTest: Build and flash manually\nChange-Id: I5098a2437a556a785d405a89ee27868a7d6fb49f\n"
    },
    {
      "commit": "fc02cf7f502cadbf8bdaff933b5ba5ff5c83b2d6",
      "tree": "638cc8ee8c4837b9552ba95d38d094d34512fda6",
      "parents": [
        "0b2f7babbb7fe056f31e7665e8c9f13dfd607580",
        "42dd015a8658e5f0a64dbeedd5ca4d9d4dd967fe"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 14 06:46:23 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 14 06:46:23 2019 +0000"
      },
      "message": "Merge \"Unhide Session2CommandGroup\""
    },
    {
      "commit": "42dd015a8658e5f0a64dbeedd5ca4d9d4dd967fe",
      "tree": "88a7fb1d966cd85848e579e8ee8e92f89545be6f",
      "parents": [
        "eeef9722fdc5c52e00e5564795a1996cada5f3a9"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Thu Jan 10 11:02:48 2019 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Mon Jan 14 12:02:04 2019 +0900"
      },
      "message": "Unhide Session2CommandGroup\n\nBug: 122436036\nTest: atest CtsMediaTestCases:android.media.cts.Session2CommandGroupTest\nChange-Id: I8a3e3fed9c5e5fc900e4c6dfc80ac1a346860321\n"
    },
    {
      "commit": "7534f652bab34f014dd0411050eeaef4c375100a",
      "tree": "6d1853c878df18ca4f7cfe01fe7d27d46df35e53",
      "parents": [
        "ceeadaed26425b59d509eb2c9e152cb422c68a65",
        "e01860a6e921cfb81db3da1fe4e88a67e802471d"
      ],
      "author": {
        "name": "Michael Dooley",
        "email": "mdooley@google.com",
        "time": "Sat Jan 12 14:28:52 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 12 14:28:52 2019 +0000"
      },
      "message": "Merge \"Annotating getModelState method so it can be used by NowPlaying\""
    },
    {
      "commit": "e01860a6e921cfb81db3da1fe4e88a67e802471d",
      "tree": "b23db4a4988c51bc6e88f1b09814f2ea45b75c1b",
      "parents": [
        "a0bf4d7ac2e4b1f5ea8d3127874d2a427f554483"
      ],
      "author": {
        "name": "mike dooley",
        "email": "mdooley@google.com",
        "time": "Thu Jan 10 17:41:11 2019 +0100"
      },
      "committer": {
        "name": "mike dooley",
        "email": "mdooley@google.com",
        "time": "Sat Jan 12 00:37:56 2019 +0100"
      },
      "message": "Annotating getModelState method so it can be used by NowPlaying\n\nTest: none\nBug: 119386757\nChange-Id: If4dcd9fae9b693cd040e74d6e7b10be895b46af3\n"
    },
    {
      "commit": "72994d482e11fc1170c3e5d39f49a66fa7afb833",
      "tree": "e9ba34f67232877f7e22ed5657c3ae1e7204a95d",
      "parents": [
        "d345052a8f972ee6ad03b71b06f4b9b1bfbeea16",
        "c451a82527cf66862e5746250f2b3fb8ebc83ab9"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 11 11:51:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 11:51:16 2019 +0000"
      },
      "message": "Merge changes I185d3723,Id674576a\n\n* changes:\n  Introduce SessionCallbackLink\n  Introduce ControllerCallbackLink\n"
    },
    {
      "commit": "ba1b767e71eca45ecadb2435d36c9f4652ddfc35",
      "tree": "73a704c1e71e840f09ffa458f59a217585866ccd",
      "parents": [
        "35801f78ebafdcda4061823e49ab42393ba6b8ce",
        "bbce3333fcca8b36af3b16eaee46f2334f259ea4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 11 11:45:17 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 11:45:17 2019 +0000"
      },
      "message": "Merge \"MediaSessionManager: Add getSession2Tokens()\""
    },
    {
      "commit": "bbce3333fcca8b36af3b16eaee46f2334f259ea4",
      "tree": "815c04ecd95337ba1bda568b28ba9e9e1d1298a0",
      "parents": [
        "b42f9c93cb230cdd88df4cfaa55a635cc4fb5321"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Jan 04 03:34:38 2019 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Jan 11 16:54:11 2019 +0900"
      },
      "message": "MediaSessionManager: Add getSession2Tokens()\n\nThis currently only returns tokens with the TYPE_SESSION.\nFollow up CLs will change this to also return tokens with other types.\n\nBug: 122234817\nTest: Build and flash manually.\nChange-Id: Ia2f67983393696439020d5ea58976b9ed1662566\n"
    },
    {
      "commit": "5e6d1173b5b6ad1d477c325cefd1a58d10318ffe",
      "tree": "9bf86dc46c7877fe24ec8ff139d1e13ca49ed2b3",
      "parents": [
        "4900d0e4fff43169915d644b62cea969794e4583",
        "79bdaeb839ff148cba42be992a1955504a8671c2"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Thu Jan 10 23:06:44 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 10 23:06:44 2019 -0800"
      },
      "message": "Merge \"Switch to metalava\" am: 806939b1b1 am: 97466ef516\nam: 79bdaeb839\n\nChange-Id: Ia3849d35e85b66c049922fb092ca6e41f6c9aab4\n"
    },
    {
      "commit": "4900d0e4fff43169915d644b62cea969794e4583",
      "tree": "3160c8d26b42eed992a223e88170ff5eb48d1286",
      "parents": [
        "3bf407f5368520f31ed8a709f3dbb639c18bad66",
        "b2b5049077249da08399c6cab7d41f18ef8ea466"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Jan 11 06:58:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 06:58:00 2019 +0000"
      },
      "message": "Merge \"Unhide Session2Command\""
    },
    {
      "commit": "79bdaeb839ff148cba42be992a1955504a8671c2",
      "tree": "3f36aebe395b0feb0946f277bd77bbafac5e2830",
      "parents": [
        "935a491a59d063b08289884dd32fdfb4fe2d0fa1",
        "97466ef51600ed6c3090073bbd3964134a2eaa83"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Thu Jan 10 22:48:02 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 10 22:48:02 2019 -0800"
      },
      "message": "Merge \"Switch to metalava\" am: 806939b1b1\nam: 97466ef516\n\nChange-Id: I39932539d0020241b9e6c63b01a07535fec21210\n"
    },
    {
      "commit": "c451a82527cf66862e5746250f2b3fb8ebc83ab9",
      "tree": "e86fa6988431c7c19c727a768c44cdfcdfb67247",
      "parents": [
        "8cd0ae90413fc30e6a4825e05822788e54ca3a6d"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Mon Dec 31 16:20:44 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 11 15:18:03 2019 +0900"
      },
      "message": "Introduce SessionCallbackLink\n\nIn order to avoid direct AIDL usages in framework, this CL introduces a\nnew public class SessionCallbackLink which can prevent usages of\nISessionCallback.\n\nBug: 122336924\nTest: make update-api -j / make -j\n      atest CtsMediaTestCases:android.media.cts.MediaSessionTest\n      atest CtsMediaTestCases:android.media.cts.MediaControllerTest\nChange-Id: I185d372335104067b6f4ed512fcd2f3b3925642f\n"
    },
    {
      "commit": "8cd0ae90413fc30e6a4825e05822788e54ca3a6d",
      "tree": "ccbc050ad96986d54024c6d5be6414f683c5e0b7",
      "parents": [
        "871a873d6d0fcf8c7ed679c33e2c2d9bfdabd2a2"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Dec 28 15:48:23 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 11 14:42:14 2019 +0900"
      },
      "message": "Introduce ControllerCallbackLink\n\nIn order to avoid direct AIDL usages in framework, this CL introduces a\nnew public class ControllerCallbackLink which can prevent usages of\nISessionControllerCallback.\n\nBug: 122337578\nTest: make update-api -j / make -j\n      atest CtsMediaTestCases:android.media.cts.MediaSessionTest\n      atest CtsMediaTestCases:android.media.cts.MediaControllerTest\nChange-Id: Id674576aa071b7fdbd0082bf6189fef2af2d919b\n"
    },
    {
      "commit": "abe390477b1fa17720ef5437e73e6e94c955abc0",
      "tree": "fb1640778f571e48fd2a9bc028ccc1676df6c99f",
      "parents": [
        "3fbd1c4b74cabe610d25dc1efea3f10add0249a0",
        "eabc8bf0fea50ed2f9346e2b0cbae840e884c8ac"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Jan 11 04:33:26 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 04:33:26 2019 +0000"
      },
      "message": "Merge \"Cannot cast Object[] to Session2Command[]\""
    },
    {
      "commit": "eabc8bf0fea50ed2f9346e2b0cbae840e884c8ac",
      "tree": "7dd85b166d7bf9acbe4142a583b56685a1a99d30",
      "parents": [
        "bd692981600b26849f8f39f38dcf15b75e855c67"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Jan 11 09:55:11 2019 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Jan 11 11:03:16 2019 +0900"
      },
      "message": "Cannot cast Object[] to Session2Command[]\n\nCurrently, Session2CommandGroup#writeToParcel tries to cast Object[]\nto Session2Command[]. This CL casts each object instead.\n\nBug: 122686869\nTest: Will add cts in later CL\nChange-Id: I1a7c1e387bdbb089ae77d729527317959e47fce2\n"
    },
    {
      "commit": "b2b5049077249da08399c6cab7d41f18ef8ea466",
      "tree": "0d87338ba9d5d675ae036e3996b159f1f81ca227",
      "parents": [
        "bd692981600b26849f8f39f38dcf15b75e855c67"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Wed Jan 09 17:37:46 2019 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Jan 11 10:44:18 2019 +0900"
      },
      "message": "Unhide Session2Command\n\nBug: 122435992\nTest: atest CtsMediaTestCases:android.media.cts.Session2CommandTest\nChange-Id: I109fd5383689c211b4019514e498022e2717ea53\n"
    },
    {
      "commit": "c54940f204aed861375041b05fcad79b4ed6ba15",
      "tree": "7d2a5c6637ee6ae722362978a2893b54784cab60",
      "parents": [
        "150c46ef591c96dfef3fabe7f5a1d53b3cbe27da",
        "8022ba126ab29a980b85a59b45b2a90874acfc20"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Jan 10 01:26:35 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 10 01:26:35 2019 +0000"
      },
      "message": "Merge \"jWakeLock\""
    },
    {
      "commit": "f85b3162d7790ffb9c9ae1edaae24a334327096a",
      "tree": "993c4952e111a884174d14675b7bd054138da9ed",
      "parents": [
        "c9fd5fc46bcfaa6f13b21975cd5346dfd593d19b",
        "40056f4afd184c2c4cd013ba1332eb252beda2d2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 09 21:37:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 09 21:37:04 2019 +0000"
      },
      "message": "Merge \"MediaRecorder:add note for setMaxFileSize/Duration\""
    },
    {
      "commit": "3e6812ad4984a3a6ca3d18ee2aea3f69d25e4e5d",
      "tree": "b9a588e877f0fce3c30ef69799504f7bccd4ebcf",
      "parents": [
        "2e1d80d4e7014adbdb7c2b562599c95cf2e21a55"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Wed Jan 09 16:12:24 2019 +0900"
      },
      "committer": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Wed Jan 09 16:12:24 2019 +0900"
      },
      "message": "Switch to metalava\n\nandroid.test.mock, com.android.location.provider and\ncom.android.mediadrm.signer libraries are change to using metalava\ninstead of doclava.\n\nTest: m -j\nBug: 117127012\nChange-Id: I82e838ab60110698e1c0ea8e567467a1b32707ce\n"
    },
    {
      "commit": "ed954eb7e65105ad390b5d15bf87c641d0ef688d",
      "tree": "772c3c75e877a64a4fc4851dd04c21956596b22b",
      "parents": [
        "8f7cd8787db56f62e7daa4f6899a8956a5f6b39c",
        "a862e93b50a6c8221fa5a11a463d41e516678db6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 09 01:09:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 09 01:09:21 2019 +0000"
      },
      "message": "Merge \"MediaPlayer2: add back convenient API\u0027s for current data source.\""
    },
    {
      "commit": "95cb8e40ca343486f24fd8b03eaf8180a6e488a4",
      "tree": "6c9a10b05681ed6bf3fedd38ecab9a71ebcf5e0a",
      "parents": [
        "738441d3fa04138d0ce4dd459841eef6ff8cced8",
        "98e819216c7b8937d20a3795e085855ad9e6668d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 09 00:27:30 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 09 00:27:30 2019 +0000"
      },
      "message": "Merge \"Make PlaybackInfo implement Parcelable\""
    },
    {
      "commit": "8022ba126ab29a980b85a59b45b2a90874acfc20",
      "tree": "4811db5286950f7b2f4dcd8b54279de3658a593a",
      "parents": [
        "cf82717cacbc3d60cfa3f8e7ba33f9b3e6615746"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Mon Jan 07 18:26:42 2019 -0800"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Tue Jan 08 14:30:18 2019 -0800"
      },
      "message": "jWakeLock\n\nreplace native binder with java PowerManager in JWakeLock\n\nTest: MediaPlayer2Test\nBug: 122470692\nChange-Id: I1e5871a50ecac4b0785f064801107e4b6035889a\n"
    },
    {
      "commit": "4c2d5d8c638b5a46ce7f39bdd2c94e2cb2dba4c1",
      "tree": "622b25b950685f333198e234d762adf7137f59b8",
      "parents": [
        "fa432cf4c5358a1b1d039fceecb6b6bb70bf66f0",
        "be2e0e882427915f3a8bdb5033c4e0795ecaafaf"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 08 17:22:54 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 08 17:22:54 2019 +0000"
      },
      "message": "Merge \"Synchronize mediarecorder.h and MediaRecorder.java\""
    },
    {
      "commit": "e6baf1a446c08b29191fbe6dea78c5db85963493",
      "tree": "648b4121b8ea6a05022b008d4b060002a02050d8",
      "parents": [
        "6a8959a8751d39ec13fa7eab8e27f5329b9f9cb4",
        "2166933f2f2a00326c64c92fff138b43378e1a21"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 08 04:41:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 08 04:41:31 2019 +0000"
      },
      "message": "Merge \"Resolve hidden API usage of Handler constructor\""
    },
    {
      "commit": "be2e0e882427915f3a8bdb5033c4e0795ecaafaf",
      "tree": "0a41ddb0e82ea4e92f78cb735ba01b0ad0a03271",
      "parents": [
        "259e7840ffff64aed94fa07ac68dbbe8f96de0f7"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Dec 03 14:28:05 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 07 18:37:12 2019 -0800"
      },
      "message": "Synchronize mediarecorder.h and MediaRecorder.java\n\nThese two files: frameworks/base/media/java/android/media/MediaRecorder.java\nand frameworks/av/media/libmedia/include/media/mediarecorder.h have\nseparate definitions of output formats. The java side was missing the\ndefinition for HEIF format.\n\nBug: 120134664\nTest: manual\nChange-Id: I1176aa1b7b688c9670183652461169fbe19682df\n"
    },
    {
      "commit": "c7011b0862ffbc99fc469a7ef1a68413aa88fc90",
      "tree": "32865e0bf06e2d779f6ed2138a6af7dca2bfef67",
      "parents": [
        "5488754da2ca3f50370b0e6c97d5a85a2043a225"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jan 07 15:04:56 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Jan 07 15:04:56 2019 -0800"
      },
      "message": "MediaPlayer2: replace IPCThreadState with libbinder_ndk.\n\nTest: make libmedia2_jni\nBug: 112766913\nChange-Id: I49c77faea008e873f41f5e496a525d77fe6230c4\n"
    },
    {
      "commit": "98e819216c7b8937d20a3795e085855ad9e6668d",
      "tree": "8b9554444e970d7ad49639c58142f7a0eb54a444",
      "parents": [
        "48c2c2751a75deb4f918fed06665c1f6736823fa"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Jan 03 19:33:05 2019 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Mon Jan 07 15:23:04 2019 +0900"
      },
      "message": "Make PlaybackInfo implement Parcelable\n\nThis CL makes MediaController.PlaybackInfo implement Parcelable, and\nreplaces ParcelableVolumeInfo with the class.\n\nBug: 122243794\nTest: make update-api -j; make -j;\nChange-Id: I89d3df721a43e8c1454dbb3bdcb0b34c943339ce\n"
    },
    {
      "commit": "48c2c2751a75deb4f918fed06665c1f6736823fa",
      "tree": "dcab46faf4efa74b3a2b954360a1f3359e6ce6f9",
      "parents": [
        "18ebaa979cef1109041c20eac8d3f1e49f7931d6",
        "7ad39875fddac6b90695d411fff41c2032ccf8ab"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 07 06:00:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 07 06:00:10 2019 +0000"
      },
      "message": "Merge \"MediaSession2: Tell framework about new MediaSession2\""
    },
    {
      "commit": "2166933f2f2a00326c64c92fff138b43378e1a21",
      "tree": "f2da956c8e2f9c96c1a90828b43f4c3643dc8056",
      "parents": [
        "3f215a1dea6dba3e3714a8c0ce5caa0214db8078"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Mon Jan 07 14:05:35 2019 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Mon Jan 07 14:05:35 2019 +0900"
      },
      "message": "Resolve hidden API usage of Handler constructor\n\nPrevious code uses hidden constructor of Handler to set its messages\nto be asynchronous. This replaces it with Message#setAsynchronous(),\nwhich is public.\n\nBug: 122047488\nTest: build\nChange-Id: I06a958d1bea1c3c0f104c4380fce6084f8e7bad9\n"
    },
    {
      "commit": "7ad39875fddac6b90695d411fff41c2032ccf8ab",
      "tree": "6e6df7c4cf39512b0bd3359994938a9da30a9d83",
      "parents": [
        "fd6057016bcec13e5826fb7081cdaf2f04596615"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Thu Jan 03 15:49:43 2019 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Jan 07 10:40:18 2019 +0900"
      },
      "message": "MediaSession2: Tell framework about new MediaSession2\n\nBug: 122234817\nTest: Build and flash manually.\nChange-Id: If210762c51d33e72ea09e6328eea435b68d2eaa4\n"
    },
    {
      "commit": "30635a95d22d0bd7cdd7764d283a879e1f6cf858",
      "tree": "6403fcb34c072b9b6a84c4506b8ff8b96cd65ebb",
      "parents": [
        "da74280f59a2040b7d5ca96f10f8859e6b45f9a5",
        "d922e0d659586b1763014f5a835de4cfa65f1a4a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 07 00:23:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 07 00:23:45 2019 +0000"
      },
      "message": "Merge \"Unhide MediaItem2\""
    },
    {
      "commit": "38a00d89c54cefe2b65364e2d46fd42fe4c6051c",
      "tree": "17267f825f9da8f05d128b4817d9fffc48ae9605",
      "parents": [
        "97e54a0113e608091e91f79766c1f321642054db",
        "ab715166ee1549976f4a52fc6bb3adda3c01777d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 05 03:22:58 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 05 03:22:58 2019 +0000"
      },
      "message": "Merge \"MediaPlayer: handle concurrency on mTimeProvider\""
    },
    {
      "commit": "ab715166ee1549976f4a52fc6bb3adda3c01777d",
      "tree": "bcfbf55bb6134bcfebb8c947dc76d14ce028e3ad",
      "parents": [
        "a088295e7fc17d6121e70f6ac3c67015565484d1"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Jan 03 14:02:55 2019 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jan 04 15:24:15 2019 -0800"
      },
      "message": "MediaPlayer: handle concurrency on mTimeProvider\n\nBug: 118341983\nTest: cts\nChange-Id: Ieaf082b7dbc3cb93c2398e935ead77ca1810c62a\n"
    },
    {
      "commit": "40056f4afd184c2c4cd013ba1332eb252beda2d2",
      "tree": "e3c13638449407de4d69f47f94e5f4271ceacb39",
      "parents": [
        "53f0d06de59f86378a2b709dd7d160c3fd67292d"
      ],
      "author": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Thu Dec 27 10:36:28 2018 -0800"
      },
      "committer": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Fri Jan 04 10:49:02 2019 -0800"
      },
      "message": "MediaRecorder:add note for setMaxFileSize/Duration\n\nAdded note about the side effects of setting a very large file size and duration using methods\nsetMaxFileSize and setMaxDuration respectively.\n\nBug: 62071579\n\nTest: make offline-sdk-docs\n      Added notes were visible in MediaRecorder.html\n\nChange-Id: I7542da0bb55af286ac0c4c736ef783d8f4a4918a\n"
    },
    {
      "commit": "2bf4ad00cf8f301458466b0b047c684095ea245d",
      "tree": "c59368a222f43ad5f6dad627f0492da385d80d17",
      "parents": [
        "7277abaa5b82d01ce66d7b07617389d9187c04c1",
        "628373035e203b01e19ee87553947a8cd3cef791"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 04 14:07:32 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 04 14:07:32 2019 +0000"
      },
      "message": "Merge \"Migrate frameworks/base/media/tests/MtpTests to androidx.test\""
    },
    {
      "commit": "9839414d27533f2ebb586dd4f0f149b37309951b",
      "tree": "ac5b8c1d2aaeba29449a849e96602db0ae3ac617",
      "parents": [
        "954fc33eb999d92341e8a460215ba3ddaed5d9b3",
        "2d4fe896e29ae26669d4e593aaab8c17eee0dd42"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 04 08:56:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 04 08:56:50 2019 +0000"
      },
      "message": "Merge \"Remove unnecesaary constants of Session2Command\""
    },
    {
      "commit": "d922e0d659586b1763014f5a835de4cfa65f1a4a",
      "tree": "8c7e80fc6f7dde1aefdc389ddd386d16057c6d00",
      "parents": [
        "4e07b513f5ee7b5fd5deba3f9fa9d82bfaffb8bd"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Fri Jan 04 15:01:07 2019 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Fri Jan 04 15:14:22 2019 +0900"
      },
      "message": "Unhide MediaItem2\n\nBug: 122334310\nTest: pass MediaItem2Test\nChange-Id: Icfdefec07071c897e1d70601fa3ff5d21e80e18c\n"
    },
    {
      "commit": "7053844db7431ecc66dfbe46d4f4ecb1cd006ce6",
      "tree": "5a8995c2e06abac6efd09d3ba70863d33f776432",
      "parents": [
        "fcaaba066aa89261c64abab585dc88b2931ad8f4"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 04 03:22:05 2019 +0000"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 04 14:27:45 2019 +0900"
      },
      "message": "Revert \"Introduce ControllerCallbackLink\"\n\nThis reverts commit e521669b5d7aa6ce32bf965bd0bb9a84a2cdb19b.\n\nReason for revert: Another CL will be uploaded which makes the APIs public, not @SystemApi.\n\nBug: 122169124\nChange-Id: Ie9ed1067596fe1724879e81d768ac8252eda7841\n"
    },
    {
      "commit": "fcaaba066aa89261c64abab585dc88b2931ad8f4",
      "tree": "f74ac69292bfcc3a9a04ddc93982bc526762c95a",
      "parents": [
        "ffaf2f3d1b725fbfbd08d72b6322879e4cc5a157"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 04 03:22:14 2019 +0000"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Jan 04 14:20:47 2019 +0900"
      },
      "message": "Revert \"Introduce SessionCallbackLink\"\n\nThis reverts commit 8eee83e59412ff4a281e6c5170881db347627c99.\n\nReason for revert: Another CL will be uploaded which makes the APIs public, not @SystemApi.\n\nBug: 121239657\nChange-Id: I0537ffd487ab6889213b8917615156caaec17eb5\n"
    },
    {
      "commit": "3a745f9011c54482a70a0c70ca0fabc6f1fda4fd",
      "tree": "ff96d528c231abe74c9809e8b3dc15cf13154ac9",
      "parents": [
        "ca64fd3185ce076ea64cdd6b94143271b7f43176",
        "7890a61a449632c6dfd41bf909f62d6917dd3519"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 03 22:20:28 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 22:20:28 2019 +0000"
      },
      "message": "Merge \"Remove libgui.so and re-order shared library list.\""
    },
    {
      "commit": "ecf7b4fed5972d072bdf2e50184d1c90550c0ab7",
      "tree": "23b356e5e79ea155f9c55c0ad9efbfeb07d27d58",
      "parents": [
        "3d1c9d0d3e67f628a59d49063c373cbaee7ce051",
        "ffdb53d7597e88e0f6b1046dbbfc1bf20f524037"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 03 19:51:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 19:51:16 2019 +0000"
      },
      "message": "Merge \"MediaController: Use Context#getPackageName() for RemoteUserInfo\""
    },
    {
      "commit": "c54ffd28f7efa82054ebc4443c7c6a396e07ddd6",
      "tree": "e5728ceb87ad431581d257ce27ceb1ee02ea1a71",
      "parents": [
        "478fac748539df78e6c714c39c8c9dd225e78049",
        "96afa169f786840b20b4a5ecc7523db60b3370dd"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jan 03 17:56:17 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 17:56:17 2019 +0000"
      },
      "message": "Merge \"MediaStore should reflect state on disk.\""
    },
    {
      "commit": "9958c94e4d11abe94545717f360a57a9d6966f61",
      "tree": "39f3eeca6e52b3c44be992d6da50248bc8512abb",
      "parents": [
        "a7b3c1a7b27b023d1407b5350064a62e90859804",
        "d6f65dea013f3cf1b701c055b08d37897de057d0"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jan 03 16:16:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 16:16:50 2019 +0000"
      },
      "message": "Merge \"Dynamic audio policies: multi-zone through uid/device affinity\""
    },
    {
      "commit": "a9ccb721947308b23278c83e66b9606b60df5110",
      "tree": "fa011c90ad0ffaace62652217a5243b11be31b96",
      "parents": [
        "17b07674091737fda72f7ae4be90bc5e9853b1e0",
        "c6cfa0f74bdfb58edf8db1b5a56a337e4b08d989"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 03 10:02:56 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 10:02:56 2019 +0000"
      },
      "message": "Merge \"Implement cancelSessionCommand\""
    },
    {
      "commit": "2d4fe896e29ae26669d4e593aaab8c17eee0dd42",
      "tree": "bd1936bbe0a63f8e7532793fab2c6d01b23fd97e",
      "parents": [
        "c6cfa0f74bdfb58edf8db1b5a56a337e4b08d989"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Wed Jan 02 15:36:31 2019 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Thu Jan 03 15:32:18 2019 +0900"
      },
      "message": "Remove unnecesaary constants of Session2Command\n\nAs ABI, we don\u0027t need to have all the constants defined\nin AndroidX media2.\n\nBug: 121230641\nTest: build\nChange-Id: Ic6a8e1bfa8a3251a97fa5609542eabbfda1ebbac\n"
    },
    {
      "commit": "c6cfa0f74bdfb58edf8db1b5a56a337e4b08d989",
      "tree": "a07e9855a48c8dedaad3b26284d5edb45f12b974",
      "parents": [
        "474dffd225aeb629c4dc511792dec8413a46540f"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 19:21:02 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Thu Jan 03 14:47:13 2019 +0900"
      },
      "message": "Implement cancelSessionCommand\n\nAlso this CL adds missing getter methods of MediaSession2.\n\nBug: 122055262\nTest: build\nChange-Id: I4a3108ca89982e9482b8c0aa8920caad9a4d79c8\n"
    },
    {
      "commit": "d6f65dea013f3cf1b701c055b08d37897de057d0",
      "tree": "48c6ecbb0143f6571c5564d8f8e820a69d9628ca",
      "parents": [
        "252e8d0447eb64a1429a1198ff71f3785db2d2aa"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Dec 18 18:49:14 2018 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jan 02 12:38:12 2019 -0800"
      },
      "message": "Dynamic audio policies: multi-zone through uid/device affinity\n\nAugment dynamic audio policies with audio device affinity for\n apps (a.k.a multi-zone handling), to enable associating apps\n with a set of audio devices (which may form a \"zone\" in cars).\n\nBug: 111647296\nTest: requires device with routing policy started by CarService\nChange-Id: I2994ae80624556d9321f788a0575d9f732157228\n"
    },
    {
      "commit": "96afa169f786840b20b4a5ecc7523db60b3370dd",
      "tree": "8f252788180a12e609ce3be0de088cf9ee3e2320",
      "parents": [
        "7ee09966e2649a2ab122ef577586e82f40085202"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 02 11:46:48 2019 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 02 11:46:50 2019 -0700"
      },
      "message": "MediaStore should reflect state on disk.\n\nIt\u0027s an index of data scanned from disk, and it\u0027s been misleading to\nlet people mutate that data directly in MediaStore, since those\nedits aren\u0027t durable in any way.  We never updated the metadata in\nthe underlying files, so any changes would be lost when moving\nbetween devices.\n\nThis change moves to always re-scan files after they\u0027ve been edited,\nto ensure we pick up metadata changes.  It also ignores direct edit\nattempts from apps.\n\nBug: 120711487\nTest: atest android.media.cts.MediaScannerTest\nTest: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*\nChange-Id: I4cc3ae24d6c6b5f01fe4bb47610ccf162c81ce83\n"
    },
    {
      "commit": "8501ae176328595cf3f5f55991654a95140308e6",
      "tree": "b5c746be1254afc22d70218ede6b464ead03e6b6",
      "parents": [
        "b8862b014a24a860408efa61e507b66afb914160",
        "152d5a5dcda397141bb6a45e29f0a1a7b4afb299"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Wed Jan 02 05:00:54 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 02 05:00:54 2019 -0800"
      },
      "message": "Merge \"Limit access to suspected false positives.\" am: aeda49d185\nam: 152d5a5dcd\n\nChange-Id: I8e10322e69d2d479079df5cf8fec0287c7c117f1\n"
    },
    {
      "commit": "ffdb53d7597e88e0f6b1046dbbfc1bf20f524037",
      "tree": "c3ee249c4df846751b08e897f92790c924eb6d16",
      "parents": [
        "9f7fdc0dabfd1f55b4d346872125e9247b0c3c9f"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Wed Nov 28 17:45:38 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Wed Jan 02 20:18:34 2019 +0900"
      },
      "message": "MediaController: Use Context#getPackageName() for RemoteUserInfo\n\nBug: 111817607, Bug: 111817367\nTest: Manual test, incluing the scenario at b/110525559\nChange-Id: I8dd39073dd8ae4a912e2a20db5493767b9e1d400\n"
    },
    {
      "commit": "c61fc6897c881aacbce739649a7766eb4999c472",
      "tree": "813b131d473aed85800ae41ec0037812dd542ca8",
      "parents": [
        "b29300d8d91c0f40a72a048126fa1bd9c09f93af",
        "8eee83e59412ff4a281e6c5170881db347627c99"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Wed Jan 02 11:03:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 02 11:03:50 2019 +0000"
      },
      "message": "Merge \"Introduce SessionCallbackLink\""
    },
    {
      "commit": "8eee83e59412ff4a281e6c5170881db347627c99",
      "tree": "cb8db01767b870b4994a6e00f7ba5eb35d0958ac",
      "parents": [
        "1ebc3f0d7e98f0099073c722067fc4a4f961c370"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Mon Dec 31 16:20:44 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Wed Jan 02 15:40:16 2019 +0900"
      },
      "message": "Introduce SessionCallbackLink\n\nIn order to avoid direct AIDL usages in framework, this CL introduces a\nnew class SessionCallbackLink which can prevent usages of\nISessionCallback.\n\nAlso, this CL renames ControllerCallbackLink.asBinder() to\nControllerCallbackLink.getBinder().\n\nBug: 121239657\nTest: make update-api -j / make -j\n      atest CtsMediaTestCases:android.media.cts.MediaSessionTest\n      atest CtsMediaTestCases:android.media.cts.MediaControllerTest\nChange-Id: Icbcc4b045b1f6933c63d0d87aedc23b28c03d2de\n"
    },
    {
      "commit": "aea2438616a25e805c9b24413ef1fa370c5ad247",
      "tree": "7f5143dc13fcd789f5489d61be2c7588c0b0e668",
      "parents": [
        "e7fe2a260dbb36ca0ddee302f5f002ed4ba7f898"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 16:54:30 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 20:40:43 2018 +0900"
      },
      "message": "Provide a way to get the command result\n\nBug: 122055262\nTest: build\nChange-Id: Icc6c2c791461df5d47479e82592895fc84b1974e\n"
    },
    {
      "commit": "e7fe2a260dbb36ca0ddee302f5f002ed4ba7f898",
      "tree": "6dbbffaafd81064505848a8ceaa534127c21d962",
      "parents": [
        "b7f8f718d6f30b455377d01f3da39df17059afd2"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 14:20:52 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 20:40:29 2018 +0900"
      },
      "message": "Implement sendSessionCommnad\n\nBug: 122055262\nTest: build\nChange-Id: Ia3269e6bafa4b79ab94bfafedc2c14f75fe84dd8\n"
    },
    {
      "commit": "b7f8f718d6f30b455377d01f3da39df17059afd2",
      "tree": "0058fe30ab4dc94f4fcf95c4e2462fc5aa3ed652",
      "parents": [
        "1ebc3f0d7e98f0099073c722067fc4a4f961c370",
        "cfd36a5ab5cbcfe8e2714587de0200260e364d81"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 31 11:14:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 31 11:14:17 2018 +0000"
      },
      "message": "Merge \"Handle disconnection of MediaSession2/Controller2\""
    },
    {
      "commit": "cfd36a5ab5cbcfe8e2714587de0200260e364d81",
      "tree": "18b5be41689b1892afd04c2c2020fe6c55ebd796",
      "parents": [
        "4c4d22265dd35939eb05a6f36a3eda40305af808"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 09:38:40 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 17:01:53 2018 +0900"
      },
      "message": "Handle disconnection of MediaSession2/Controller2\n\nBug: 122055262\nTest: build\nChange-Id: I388ab76beb8fc41b47e8f6310cc0bcb79b6acc9f\n"
    },
    {
      "commit": "1ebc3f0d7e98f0099073c722067fc4a4f961c370",
      "tree": "81ea64d1d1b7bf2d825b34457156c97af362e72c",
      "parents": [
        "4c4d22265dd35939eb05a6f36a3eda40305af808",
        "e521669b5d7aa6ce32bf965bd0bb9a84a2cdb19b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 31 07:43:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 31 07:43:55 2018 +0000"
      },
      "message": "Merge \"Introduce ControllerCallbackLink\""
    },
    {
      "commit": "e521669b5d7aa6ce32bf965bd0bb9a84a2cdb19b",
      "tree": "4d68646cc0c20773ba1d3a88fec4bdff9e90969e",
      "parents": [
        "2f16d51c993c5957bcecf63b72ae28488355a8be"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Dec 28 15:48:23 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Mon Dec 31 15:05:15 2018 +0900"
      },
      "message": "Introduce ControllerCallbackLink\n\nIn order to avoid direct AIDL usages in framework, this CL introduces a\nnew class ControllerCallbackLink which can prevent usages of\nISessionControllerCallback.\n\nBug: 122169124\nTest: make update-api -j / make -j\n      atest CtsMediaTestCases:android.media.cts.MediaSessionTest\n      atest CtsMediaTestCases:android.media.cts.MediaControllerTest\nChange-Id: I860ea56afc046dd91e065ef207d374c0aa490c8f\n"
    },
    {
      "commit": "4c4d22265dd35939eb05a6f36a3eda40305af808",
      "tree": "72cd1ec56100530b5028b638a6ed0bb9aa07c77e",
      "parents": [
        "6118bf44ccf8b776a96cefc7f5c5052d0fc22f79",
        "938e8e91e846aedb335e8544d2f1951b5858485a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 31 04:08:11 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 31 04:08:11 2018 +0000"
      },
      "message": "Merge changes I9cab65f9,I1773aa05\n\n* changes:\n  Add MediaSession2 builder and update JAVADOCs\n  Add init MediaSession2 and MediaController2\n"
    },
    {
      "commit": "6118bf44ccf8b776a96cefc7f5c5052d0fc22f79",
      "tree": "2ca5c3e1404f6d51b8c4bf107f808984a2041cad",
      "parents": [
        "b557d570bcf2856a2a2e3f0c220a95b4b95cd7be",
        "ca0080d919d71aaa9905811cf10fcc60f727ea1c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 31 03:50:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 31 03:50:26 2018 +0000"
      },
      "message": "Merge \"Change the value of AudioManager#FLAG_FROM_KEY\""
    },
    {
      "commit": "938e8e91e846aedb335e8544d2f1951b5858485a",
      "tree": "97fbcf2ea43891d374fdc644c6c7d33c446a12d2",
      "parents": [
        "f894f77d497471d6a2a4cc46d83b83380c39baa2"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Fri Dec 28 13:37:29 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 11:46:04 2018 +0900"
      },
      "message": "Add MediaSession2 builder and update JAVADOCs\n\nBug: 122055262\nTest: build\nChange-Id: I9cab65f9b09cbe5d5570e4de649ffdff09b20b80\n"
    },
    {
      "commit": "f894f77d497471d6a2a4cc46d83b83380c39baa2",
      "tree": "755c72284155e0dcca2087fcd9be5d3e84a2c1ce",
      "parents": [
        "2f16d51c993c5957bcecf63b72ae28488355a8be"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Fri Dec 28 13:47:08 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Dec 31 11:45:46 2018 +0900"
      },
      "message": "Add init MediaSession2 and MediaController2\n\nThis CL only covers the connection logic between MediaSession2\nand MediaController2.\n\nBug: 122055262\nTest: build\nChange-Id: I1773aa053ea1fce0cc548f334416e47d373f7f86\n"
    },
    {
      "commit": "2e961480fe0f4e87f2b7f621b276035864124f69",
      "tree": "d8dfad89914c55cff65b1a6a2ca276e344837302",
      "parents": [
        "b40b278d19e895fd4bea025cf6ebbbe1b5e55b08"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 28 15:19:20 2018 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Dec 28 15:19:20 2018 -0800"
      },
      "message": "MediaCodecInfo: Fix getSupportedSampleRates for null array\n\nTest: MediaCodecTest#testPCMEncoding\nBug: 122116282\nChange-Id: I3d7e16d130a6653e95e285b38678a8b4946319d7\n"
    },
    {
      "commit": "55418eada51d4f5e6532ae9517af66c50ea495c4",
      "tree": "b93b0483b4ba377e1b4b79d344932fdf78d17de5",
      "parents": [
        "cfc6518c48d1648bb33a0f6633132a726a9bc7f9"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Dec 20 15:30:45 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Dec 28 14:26:35 2018 +0000"
      },
      "message": "Limit access to suspected false positives.\n\nMembers modified herein are suspected to be false positives: i.e. things\nthat were added to the greylist in P, but subsequent data analysis\nsuggests that they are not, in fact, used after all.\n\nAdd a maxTargetSdk\u003dP to these APIs. This is lower-risk that simply\nremoving these things from the greylist, as none of out data sources are\nperfect nor complete.\n\nFor APIs that are not supported yet by annotations, move them to\nhiddenapi-greylist-max-p.txt instead which has the same effect.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nChange-Id: Ia937d8c41512e7f1b6e7f67b9104c1878b5cc3a0\nMerged-In: I020a9c09672ebcae64c5357abc4993e07e744687\n"
    },
    {
      "commit": "31755f94e11225df5d59b8f7e535106200fdf32d",
      "tree": "99d4fd992001fff7b5fd15487c227c88d63936ae",
      "parents": [
        "2f16d51c993c5957bcecf63b72ae28488355a8be"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Dec 20 13:53:36 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Dec 28 11:50:04 2018 +0000"
      },
      "message": "Limit access to suspected false positives.\n\nMembers modified herein are suspected to be false positives: i.e. things\nthat were added to the greylist in P, but subsequent data analysis\nsuggests that they are not, in fact, used after all.\n\nAdd a maxTargetSdk\u003dP to these APIs. This is lower-risk that simply\nremoving these things from the greylist, as none of out data sources are\nperfect nor complete.\n\nFor APIs that are not supported yet by annotations, move them to\nhiddenapi-greylist-max-p.txt instead which has the same effect.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nChange-Id: I020a9c09672ebcae64c5357abc4993e07e744687\n"
    },
    {
      "commit": "5999fd7ec32746e864b07f91ff72575c6e487d57",
      "tree": "71979d031d75772ced0e9c3a957243828614ca6b",
      "parents": [
        "5639004225a3379692aed690ace3216042361748",
        "e1af131a37e0ab3473fcf3f677aeda62daac520c"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Dec 28 04:38:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 28 04:38:40 2018 +0000"
      },
      "message": "Merge \"Media2: Initial commit of Session2Token\""
    },
    {
      "commit": "e1af131a37e0ab3473fcf3f677aeda62daac520c",
      "tree": "866eab7a7f9ffeac01e550db901cdf2a76cf17a3",
      "parents": [
        "b444a8b822b5b8891f100c5b0464b9b997b879c0"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Dec 18 14:17:52 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Thu Dec 27 22:56:39 2018 +0900"
      },
      "message": "Media2: Initial commit of Session2Token\n\nTest: Build\nBug: 121233595\nChange-Id: Ib568013f3b7a2d358fd38a937faddaa17925923a\n"
    },
    {
      "commit": "bf37bd47fdddb1f9920a090735e1b09d7b36abe8",
      "tree": "1f56a58ec8e6ee49898f90261d4da0dd5f038106",
      "parents": [
        "21ffe60b70a8f9fae6ecddb424004bd9ac016d57"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Wed Dec 19 14:03:47 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Thu Dec 27 15:08:44 2018 +0900"
      },
      "message": "Add Session2Command and Session2CommandGroup\n\nBug: 121230641\nTest: build\nChange-Id: Id9d79c90e99db7b78467cf3811d6dff667335a2e\n"
    },
    {
      "commit": "ca0080d919d71aaa9905811cf10fcc60f727ea1c",
      "tree": "f111eb845ca76237be1beb6b59e9b850801db418",
      "parents": [
        "79e0da280ce41a8aecb47e289cbe552240ca2b8d"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Wed Dec 26 16:16:55 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Dec 27 13:47:52 2018 +0900"
      },
      "message": "Change the value of AudioManager#FLAG_FROM_KEY\n\nAs suggested by API review, this CL changes the value of FLAG_FROM_KEY\nfrom 1 \u003c\u003c 12 to 1 \u003c\u003c 16. Also expands Javadoc of the flag as suggested.\n\nBug: 121325822\nTest: make update-api -j / make -j\nChange-Id: Ie40c609c717c68a97b01d88f68ce8ff465e3a89e\n"
    },
    {
      "commit": "51cf66745a85dfaba3a433bff6b88700f5452534",
      "tree": "e88fd694ada1e37fd68dbb6c37305bee55c14616",
      "parents": [
        "89810b25c7e9a4ad78f3939ec4037b6a90d0dfc0",
        "2675ac3c16d1ea09dfa47c3fab86958cdd93a700"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 26 21:48:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 26 21:48:46 2018 +0000"
      },
      "message": "Merge \"MediaRecorder:edit javadoc for vorbis encoder\""
    },
    {
      "commit": "2675ac3c16d1ea09dfa47c3fab86958cdd93a700",
      "tree": "cbed4cf61ccb77da8b267cd7fda87171a47e5eaf",
      "parents": [
        "bc18834f9e0bbd4d724275b91778b6d51737b47e"
      ],
      "author": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Wed Dec 26 11:48:41 2018 -0800"
      },
      "committer": {
        "name": "Gopalakrishnan Nallasamy",
        "email": "gokrishnan@google.com",
        "time": "Wed Dec 26 11:48:41 2018 -0800"
      },
      "message": "MediaRecorder:edit javadoc for vorbis encoder\n\nMediaRecorder.AudioEncoder has unsupported VORBIS audio encoder constant declared. Edited javadoc\ncomment for the same as optional support.\n\nBug: 120211083\n\nTest: make offline-sdk-docs\n      - edited comment visible in MediaRecorder.AudioEncoder.html#VORBIS\n\nChange-Id: I3294d9a768a8f439579f238ee2f1db93f20bc178\n"
    },
    {
      "commit": "2232e861862566418da649290d86f7d2734fffb7",
      "tree": "f665892db380e1057bc767a25d1c3c7222e6ed5a",
      "parents": [
        "41ed670552ee7ba280f1ff52517dce5ff3ad949f",
        "301b5bf50c19f6a4f327c31711a9bce960bb64b5"
      ],
      "author": {
        "name": "Yiwen Chen",
        "email": "evanchen@google.com",
        "time": "Sat Dec 22 04:54:10 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 22 04:54:10 2018 +0000"
      },
      "message": "Merge \"Make RingtoneManager and Ringtone class support VolumeShaper\""
    },
    {
      "commit": "301b5bf50c19f6a4f327c31711a9bce960bb64b5",
      "tree": "e5e429edead7ca57c40a863689c65be4f3a070d1",
      "parents": [
        "609b669506cc1f61f5942bb93dbde948903171f6"
      ],
      "author": {
        "name": "Yiwen Chen",
        "email": "evanchen@google.com",
        "time": "Wed Dec 12 12:35:43 2018 -0800"
      },
      "committer": {
        "name": "Yiwen Chen",
        "email": "evanchen@google.com",
        "time": "Fri Dec 21 16:11:27 2018 -0800"
      },
      "message": "Make RingtoneManager and Ringtone class support VolumeShaper\n\nBug: 120789399\nTest: When finish the whole change, flash into a dev phone to test first.\nChange-Id: I4620fac5f1c34d37b3b33565cebbea2c091a5d08\n"
    },
    {
      "commit": "2472c30d81ab21fd0a7b8439119f98e88c976ad5",
      "tree": "843e0bd81412b0d601b8287b43b930f5f9c80d47",
      "parents": [
        "ce3083dcb41267397e3cb4ff6dda50f982aabce5"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 21 09:30:55 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 21 15:34:29 2018 -0800"
      },
      "message": "MediaPlayer2: keep EventCallbacks when reset\n\nTest: cts\nBug: 112549021\nChange-Id: I1eb4f47bf1c289a35a45e1017a28d7bd4ab8c5e8\n"
    },
    {
      "commit": "7890a61a449632c6dfd41bf909f62d6917dd3519",
      "tree": "325a5484a38a5d36ed5652c93fa29181a196cc06",
      "parents": [
        "4f180e81de683c82304dfae3038bb8996bcc9fb0"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Dec 21 15:31:08 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Dec 21 15:31:08 2018 -0800"
      },
      "message": "Remove libgui.so and re-order shared library list.\n\nTest: build\nBug: 112766913\nChange-Id: Ic2f04e30acb68ec6264f46d5dbfbdff5252fe970\n"
    },
    {
      "commit": "edc0290709d5e3e5e300bd65f6469ca54dbc2456",
      "tree": "57fa6dd0e56eb073a86557dfab46a191d45c5203",
      "parents": [
        "c97dbc3c46ded26a99002971c53acfc572f66fd0",
        "a6f5f7d89be1e94135297248d17cd14d4c91e322"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 21 03:48:22 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 21 03:48:22 2018 +0000"
      },
      "message": "Merge \"MediaPlayer2: fix a typo\""
    },
    {
      "commit": "a6f5f7d89be1e94135297248d17cd14d4c91e322",
      "tree": "efce3cda4213dc4761f41acfcecd669e2037a09c",
      "parents": [
        "72830edb8b2ee2f08b5fec8b7624f35d017483fd"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 20 15:43:57 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 20 15:43:57 2018 -0800"
      },
      "message": "MediaPlayer2: fix a typo\n\nTest: cts\nBug: 112549021\nChange-Id: I2b3803045d5e96d3ae186a8ff53dd11ea53bb18f\n"
    },
    {
      "commit": "333dfad3bf51340e93a00e3fe440641b96414f8a",
      "tree": "9d3f3ad08dba204f6adcbcb98d83a399b9b9060f",
      "parents": [
        "69b9900a277099d6c4c56ea63eec3d3598eb0dac"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 14 17:22:22 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 20 19:17:29 2018 +0000"
      },
      "message": "Add AudioRecordingConfiguration changed callback\n\nAdd a callback reporting changes in current audio recording\nconfiguration for AudioRecord and MediaRecorder.\nThe callback is called when the capture path configuration\nchanges (pre preprocessing, format, sampling rate...) or capture\nis silenced/unsilenced by the system.\n\nBug: 111438757\nTest: CTS tests for AudioRecord and MediaRecorder\nChange-Id: Ifd5c5b4f5ee8911822a3f05412c84edf2db7858a\n"
    },
    {
      "commit": "5f658dfbb3c4badea2210a7eeebed2abecb2a5e7",
      "tree": "6bed72c34a692cbef44cbf16ff5f8369cd5476e4",
      "parents": [
        "e1145f0042555927c08a2cd3581c8cc08c5f7957",
        "c14da1ea14f122a6381abbf4ec595a4267692a22"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 20 18:13:58 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 20 18:13:58 2018 +0000"
      },
      "message": "Merge \"MediaPlayer2: allow reusing DataSourceDesc\""
    },
    {
      "commit": "c7a0cdfe1bdfd812fa2fb5ec6dafed7a197b8642",
      "tree": "3778e48f1fb0e68797d7642be0be4274816bc647",
      "parents": [
        "d692ddf66dc1ccc184a6a6b2fff9aa072d142006"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 30 12:16:52 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Dec 19 17:57:09 2018 -0800"
      },
      "message": "AudioRecordingConfiguration: report more info about active use case\n\nReport more information in onRecordingConfigChanged() callback and\nAudioRecordingConfiguration:\n    - For client:\n      - Port ID (package private)\n      - Enabled effects\n      - Silenced by policy\n    - For stream:\n      - Active effects\n      - Active audio source\n\nBug: 111438757\nTest: CTS tests for AudioRecordingConfiguration\nChange-Id: I84952614ee5d9ede23afd5836c68da7a20e79a2e\n"
    },
    {
      "commit": "c14da1ea14f122a6381abbf4ec595a4267692a22",
      "tree": "7cc1526851b5aa961cdce9636596430eefc50137",
      "parents": [
        "e51dab22aa253a0dae628d7227a388a5ae55bc00"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 19 14:15:50 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 19 17:50:18 2018 -0800"
      },
      "message": "MediaPlayer2: allow reusing DataSourceDesc\n\nTest: cts\nBug: 112549021\nChange-Id: Ib1c8daddcb04be00b75df3e4928904376a5e16bd\n"
    },
    {
      "commit": "a862e93b50a6c8221fa5a11a463d41e516678db6",
      "tree": "b64c73f17988a4de8b50849d6926b95673629c9d",
      "parents": [
        "e51dab22aa253a0dae628d7227a388a5ae55bc00"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 19 10:55:24 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Dec 19 12:55:17 2018 -0800"
      },
      "message": "MediaPlayer2: add back convenient API\u0027s for current data source.\n\nTest: cts\nBug: 112549021\nChange-Id: Ia51e2352a9f42b8b994623db1cfe8b4227c52ab2\n"
    },
    {
      "commit": "728e13b7b9f19ef8a4b578f3078bd40f235ac914",
      "tree": "d172de31732e67a24f42fc7f0a6d5047cd3e0ae8",
      "parents": [
        "b16edc0614f9f700b41b29641b31e16cc6640a2f"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Tue Dec 18 11:58:08 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Wed Dec 19 15:03:49 2018 +0900"
      },
      "message": "Add MediaItem2\n\nBug: 121216661\nTest: build\nChange-Id: I7dfd36bbc1feeeb0a80641940579b3d6187bd2f2\n"
    },
    {
      "commit": "e8b3d96bc6abe76f894c8134e76e46a82e90565e",
      "tree": "a554c5dcbaf247569fdc0d9676cc653714b13005",
      "parents": [
        "4465267f1de82b88c80a0aafd54b880814a104c8",
        "32f6c7c09755a9017de033a0a0cfe97182494d87"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Dec 18 22:04:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 22:04:40 2018 +0000"
      },
      "message": "Merge \"Improve thumbnail generation utilities.\""
    },
    {
      "commit": "32f6c7c09755a9017de033a0a0cfe97182494d87",
      "tree": "571e3c9e8f77cdae9ef2e0d60b9d991bb67328d6",
      "parents": [
        "b0c363b21e2ab5bc8bc2f153442ce0e79f6011d7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 18 09:51:45 2018 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 18 10:03:10 2018 -0700"
      },
      "message": "Improve thumbnail generation utilities.\n\nThe existing APIs were pretty limited by only accepting a \"kind\"\nvalue, so improve them to accept an arbitrary size, and offer a way\nto cancel requests when no longer needed.\n\nThe older APIs were a mix of both public and @UnsupportedAppUsage,\nso mark them all both public and deprecated so we can clearly steer\ndevelopers towards better options.  (The deprecated methods are\nimplemented using the new APIs internally for sanity.)\n\nUse modern ImageDecode internally, which is more robust than\nBitmapFactory.  Add CTS to confirm that we generate thumbnails of\nreasonable sizes.\n\nBug: 119887587\nTest: atest android.media.cts.ThumbnailUtilsTest\nChange-Id: I4ca35569ad5c661b327a0cb24a48ebc21f6087b7\n"
    },
    {
      "commit": "8af36f78bee271df41d0b41b97cb9d7862a7a300",
      "tree": "0a037990f55070689421c10e0e7c6004aab0245f",
      "parents": [
        "be21b4a610fe91f6748dcc09bb1aa98c7fbb72f8",
        "c1c60d46ca419399238bf158cff63d06b551e972"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 18 04:24:12 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 04:24:12 2018 +0000"
      },
      "message": "Merge \"Fix build for libmedia2_jni\""
    },
    {
      "commit": "628373035e203b01e19ee87553947a8cd3cef791",
      "tree": "2e3f39051b77d108a1b817b82cc2f1e1553d9387",
      "parents": [
        "77a8a387f05c2051d637fc05a1012309faac8b63"
      ],
      "author": {
        "name": "KOUSHIK PANUGANTI",
        "email": "kpanuganti@google.com",
        "time": "Mon Dec 17 19:02:30 2018 -0800"
      },
      "committer": {
        "name": "Koushik Panuganti",
        "email": "kpanuganti@google.com",
        "time": "Tue Dec 18 03:06:03 2018 +0000"
      },
      "message": "Migrate frameworks/base/media/tests/MtpTests to androidx.test\n\nSee go/jetpack-test-android-migration\n\nTest: make checkbuild\nChange-Id: Ic101be84c83a227b0e5c5c5c20357831c1419f8c\n"
    },
    {
      "commit": "77a8a387f05c2051d637fc05a1012309faac8b63",
      "tree": "98e140191fa4f30f7c9cccc94583e950077fc827",
      "parents": [
        "2ae0e21c348864142a6a8f5bd76f4adb16eb67da",
        "78a88fcba466b8763323b2d2df4c953b0426bf43"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 18 02:02:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 02:02:40 2018 +0000"
      },
      "message": "Merge \"MediaPlayer2: add DataSourceDesc for source dependent API\u0027s\""
    },
    {
      "commit": "f51deea70e60a3e9aaf3b255897b89325856ceee",
      "tree": "2e037d160687b13d3123a1329006451c74708f4e",
      "parents": [
        "339699b59f0f0c3532ca5990fe764fc4e3a4ebeb",
        "5fbf64934f17fe400aef19535709772553c595d3"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Dec 18 01:24:35 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 01:24:35 2018 +0000"
      },
      "message": "Merge \"Remove unusued code; MediaPlayerBase and MP.set|getBufferingParams\""
    },
    {
      "commit": "c1c60d46ca419399238bf158cff63d06b551e972",
      "tree": "d28249807dbd24ff7be4ff7e1529c6be195fece8",
      "parents": [
        "6aa9d7c1492403f3172d546b6865ebb06c72ccca"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Dec 17 16:56:58 2018 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Dec 17 16:56:58 2018 -0800"
      },
      "message": "Fix build for libmedia2_jni\n\nMpeg2ts static lib now uses the hidl allocator\nto get the hidl memory.\n\nbug: 112766913\nbug: 111407253\nChange-Id: I588e9a603a0dd34dd90a69a32a9b355222507ff2\n"
    },
    {
      "commit": "5fbf64934f17fe400aef19535709772553c595d3",
      "tree": "6202457a032d80ef29df9ef5603d381716c5bcf7",
      "parents": [
        "baa9c5fb55537a39a19b761440697b463fa279ca"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 17 10:50:50 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 17 13:34:33 2018 -0800"
      },
      "message": "Remove unusued code; MediaPlayerBase and MP.set|getBufferingParams\n\nTest: build\nBug: 112766913\nChange-Id: I999a637a1cb47a28a032478f3c56ab0645837f92\n"
    },
    {
      "commit": "78a88fcba466b8763323b2d2df4c953b0426bf43",
      "tree": "cdb47f2d313461baff2f72b6771bf416a639138c",
      "parents": [
        "159c83c57b8c91a641a6073439f8d1963c8527cf"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Dec 13 18:03:11 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Dec 17 10:57:06 2018 -0800"
      },
      "message": "MediaPlayer2: add DataSourceDesc for source dependent API\u0027s\n\nTest: cts\nBug: 112549021\nChange-Id: Iecdb8cecc21abfdb906f30f93f3a5d02c2d8e16a\n"
    },
    {
      "commit": "864323beba6a67807c052d2e9dc0689211a4ae3d",
      "tree": "c0fadcd4e6ed52861d7124645e701477013725bb",
      "parents": [
        "b73c564db40041cd2c34b9b29a004986f668f96d",
        "a13857321fcad0694ce207226be8a46a2e4980a0"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Mon Dec 17 05:04:04 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 17 05:04:04 2018 +0000"
      },
      "message": "Merge \"AML: Remove unbundling MediaMetadata in MediaSessionRecord\""
    },
    {
      "commit": "a13857321fcad0694ce207226be8a46a2e4980a0",
      "tree": "475df2444ec6e63cf8f77de89fc5a7e291309728",
      "parents": [
        "f5e7cce304b0acb89c82f7bd6342666091135a61"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Fri Dec 07 14:36:14 2018 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Sun Dec 16 17:49:49 2018 +0900"
      },
      "message": "AML: Remove unbundling MediaMetadata in MediaSessionRecord\n\nIn order to record a log when MediaMetadata is unparceled in the\nsystem process, MediaMetadata calls Bundle#setDefusable when it\nis initialized. In order to avoid unnecessarily making\nBundle#setDefusable a public API, this CL removes the unparceling\ninstance in MediaSessionRecord by extracting the necessary\ninformation inside MediaSession and sending them to\nMediaSessionRecord separately.\n\nBug: 119789387\nTest: Build\nChange-Id: I7d44fd05250a291bd8d64850cc3c6f47236f9f62\n"
    },
    {
      "commit": "acf2796db9878a337442b463abb4e73cd3e43c37",
      "tree": "318cad9fe25232a5baf967c832c69f072b3e944f",
      "parents": [
        "159c83c57b8c91a641a6073439f8d1963c8527cf"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 14 11:16:30 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Dec 14 11:16:30 2018 -0800"
      },
      "message": "DataSourceCallback: fix java docs\n\nTest: make offline-sdk-docs\nBug: 112549021\nChange-Id: I4c082f3e9547a768f9327cfaf874f3bba0dab8bf\n"
    },
    {
      "commit": "76740526846fd0af0628f309075467d42e019aad",
      "tree": "4a31ec456b27e4528b75d98f74274771daa275f7",
      "parents": [
        "2c07da7945979f6d3ea73ebb0b452e5ab51514da"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 27 10:26:49 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 13 10:49:51 2018 -0800"
      },
      "message": "AudioEffect: make effect descriptor parcelable\n\nMake AudioEffect.Descriptor class parcelable so that a list of\nactive effects can be included into AudioRecordingConfiguration.\n\nNote: AudioEffect.Descriptor class was made final but it is OK as it\nwas never consumed by any SDK API.\n\nBug: 111438757\nTest: make\nChange-Id: I238b4ea47c613fd2abacc8729d9baf31423283a4\n"
    },
    {
      "commit": "a32f89872000a9ee469b22eaf039fd93463365f2",
      "tree": "0cc0f6d0bdb05cd9b4e6f536c03ce2c1c3b8c4c8",
      "parents": [
        "e726c2654d173b20c7400a6cfcbc18357702989a",
        "15b123ef458ed927782b080921e987c995fc56dd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 13 05:45:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 13 05:45:20 2018 +0000"
      },
      "message": "Merge \"DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\""
    },
    {
      "commit": "d92fd48b69ed4414e05ce7431ceaba6aa2a93eae",
      "tree": "dceffe7e7dc7498da76b09344e9026d3232f6443",
      "parents": [
        "6d2b0fd4627182bc196bc89af15aaeb2f8ceb178",
        "7c31847e08660bb4eb07e030c33026b0a16f40d1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 13 01:25:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 13 01:25:18 2018 +0000"
      },
      "message": "Merge \"AudioSystem JNI: refactor audio effect descriptor conversion\""
    },
    {
      "commit": "7b1e7a3895095c66b639af7482daba9813c9ccd6",
      "tree": "4d6838edf519baf021f3a92e3a25d965f380092e",
      "parents": [
        "b3c1557892cc65c31a71eeb42f717dd2cd72b0f0",
        "3acc216ca86724bb700434eab7bbefbf36d5a6e7"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 12 14:17:09 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 12 14:17:09 2018 -0800"
      },
      "message": "Merge \"Visualizer: fix native crash when visualizer release\" am: bfb6086f67 am: 5959f23ac3\nam: 3acc216ca8\n\nChange-Id: Ia4660a1d16dd6157977774c3edcd71eb2709d5fa\n"
    }
  ],
  "next": "3acc216ca86724bb700434eab7bbefbf36d5a6e7"
}
