)]}'
{
  "log": [
    {
      "commit": "15033bd29308cf8d6a177ed871b5b35eda65e8c0",
      "tree": "5e42d91bc46cad94cedbd8d621c84f2f2559b72f",
      "parents": [
        "fcf9a4c7e2d646154927a53d7a25bef5c4c380d7"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 04 11:48:52 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Apr 04 11:54:23 2018 -0700"
      },
      "message": "Fix thumbnail track skipping\n\nThumbnail tracks are identified by \u0027tref\u0027 box with a \u0027thmb\u0027\ntype reference in it. We can\u0027t skip a track as soon as a \u0027tref\u0027\nbox appears, need to actually parse it and look for \u0027thmb\u0027.\n\nbug: 77556099\n\nTest: playback of audio files in bug, playback of image sequence\n      file (bird_burst.heic) with thumbnail reference.\n\nChange-Id: I7d6ec8af218de2f0cba258f8eaaac9b62f9cb020\n"
    },
    {
      "commit": "fcf9a4c7e2d646154927a53d7a25bef5c4c380d7",
      "tree": "b56d15707685ce0732a54d637f968ac86a976b93",
      "parents": [
        "f2c4711aaed2a845e94a50c707c1ba7cec443443",
        "2af67733ac8616ccc763afaa6f6cfebeffc090a3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 31 10:20:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 31 10:20:26 2018 +0000"
      },
      "message": "Merge \"audio policy: disable silencing of background UID record\" into pi-dev"
    },
    {
      "commit": "f2c4711aaed2a845e94a50c707c1ba7cec443443",
      "tree": "7b805d5fc23de244cb5c1c45246724390d60ce36",
      "parents": [
        "f2797b2275e808a73641190899994de639f123f2",
        "b13b35d7e2732227c1593257d4ef1353bf672a1f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 31 04:53:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 31 04:53:21 2018 +0000"
      },
      "message": "Merge \"Add retries in restoreTrack_l if the track does not start\" into pi-dev"
    },
    {
      "commit": "2af67733ac8616ccc763afaa6f6cfebeffc090a3",
      "tree": "50d7ecf1ef9fe42d3c09094ed143e574f50eac9d",
      "parents": [
        "2ad6e528d603fe45d170ecb56ed522fe467244fd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 30 18:17:20 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 30 18:25:22 2018 -0700"
      },
      "message": "audio policy: disable silencing of background UID record\n\nThere is a problem when audioserver process restarts where we fail to\nreload the list of active UIDs causing silent capture for all apps\nuntil they are restarted.\n\nBug: 77300296\nBug: 63938985\nTest: crash audioserver and check that capture still works.\nChange-Id: Ie1a93c496516c1b7208780949054832a8a073044\n"
    },
    {
      "commit": "b13b35d7e2732227c1593257d4ef1353bf672a1f",
      "tree": "81298c334193e551bbfa240ad585678ece8b7eeb",
      "parents": [
        "5915fa32fb6ec38b90a57162bf72c3ef714f03d7"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Fri Mar 30 17:21:14 2018 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Fri Mar 30 17:57:10 2018 -0700"
      },
      "message": "Add retries in restoreTrack_l if the track does not start\n\nConnecting to a BT A2DP device supporting multiple codecs causes\na lot of churn on the audio service side, and it can reject\nstarting playback of a previously created track. As a\nworkaround, allow restoreTrack_l to retry in this case.\n\nBug: 74409267\nTest: switching between 2 HD BT headsets while playing audio\nChange-Id: I5d2ecf4da9ff680af7ae5bb837081b22ecd84f85\n"
    },
    {
      "commit": "f2797b2275e808a73641190899994de639f123f2",
      "tree": "bafecc46e9f781cd131a959479f05153fe715b28",
      "parents": [
        "1f03085b596f185d91ccae11b7c0d9f0bc8cd206",
        "069c2719e753732d5af9ba51e5fcc34342b0c9f2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 30 22:54:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 30 22:54:36 2018 +0000"
      },
      "message": "Merge changes from topic \"metadata-audio-hal\" into pi-dev\n\n* changes:\n  Audio V4: Propagate track attributes to HAL\n  Audio V4: Propagate audio attributes to tracks\n  Audio V4: propagate metadata to the HAL\n"
    },
    {
      "commit": "1f03085b596f185d91ccae11b7c0d9f0bc8cd206",
      "tree": "0ea6c5749a7852aea7a5404d85ad45e15111feac",
      "parents": [
        "82e14cda5c0422761821a1d4a4ace26e12d247ba",
        "7017fef261255c679878efdadc13fffefb156c4a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 30 21:28:20 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 30 21:28:20 2018 +0000"
      },
      "message": "Merge \"sf_foundation: include media_plugin_headers\" into pi-dev"
    },
    {
      "commit": "069c2719e753732d5af9ba51e5fcc34342b0c9f2",
      "tree": "e3cfa2f8e2ceecd6e20d91b484865a33c195d7ec",
      "parents": [
        "1f564acca544826daaf7dca44e39cec6016b82fd"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Mar 29 19:09:14 2018 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Mar 30 14:09:23 2018 -0700"
      },
      "message": "Audio V4: Propagate track attributes to HAL\n\nThis patch does not propagate the volume.\n\nBug: 38184704\nBug: 69623109\nTest: log metadata in HAL\nChange-Id: I313563cafd9f2b29a13839c3c075beb65a170632\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "1f564acca544826daaf7dca44e39cec6016b82fd",
      "tree": "4adc2f15866c6c7bb47f7eb351aa251a94b1aaa2",
      "parents": [
        "a8975a7e857fd745fc88d226d86b53ae088eafb9"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Mar 29 13:53:10 2018 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Mar 30 13:15:05 2018 -0700"
      },
      "message": "Audio V4: Propagate audio attributes to tracks\n\nThis patch has not functional changes.\n\nBug: 38184704\nBug: 69623109\nTest: play music and a audio\nChange-Id: Ide6ec7de4dbfab4af2653475901c3b3daee36e52\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "7017fef261255c679878efdadc13fffefb156c4a",
      "tree": "c324066707291dba1efed37f10b884ccd583b1af",
      "parents": [
        "83028d5920884992b16f34aca167cd6c27734d3c"
      ],
      "author": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Fri Mar 30 12:35:14 2018 -0700"
      },
      "committer": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Fri Mar 30 12:35:14 2018 -0700"
      },
      "message": "sf_foundation: include media_plugin_headers\n\nBug: 77328578\nTest: builds\nChange-Id: I3376a32f09761e600d21cec276129a06f8dfc82a\n"
    },
    {
      "commit": "a8975a7e857fd745fc88d226d86b53ae088eafb9",
      "tree": "ff82a6124568e640ef8c142939caaa6482e28158",
      "parents": [
        "83028d5920884992b16f34aca167cd6c27734d3c"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Tue Mar 27 10:16:52 2018 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Mar 30 10:21:14 2018 -0700"
      },
      "message": "Audio V4: propagate metadata to the HAL\n\nThis is needed for the earring aid use case.\n\nBug: 38184704\nBug: 69623109\nTest: check that the correct metadata are propagate to the HALs.\nChange-Id: I285aac9fbb5431cc32c6fbccebdbff4914e6ab92\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "82e14cda5c0422761821a1d4a4ace26e12d247ba",
      "tree": "e8009e74c4fe37625e9551fc1a10d238a88264b5",
      "parents": [
        "83028d5920884992b16f34aca167cd6c27734d3c"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Mar 30 10:09:42 2018 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Mar 30 17:11:41 2018 +0000"
      },
      "message": "Invalid audio effect config could crash the parser\n\nDue to a typo in an error message.\n\nBug: 74446193\nTest: boot\nChange-Id: Ief4150ff335e53c7b08bbc9ec9fd20ee61d4e13a\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "83028d5920884992b16f34aca167cd6c27734d3c",
      "tree": "84fcfdd9dbb1186a825a77270a69819c087ade7a",
      "parents": [
        "103f5a6268e820daa6a47c560e10a25514dd2ce1",
        "9ff780e58ff96ff98acaae4166bb218880bf9e73"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 30 16:59:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 30 16:59:41 2018 +0000"
      },
      "message": "Merge \"Support query microphones information.\" into pi-dev"
    },
    {
      "commit": "103f5a6268e820daa6a47c560e10a25514dd2ce1",
      "tree": "043ecbaecd2004261ac7d9c491167084a5b312dc",
      "parents": [
        "c7e85481ec848d4ae91a96fc6ddcec76a5d8de20"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 22 09:20:05 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 29 16:46:43 2018 -0700"
      },
      "message": "Fix flac encoder and decoder EOS handling\n\nWhen the flac encoder saw EOS on its input, it would output an empty\nbuffer with EOS set, without decoding the current buffer or flushing\npending output buffers. The flac encoder also didn\u0027t output CSD, making\nits output unsuitable for feeding back into the flac decoder.\nWhen the flac decoder saw EOS, it would tag the next output buffer\nwith EOS, but didn\u0027t flush pending output buffers.\n\nBug: 75963284\nTest: CTS\nChange-Id: I53ac2f26fe77e50c899587fc62fc66cf0b85d167\n"
    },
    {
      "commit": "c7e85481ec848d4ae91a96fc6ddcec76a5d8de20",
      "tree": "f367f418c202a936e789e443cb25382b65b41a50",
      "parents": [
        "5915fa32fb6ec38b90a57162bf72c3ef714f03d7",
        "01c5c9f4c7a71bf3ead90b5d7e8e679d930b4f02"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 29 21:53:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 21:53:46 2018 +0000"
      },
      "message": "Merge \"metrics on latency through codecs\" into pi-dev"
    },
    {
      "commit": "01c5c9f4c7a71bf3ead90b5d7e8e679d930b4f02",
      "tree": "6e8b6f270d6292016a4d442a0d1411cee6f80e2b",
      "parents": [
        "0c2e7237654f1e92a97583ecc7838d3a92997624"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 22 14:55:52 2018 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 29 17:56:37 2018 +0000"
      },
      "message": "metrics on latency through codecs\n\ntrack the latency for frames to go through the codec and return to the\ncaller. Provide min/max/avg/N information for the total and for the\nlast couple hundred frames. Histogram data is collected, but not yet\nemitted.\n\nBug: 64022743\nTest: dumpsys media.metrics\nChange-Id: I954f0048997c8f65931c4faa678666eec59aaf86\n(cherry picked from commit 44ecf0521fd4ed27089d88bad050f0430139d3ff)\n"
    },
    {
      "commit": "5915fa32fb6ec38b90a57162bf72c3ef714f03d7",
      "tree": "eca91a7b08cc3305954a17a6751bb5708819c9de",
      "parents": [
        "0c2e7237654f1e92a97583ecc7838d3a92997624"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Mar 29 10:32:44 2018 -0700"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Mar 29 17:37:46 2018 +0000"
      },
      "message": "libaudiohal: Fix dereference before NULL check\n\ndeviceAddressFromHal was checking the wrong pointer before dereferencing.\n\nTest: compile\nBug: 77263416\nChange-Id: Ic47af7085dd88f451ae81034b84444719f68cfc5\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "0c2e7237654f1e92a97583ecc7838d3a92997624",
      "tree": "a046f8e4a2944ffb1d6dcc462eb1b119f60f2fe4",
      "parents": [
        "498e03debdb0431a80c3a2aa9fe629651d66c9e6",
        "81e36fc64bb03ff03b96d215c6bf83b44dcccef3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 29 04:50:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 04:50:59 2018 +0000"
      },
      "message": "Merge \"MediaSession2: Change isTrusted() usages to isTrustedForMediaControl\" into pi-dev"
    },
    {
      "commit": "498e03debdb0431a80c3a2aa9fe629651d66c9e6",
      "tree": "7499759ba34d3287860c661b04a585bc0f59f17c",
      "parents": [
        "6dc6d938c33db5ef1f5d17779040bf3c7dd25d3f",
        "179713cce15b5a18a11294e1ac45031afe2f2eac"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 29 04:07:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 04:07:36 2018 +0000"
      },
      "message": "Merge \"VideoView2: Handles viewType attribute\" into pi-dev"
    },
    {
      "commit": "81e36fc64bb03ff03b96d215c6bf83b44dcccef3",
      "tree": "bbced254b72511bcfb4657dc13f3fe29dde54ee3",
      "parents": [
        "2ad6e528d603fe45d170ecb56ed522fe467244fd"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Mar 29 08:33:47 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Mar 29 08:33:47 2018 +0900"
      },
      "message": "MediaSession2: Change isTrusted() usages to isTrustedForMediaControl\n\nBug: 75500592\nTest: Builds successfully\nChange-Id: Ifbc2423e5170e54dc96607e250474132b0c3dcad\n"
    },
    {
      "commit": "6dc6d938c33db5ef1f5d17779040bf3c7dd25d3f",
      "tree": "21ff2946068dd2ba07473f2eaa3b9d24b4196ec4",
      "parents": [
        "782f0017806922791b539656b7752a37c0fca5fc",
        "69f64fef23a33837f2605019f749c28f7dfc02f9"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Wed Mar 28 22:37:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 22:37:19 2018 +0000"
      },
      "message": "Merge \"frameworks/av: Documentation fixes for AImage and AImageReader.\" into pi-dev"
    },
    {
      "commit": "782f0017806922791b539656b7752a37c0fca5fc",
      "tree": "c9e414bafbae19bdf0f15fca6e160b793ad8873a",
      "parents": [
        "47f61f07ca6042829740d8df56474d23fd8c18cf",
        "597e03b41dde032d0747df2134f27fc7fdd6a12a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 28 21:01:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 21:01:31 2018 +0000"
      },
      "message": "Merge \"Camera: Add MONOCHROME capability\" into pi-dev"
    },
    {
      "commit": "69f64fef23a33837f2605019f749c28f7dfc02f9",
      "tree": "99c26a1d65f5774847c9aa61529d701b18927ba8",
      "parents": [
        "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Mar 27 20:49:43 2018 -0700"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Wed Mar 28 13:29:43 2018 -0700"
      },
      "message": "frameworks/av: Documentation fixes for AImage and AImageReader.\n\nBug: 64805809\nTest: Not necessary, documentation-only change.\nChange-Id: I87c9a8cc276b1d01852f2371d8eaf766eb0a834d\n"
    },
    {
      "commit": "47f61f07ca6042829740d8df56474d23fd8c18cf",
      "tree": "8a0dee1744a281bfde99894f2dc01b2660871bbb",
      "parents": [
        "2ad6e528d603fe45d170ecb56ed522fe467244fd",
        "bc1d4b41f4df1b6dd04801ea5a526d23f5321340"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Mar 28 18:16:48 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 18:16:48 2018 +0000"
      },
      "message": "Merge \"Fix Unicode string handling\" into pi-dev"
    },
    {
      "commit": "9ff780e58ff96ff98acaae4166bb218880bf9e73",
      "tree": "b54bf56b7f6ebc5950064d2908004abfe35d7162",
      "parents": [
        "2ca700737c14edc9141af170ee278853fd99fa87"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Mon Mar 19 18:19:52 2018 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Mar 28 10:17:36 2018 -0700"
      },
      "message": "Support query microphones information.\n\nGet list of all/currently active microphones from hal.\n\nBug: 64038649\nTest: Manual Testing and Cts test\nChange-Id: Id39cae38ba040f9bc91571e713487f87c2eb67b0\n"
    },
    {
      "commit": "2ad6e528d603fe45d170ecb56ed522fe467244fd",
      "tree": "fd429373bc125a9ad601158c3f4727ce6875fe8f",
      "parents": [
        "04ba822e09c6daf7f4a5e8a8af6a7e453d5b2916",
        "561a8f47d27dd6e8fe11531a6cc8e3d5e3a1be4c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 28 09:35:10 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 09:35:10 2018 +0000"
      },
      "message": "Merge \"MediaControlView2: Add support for Minimal Mode\" into pi-dev"
    },
    {
      "commit": "04ba822e09c6daf7f4a5e8a8af6a7e453d5b2916",
      "tree": "8e759ea35d6b1298677e81a1f861f4b6829b3875",
      "parents": [
        "7b4ab78876db058155bc075385c4db9e33e42a25",
        "d7049e10ee51dc3d02fe7fb06d3ceecc1850ec4e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 28 06:44:38 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 06:44:38 2018 +0000"
      },
      "message": "Merge \"MediaControlView2: Add Music UX\" into pi-dev"
    },
    {
      "commit": "7b4ab78876db058155bc075385c4db9e33e42a25",
      "tree": "09b83fca623f607047b780e6a87e581427c616da",
      "parents": [
        "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sun Mar 25 12:48:10 2018 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Mar 28 04:15:32 2018 +0000"
      },
      "message": "Improve camera availability for active UIDs\n\nTest: cts-tradefed run cts-dev -m CtsCameraTestCases\n\nBug: 72863398\n\nChange-Id: I9abfe39ca6bedbb08aea6f1b6678f8d752b2d298\n"
    },
    {
      "commit": "bc1d4b41f4df1b6dd04801ea5a526d23f5321340",
      "tree": "9c40c27d4c306658b10f622f5a32f111e2623c68",
      "parents": [
        "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Mar 27 15:25:03 2018 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Mar 27 17:32:27 2018 -0700"
      },
      "message": "Fix Unicode string handling\n\nLinux uses UTF8 but java and MTP both\nuse UTF16. In a few places, this results\nin the top byte of a UTF16 string being\ntruncated on conversion to UTF8.\n\nAlso, the hardcoded UTF to byte serialization\nin MtpStringBuffer is incorrect.\nReplace it with conversions from std, and\nreplace usages of MtpString with MtpStringBuffer.\n\nRemove any remaining usages of libutils\nand replace them with corresponding std\nlibraries.\n\nBug: 70546563\nTest: Mtp works, tests pass\nTest: file/folder names containing emoji can be transferred to/from\nwindows\nChange-Id: Idbcb73f1beac17ce8a90843fa254e759dd1a6369\n"
    },
    {
      "commit": "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a",
      "tree": "83f7a8c7e5a91e967b6a42abe6e6e7cee5c14178",
      "parents": [
        "b1eb717472814adea3daa6b276af68d71a6b892f",
        "2d96092030f7bcd3c5c0de53dc8a97bbe3c2e0c4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 27 19:26:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 19:26:44 2018 +0000"
      },
      "message": "Merge \"Camera2: Add distortion correction support\" into pi-dev"
    },
    {
      "commit": "b1eb717472814adea3daa6b276af68d71a6b892f",
      "tree": "3ebba2c3d8c3f79bbb1ddf46f2a117fd00391dae",
      "parents": [
        "4a7b86426b7139dae80d1362eddb842e675bc069",
        "96c7eed596077ff84e75b7b1c6f20c3a29219bd1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 27 16:34:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 16:34:36 2018 +0000"
      },
      "message": "Merge \"audioserver: fix UID checks for multi user\" into pi-dev"
    },
    {
      "commit": "96c7eed596077ff84e75b7b1c6f20c3a29219bd1",
      "tree": "cf06852ef755e4d7dccfa81a7d3d4909d6159c60",
      "parents": [
        "bebc764c6b3e90024a56c9af4517a1a68713f3e7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 26 17:57:01 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 27 14:49:16 2018 +0000"
      },
      "message": "audioserver: fix UID checks for multi user\n\nFix UID checks in audioserver to take into account multi user UIDs\nwhere the top part above AID_USER_OFFSET contains the user number.\n\nBug: 76439650\nTest: manual audio smoke tests.\nChange-Id: I6dbd616021bcb2639c7b7369000ce911c7e7e030\n"
    },
    {
      "commit": "4a7b86426b7139dae80d1362eddb842e675bc069",
      "tree": "298052254e36dd280ce395643dcc8c4d6a4d5c5c",
      "parents": [
        "d5b878d0cf0c987caf18be697a0e1637fb632d66"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 27 09:39:56 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 27 17:15:12 2018 +0900"
      },
      "message": "MediaPlayerBase: Add PlayerEventCallback#onSeekCompleted()\n\nPlayerEventCallback#onSeekCompleted() will be called when the\nMediaPlayerBase#seekTo() is completed. Following callbacks are also\nadded to listen the event.\n  - SessionCallback#onSeekCompleted()\n  - ControllerCallback#onSeekCompleted()\n\nBug: 74370608\nTest: Build\nChange-Id: Ib99a3cdfabe34378d0ea6b86a2ae1c9dd99c13c8\n"
    },
    {
      "commit": "d5b878d0cf0c987caf18be697a0e1637fb632d66",
      "tree": "4854dd6caf04e39912f82b5d17bfc54a24711a8f",
      "parents": [
        "076d7da0936e85fc5243761ffd393d5c2beeee20"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 27 09:13:57 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 27 17:14:50 2018 +0900"
      },
      "message": "MediaSession2: Pull out Command/CommandGroup from the MediaSession2\n\nBug: 74648408\nTest: Build\nChange-Id: Ie688f4ccc2e26ed99e9f6d931d0fdcf87574cb54\n"
    },
    {
      "commit": "076d7da0936e85fc5243761ffd393d5c2beeee20",
      "tree": "aac44b7e1a5464ffdf84e98dec4288400c75e638",
      "parents": [
        "f5e5100455d16c991b12dcc89233857a507aa141"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 18:03:19 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 27 16:48:25 2018 +0900"
      },
      "message": "MediaController2: Add fastForward() / rewind()\n\nFollowing CLs are included\n  - Add MediaController2#fastForward() / rewind()\n  - Add MediaSession2.SessionCallback#onFastForward() / rewind()\n\nBug: 74724709\nTest: Build\nChange-Id: Ic987132d69bd3d3ec707ede82c006fd001fb8de3\n"
    },
    {
      "commit": "561a8f47d27dd6e8fe11531a6cc8e3d5e3a1be4c",
      "tree": "677822d6fe7991d8238fcc1154e86f70f38cfd73",
      "parents": [
        "d7049e10ee51dc3d02fe7fb06d3ceecc1850ec4e"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Thu Mar 22 17:21:42 2018 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Tue Mar 27 16:27:46 2018 +0900"
      },
      "message": "MediaControlView2: Add support for Minimal Mode\n\nThis CL adds UX for Minimal mode.\n  - Minimal mode is triggered when the minimum width required for\n    Embedded mode is smaller than the current View width.\n  - Create an MinimalExtraView to place FullScreen button for\n    Minimal mode.\n\nThis CL also adds gradient background color for TitleBar and\nimplements onCallCompleted() callback to update MediaControlView2\nafter successfully seeking.\n\nBug: 74506210\nTest: VideoViewTest.apk\nChange-Id: I6cd35af473d0f796cd35ae8759171cc1722fc679\n"
    },
    {
      "commit": "d7049e10ee51dc3d02fe7fb06d3ceecc1850ec4e",
      "tree": "7d8e85dc0df20b1ad8a8cf6b13bff4a829f38628",
      "parents": [
        "a5e13d9fceb8bf5cebb70686a2376eafe1e81266"
      ],
      "author": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Thu Mar 15 17:50:33 2018 +0900"
      },
      "committer": {
        "name": "Jin Seok Park",
        "email": "jinpark@google.com",
        "time": "Tue Mar 27 16:24:45 2018 +0900"
      },
      "message": "MediaControlView2: Add Music UX\n\n1. Create Music View inside VideoView2\n   - Dynamically change layouts based on size and orientation\n   - Disable touch when Full size mode\n2. Create Music Mode button settings inside MediaControlView2\n\nBug: 73873457\nTest: Manually run VideoViewTest.apk\nChange-Id: Iba47ab40b7eb24147c09efbe997bd8e765719d69\n"
    },
    {
      "commit": "f5e5100455d16c991b12dcc89233857a507aa141",
      "tree": "1ed58d397986a1c4b360e877e2d5882fe232738a",
      "parents": [
        "ed4577868299382aa6584f18ec808b671b2cf0e3",
        "0de7babb75683eba98af2db52101d262372235da"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 27 07:17:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 07:17:24 2018 +0000"
      },
      "message": "Merge \"Remove unneeded context\" into pi-dev"
    },
    {
      "commit": "ed4577868299382aa6584f18ec808b671b2cf0e3",
      "tree": "a5ae476e13828c9296d0940bb6b668e01f8bf46f",
      "parents": [
        "53676d029d563534daf335f9c0409c4273d0900c",
        "09e621a7b1b417b47618e7d8bd71ebade73b9089"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 27 05:27:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 05:27:30 2018 +0000"
      },
      "message": "Merge \"audiopolicy: increase binder command timeout for some commmands\" into pi-dev"
    },
    {
      "commit": "0de7babb75683eba98af2db52101d262372235da",
      "tree": "db3a669c169612e4ebffd3fc179295540528dda7",
      "parents": [
        "a5e13d9fceb8bf5cebb70686a2376eafe1e81266"
      ],
      "author": {
        "name": "Christofer Åkersten",
        "email": "akersten@google.com",
        "time": "Thu Mar 22 19:43:30 2018 +0900"
      },
      "committer": {
        "name": "Christofer Åkersten",
        "email": "akersten@google.com",
        "time": "Tue Mar 27 13:22:32 2018 +0900"
      },
      "message": "Remove unneeded context\n\nBug: 76001644\nTest: compile\nChange-Id: Ia3647a78ae7b06aa8fa638f9694450f3cb81e07b\n"
    },
    {
      "commit": "53676d029d563534daf335f9c0409c4273d0900c",
      "tree": "7eccf5ea95c905890b9c3978924af3e91b21a0af",
      "parents": [
        "a5e13d9fceb8bf5cebb70686a2376eafe1e81266",
        "63dac45aa868b9048c028967e9865c90a9ba544d"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Mar 27 02:49:02 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 02:49:02 2018 +0000"
      },
      "message": "Merge \"Remove configure() from Mtp\" into pi-dev"
    },
    {
      "commit": "09e621a7b1b417b47618e7d8bd71ebade73b9089",
      "tree": "c3d1618fb24a3aba2d74d9567b4ebe24183d624f",
      "parents": [
        "bebc764c6b3e90024a56c9af4517a1a68713f3e7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 26 16:50:47 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 26 16:54:34 2018 -0700"
      },
      "message": "audiopolicy: increase binder command timeout for some commmands\n\nExtend timeout for SET_DEVICE_CONNECTION_STATE and HANDLE_DEVICE_CONFIG_CHANGE\nbinder commmands in IAudioPolicyService.cpp while we investigate why BT A2DP\ndevice connection/disconnection can sometimes take more than 5 seconds.\n\nBug: 74840091\nTest: check that no timout occurs for A2DP headset connections\nChange-Id: I7dcba80059898ac1c73d580594d4956b4608ade0\n"
    },
    {
      "commit": "597e03b41dde032d0747df2134f27fc7fdd6a12a",
      "tree": "c7fcce13f54ef312ece3d3e656dc66d4b3b410ec",
      "parents": [
        "a5e13d9fceb8bf5cebb70686a2376eafe1e81266"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Mar 23 13:56:42 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Mar 26 16:13:21 2018 -0700"
      },
      "message": "Camera: Add MONOCHROME capability\n\nTest: Camera CTS\nBug: 74597035\nBug: 64691172\nChange-Id: I4034be668660f913f5e527cb20e2904694818de2\n"
    },
    {
      "commit": "a5e13d9fceb8bf5cebb70686a2376eafe1e81266",
      "tree": "d97af4278dbc8afd70aeab6aa522630e85d4971f",
      "parents": [
        "3abf7858bf1f45c60a9913e6e03d2e2b005960ac",
        "11fed3f9b192f15f06f997c09f4e48aa43b48f47"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 26 18:05:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 18:05:45 2018 +0000"
      },
      "message": "Merge \"Move codec2 out of frameworks/av\" into pi-dev"
    },
    {
      "commit": "3abf7858bf1f45c60a9913e6e03d2e2b005960ac",
      "tree": "24ddb7780e702020027901bd27a2195fd5d046c0",
      "parents": [
        "bebc764c6b3e90024a56c9af4517a1a68713f3e7",
        "32494f5438db362e96b69e5fda7b2fd34633b562"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Mar 26 17:26:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 17:26:59 2018 +0000"
      },
      "message": "Merge \"Fixes serialization of vendor metrics\" into pi-dev"
    },
    {
      "commit": "bebc764c6b3e90024a56c9af4517a1a68713f3e7",
      "tree": "725d73a0e82d0c7c991c6b0b863e58b3893e663a",
      "parents": [
        "b466a4c7dac3d7ed866274e38ce3a42f649ea9b6",
        "c13a4e4c0dad7438ac53db24a1c8e2705ba05484"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 10:55:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 10:55:30 2018 +0000"
      },
      "message": "Merge \"MediaSession2: Change return type of CommandGroup#getCommands()\" into pi-dev"
    },
    {
      "commit": "b466a4c7dac3d7ed866274e38ce3a42f649ea9b6",
      "tree": "e3610b7570a4ab53a7fa2773f32f3373ea3daa1b",
      "parents": [
        "b23f7190b84d22ae1e88014ff086112a61d4579f",
        "edcbd37d4aa81d66aed7fcbf86486a59df2b4944"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 10:53:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 10:53:24 2018 +0000"
      },
      "message": "Merge \"MediaMetadata2: Remove radio constants\" into pi-dev"
    },
    {
      "commit": "b23f7190b84d22ae1e88014ff086112a61d4579f",
      "tree": "f53becb217e31005f48c9d35415cc93731729e17",
      "parents": [
        "abfaf7ae5aaf2bbce65dd094b54a662f34b32e5b",
        "54936be442ba7153667cb582fb9d2035f9f1f63c"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 10:52:22 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 10:52:22 2018 +0000"
      },
      "message": "Merge \"MediaSession2: Revisit command code\" into pi-dev"
    },
    {
      "commit": "abfaf7ae5aaf2bbce65dd094b54a662f34b32e5b",
      "tree": "c8d4fa9adfce23c260675439f547011bd62377e4",
      "parents": [
        "73d344a69447e475a85901129740af63feadeb1c",
        "483a9330a7fb62bd288cacf3e606e9d826d0a67d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 26 10:36:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 10:36:26 2018 +0000"
      },
      "message": "Merge \"MCV2: Add contentDescriptions to buttons\" into pi-dev"
    },
    {
      "commit": "73d344a69447e475a85901129740af63feadeb1c",
      "tree": "d83218cdebc447fc2d92b5a713d55d804b085cda",
      "parents": [
        "a1c392eb2dbd6ad1c31da7f4f2a99bd77e62f06b",
        "d8c3b38bc2403e00f2170aeec32b170287a2818a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 26 09:19:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 09:19:30 2018 +0000"
      },
      "message": "Merge \"SessionPlaylistAgent: Handle setDataSource\" into pi-dev"
    },
    {
      "commit": "c13a4e4c0dad7438ac53db24a1c8e2705ba05484",
      "tree": "d210954b643e40535027f5bffde8c78646093d94",
      "parents": [
        "a1c392eb2dbd6ad1c31da7f4f2a99bd77e62f06b"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 20 16:12:41 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 17:18:01 2018 +0900"
      },
      "message": "MediaSession2: Change return type of CommandGroup#getCommands()\n\nBug: 74648408\nTest: Build\nChange-Id: Ie6a54d95ce5142d477665a8e9f132fc871ec7179\n"
    },
    {
      "commit": "179713cce15b5a18a11294e1ac45031afe2f2eac",
      "tree": "a5e9571a523caf816fa2fc2fd2d09b451ae08998",
      "parents": [
        "a1c392eb2dbd6ad1c31da7f4f2a99bd77e62f06b"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Thu Mar 15 14:47:32 2018 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Mon Mar 26 15:47:02 2018 +0900"
      },
      "message": "VideoView2: Handles viewType attribute\n\nBug: 70539851\nTest: run \u0027atest VideoView2Test\u0027\nChange-Id: Ic5b797027c838829e49e5ad4fba1b6e26909c1bc\n"
    },
    {
      "commit": "54936be442ba7153667cb582fb9d2035f9f1f63c",
      "tree": "2477f9ab932298cff0365cb0574c739b1a755ff0",
      "parents": [
        "a1c392eb2dbd6ad1c31da7f4f2a99bd77e62f06b"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 20 17:05:54 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 15:28:26 2018 +0900"
      },
      "message": "MediaSession2: Revisit command code\n\nBug: 74648408\nTest: Build\nChange-Id: If647ce1e23f831d2950508b5649bcd94b027e9f8\n"
    },
    {
      "commit": "edcbd37d4aa81d66aed7fcbf86486a59df2b4944",
      "tree": "545b213f3c02e1a866d1dbe7af1c03b4ead0ecd6",
      "parents": [
        "aec686dc2994ae6e70211cdde96b08a20a609df7"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 14:16:16 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 14:16:16 2018 +0900"
      },
      "message": "MediaMetadata2: Remove radio constants\n\nRemoveing radio constants until their names are finalized.\n\nBug: 75500592\nTest: Build\nChange-Id: I10ffed456faa220ae24290ca9dcee6a67e751892\n"
    },
    {
      "commit": "a1c392eb2dbd6ad1c31da7f4f2a99bd77e62f06b",
      "tree": "2d0efe2ccf34ea33d0280b7a348e232696d37f5b",
      "parents": [
        "aec686dc2994ae6e70211cdde96b08a20a609df7",
        "fcfde5fa27d3a415bed47fd2e83398dfce88fbe3"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 05:12:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 05:12:18 2018 +0000"
      },
      "message": "Merge \"MediaSession2: Match APIs with MediaPlayerBase\" into pi-dev"
    },
    {
      "commit": "d8c3b38bc2403e00f2170aeec32b170287a2818a",
      "tree": "03e55e833a47279d072e4ee0231ca064d49fc36c",
      "parents": [
        "fab385292538d1125b7e99a5837a135f1650461a"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Tue Mar 20 17:00:15 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Mar 26 13:50:03 2018 +0900"
      },
      "message": "SessionPlaylistAgent: Handle setDataSource\n\nBug: 74090741\nTest: SessionPlaylistAgentTest\nChange-Id: If2d97a1836c9ec1064294180489988eb2fe4e2f0\n"
    },
    {
      "commit": "aec686dc2994ae6e70211cdde96b08a20a609df7",
      "tree": "908955c4cd383612d6e0cd1f6ae36f7d4f874b54",
      "parents": [
        "af5a727e3b276c3a00bba61f0974ff253a3902ba",
        "1fe063606ecf3ef1fd71496bc2bcdd0d8ce8342d"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 02:07:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 02:07:57 2018 +0000"
      },
      "message": "Merge \"MediaController2: Match APIs with MediaPlayerBase\" into pi-dev"
    },
    {
      "commit": "af5a727e3b276c3a00bba61f0974ff253a3902ba",
      "tree": "6d2bd45b39429a8fce1a9856896c627f0175a56a",
      "parents": [
        "fab385292538d1125b7e99a5837a135f1650461a",
        "cf1e1332e0b6880b4776d0bab31506092163423f"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Mon Mar 26 01:24:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 01:24:21 2018 +0000"
      },
      "message": "Merge \"MediaController2: Remove MediaPlaylistAgent in the ControllerCallback\" into pi-dev"
    },
    {
      "commit": "fab385292538d1125b7e99a5837a135f1650461a",
      "tree": "469d5ac480326fe2e879625888d8e49a45c03124",
      "parents": [
        "3296237d65bf169b2cd113eeedd985885306f796",
        "19e990e480245af25ec03ff3a3f53b820b0732cd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 23:34:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 23:34:36 2018 +0000"
      },
      "message": "Merge \"aaudio: improve logging to help debugging\" into pi-dev"
    },
    {
      "commit": "3296237d65bf169b2cd113eeedd985885306f796",
      "tree": "6bc615c7bb10241052e8654277ca04e3998fbd2c",
      "parents": [
        "0446336ff3d2dba09e3ca0a84f45dc0df4fbbef5",
        "334adf0ea8a9a5f6e26168864d4fd73a5c9417eb"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 23:07:12 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 23:07:12 2018 +0000"
      },
      "message": "Merge \"mediaplayer2: remove redundant line\" into pi-dev"
    },
    {
      "commit": "0446336ff3d2dba09e3ca0a84f45dc0df4fbbef5",
      "tree": "1fd598ed452295255a0314aba164fb3282baa77a",
      "parents": [
        "ce6c8479c587bf61dfbd7b050752fec54135ba1f",
        "ef49805296eb81cd4ba039fa4d25b9358436992b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 23:03:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 23:03:17 2018 +0000"
      },
      "message": "Merge \"Handle failure of creating MediaPlayer properly\" into pi-dev"
    },
    {
      "commit": "19e990e480245af25ec03ff3a3f53b820b0732cd",
      "tree": "8eb6afdfc9a634c835c6cc0d8b28bd69ffbdd2f2",
      "parents": [
        "ce6c8479c587bf61dfbd7b050752fec54135ba1f"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Mar 22 13:59:34 2018 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Mar 23 21:50:37 2018 +0000"
      },
      "message": "aaudio: improve logging to help debugging\n\nUse __func__ more often.\nShow thread entry and exit.\nLog illegal state transitions.\nRemove some unnecessary logs.\n\nBug: 64310586\nTest: use AAudio then look at the logs\nChange-Id: I2e289698efc897640588ba534b5513ac39b15043\n"
    },
    {
      "commit": "ce6c8479c587bf61dfbd7b050752fec54135ba1f",
      "tree": "f12d1f286917302773d13fa4ddd01879980999d3",
      "parents": [
        "97e4f64dc67f39b35ae5a5dccedbce567d6437b2",
        "be645507a3ded6a481375419c8185e17c66dcb37"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 21:14:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 21:14:29 2018 +0000"
      },
      "message": "Merge \"aaudio: pass smart pointer to mixer thread\" into pi-dev"
    },
    {
      "commit": "334adf0ea8a9a5f6e26168864d4fd73a5c9417eb",
      "tree": "87c8fa867b66325b0fc3487ddd699b560cfc5a87",
      "parents": [
        "1c57a0e6e0953c2bb192fca2ec6c6700ccbd0b1d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Mar 23 14:08:23 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Mar 23 14:08:23 2018 -0700"
      },
      "message": "mediaplayer2: remove redundant line\n\nTest: MediaPlayer2 plays\nBug: 76144391\nChange-Id: I32bf5e5f0938516821316fd57fe74e96406bc416\n"
    },
    {
      "commit": "ef49805296eb81cd4ba039fa4d25b9358436992b",
      "tree": "ae6e544abdd0050a3c4958331ffa6d2200e05187",
      "parents": [
        "1c57a0e6e0953c2bb192fca2ec6c6700ccbd0b1d"
      ],
      "author": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Mar 23 13:09:44 2018 +0900"
      },
      "committer": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Sat Mar 24 05:53:35 2018 +0900"
      },
      "message": "Handle failure of creating MediaPlayer properly\n\nMediaPlayer::setDataSource() doesn\u0027t fail with a non-existing file. So\nwe should check the result of MediaPlayer::prepare() as well.\n\nNote that MediaPlayer::disconnect() is called instead of deleting\nMediaPlayer directly because the latter causes crash of CameraService.\nMediaPlayer::disconnect() is called even in\nCameraService::releaseSound().\n\nBug: 74376839\nTest: tested an app using CameraService\nChange-Id: Idf68837a55d14ad47dbbedff0256269bd90f9dfd\n"
    },
    {
      "commit": "97e4f64dc67f39b35ae5a5dccedbce567d6437b2",
      "tree": "cf6cea1b39c6f0d6e259f5d8feca08ed178240b6",
      "parents": [
        "00f928c514fd5e2ea4004cb6e0ca665e337b57c4",
        "015ae572e7a065f83a7f1d4d0fde560d48ffe18e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 20:49:20 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 20:49:20 2018 +0000"
      },
      "message": "Merge \"Move Codec2.0 services to hardware/google/av\" into pi-dev"
    },
    {
      "commit": "00f928c514fd5e2ea4004cb6e0ca665e337b57c4",
      "tree": "3a75499da404c6c18f755295b7a8eb8abb3d0746",
      "parents": [
        "4a6842fc1a5787b58474b8495b51ea624d81868c"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Thu Mar 22 13:20:03 2018 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Mar 23 18:49:47 2018 +0000"
      },
      "message": "Hearing Aid: use same rules for ring tones and notifications as headsets\n\nBug: 74812203\nChange-Id: I505750c89efed10fb23fd064edf0e9166f7002bb\n"
    },
    {
      "commit": "be645507a3ded6a481375419c8185e17c66dcb37",
      "tree": "d938ff05ee88f29968a6de963584e7b235f5f01a",
      "parents": [
        "142a00d21641393bb65a2484c0306f7c49ae9cb8"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Mar 22 13:48:18 2018 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Mar 23 11:10:30 2018 -0700"
      },
      "message": "aaudio: pass smart pointer to mixer thread\n\nBefore this, the mixer thread could close the stream using a stale pointer.\nThis could cause timeouts when plugging headphones in or out.\n\nBug: 76092458\nTest: write_sine_callback -m3 -pl -s1000\nTest: unplug and replug headphones many times on Marlin\nChange-Id: I437eb756686446a75fc5d04bc09d9408816585de\n"
    },
    {
      "commit": "4a6842fc1a5787b58474b8495b51ea624d81868c",
      "tree": "e4b59913cc6a6406ef46776b25abbc9116f37b61",
      "parents": [
        "1c57a0e6e0953c2bb192fca2ec6c6700ccbd0b1d",
        "0835bc5490dafe2f299edae71ed263f24952a094"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 17:25:09 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 17:25:09 2018 +0000"
      },
      "message": "Merge \"Change softvpx buffer count to 10\" into pi-dev"
    },
    {
      "commit": "015ae572e7a065f83a7f1d4d0fde560d48ffe18e",
      "tree": "8db9603533da7d7a11a669fc5fc86d79bfc362b2",
      "parents": [
        "1c57a0e6e0953c2bb192fca2ec6c6700ccbd0b1d"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Mar 16 15:58:14 2018 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Mar 23 13:07:10 2018 +0000"
      },
      "message": "Move Codec2.0 services to hardware/google/av\n\nTest: Builds\n\nBug: 31973802\nBug: 64121714\nChange-Id: I9cf599c4cadcfc46a32662df66d770e081f4ea6a\n"
    },
    {
      "commit": "1c57a0e6e0953c2bb192fca2ec6c6700ccbd0b1d",
      "tree": "ed8c16edd60946fe2c8ffed5ff84c77eec40704c",
      "parents": [
        "df4f7ec8919c8a706acd08c31bc2e450fa3576b6",
        "b5d108dbdf2559858a5d1705eeb7bdc4c0a019c2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 10:24:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 10:24:29 2018 +0000"
      },
      "message": "Merge \"Make conversion functions non-inline\" into pi-dev"
    },
    {
      "commit": "df4f7ec8919c8a706acd08c31bc2e450fa3576b6",
      "tree": "67b2628274b94776ad47acf3cbc5c35d6b92b4f4",
      "parents": [
        "dc740bccd7795f05f36eec6e59e827c805af02d4",
        "96117aeb26568ff9aecc97c189a297d5f0fca620"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 08:22:56 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 08:22:56 2018 +0000"
      },
      "message": "Merge \"Bluetooth: Enable in-band ringing in vibration mode (3/4)\" into pi-dev"
    },
    {
      "commit": "b5d108dbdf2559858a5d1705eeb7bdc4c0a019c2",
      "tree": "4a5ddc1a1bca3d257c4d5f96b350236eeef9dc6c",
      "parents": [
        "694a72d3ef5f40aa06fb3b43f7bc52eeedd50fed"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Mar 23 00:26:30 2018 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri Mar 23 00:30:54 2018 -0700"
      },
      "message": "Make conversion functions non-inline\n\nThis obviates the dependency on libgui for users of\nlibstagefright_bufferqueue_helper.\n\nTest: Builds\n\nBug: 64121714\nBug: 31973802\nBug: 74006396\nChange-Id: Ia1363d01c8f33baf71c22f70d13a735a19d3f75c\n"
    },
    {
      "commit": "fcfde5fa27d3a415bed47fd2e83398dfce88fbe3",
      "tree": "19193554521b9820e937d343b9d1dc5d65540072",
      "parents": [
        "ec57d7b565e1352e2c76040fb5df7614a164b157"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 16:08:27 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 16:08:27 2018 +0900"
      },
      "message": "MediaSession2: Match APIs with MediaPlayerBase\n\nBug: 75500592\nTest: Build\nChange-Id: I4c5394a732e988095e779522ebab746eda3eb019\n"
    },
    {
      "commit": "dc740bccd7795f05f36eec6e59e827c805af02d4",
      "tree": "44378a278dbfc314c66b28a2d00d56d646eb7834",
      "parents": [
        "ec57d7b565e1352e2c76040fb5df7614a164b157",
        "0738f27674e6d6818951d01eb3a724f7f60b80a7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 07:08:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 07:08:08 2018 +0000"
      },
      "message": "Merge \"Use SessionPlaylistAgent in MediaSession2Impl\" into pi-dev"
    },
    {
      "commit": "cf1e1332e0b6880b4776d0bab31506092163423f",
      "tree": "c75b4860ef1d076a4522e9cb34462a3affc5d90c",
      "parents": [
        "694a72d3ef5f40aa06fb3b43f7bc52eeedd50fed"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Mar 20 00:02:23 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 15:16:10 2018 +0900"
      },
      "message": "MediaController2: Remove MediaPlaylistAgent in the ControllerCallback\n\nBug: 75500592\nTest: Run CTS with MediaComponents/runcts.sh\nChange-Id: I81e73103130781b94a27d56c696144ba5e7a4a29\n"
    },
    {
      "commit": "96117aeb26568ff9aecc97c189a297d5f0fca620",
      "tree": "b475374bf0e62cd7b0ac6e67a1789d69f492c134",
      "parents": [
        "ec57d7b565e1352e2c76040fb5df7614a164b157"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Mon Feb 12 20:52:53 2018 -0800"
      },
      "committer": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Fri Mar 23 06:14:59 2018 +0000"
      },
      "message": "Bluetooth: Enable in-band ringing in vibration mode (3/4)\n\n* Add AUDIO_POLICY_FORCE_FOR_VIBRATE_RINGING mode to force Bluetooth SCO\n  in vibration mode\n* Modify default audio policy engine to route audio through SCO only\n  in AUDIO_POLICY_FORCE_FOR_VIBRATE_RINGING mode\n\nBug: 72647074\nTest: Call phone in vibration mode and hear ringtone on HFP enabled\n      headset, verify that ringtone is only played through headset.\n      Then disconnect headset and call again to verify that ringtone\n      does not play through phone speaker in vibration mode.\n\nChange-Id: I2185955bd51166b76156ffd4efdd1f2f01757518\n(cherry picked from commit 644693eee633980d356afcfedc7518ea7fed2c47)\n"
    },
    {
      "commit": "ec57d7b565e1352e2c76040fb5df7614a164b157",
      "tree": "bd35670bb1fef4fa3d04419cc61a0cdb77f2fefb",
      "parents": [
        "694a72d3ef5f40aa06fb3b43f7bc52eeedd50fed",
        "7a20d306e41c3cec1153923ca793cafdc685eb83"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Fri Mar 23 06:07:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 06:07:17 2018 +0000"
      },
      "message": "Merge \"MediaSession2: Protect MediaSessionManager APIs with permission\" into pi-dev"
    },
    {
      "commit": "1fe063606ecf3ef1fd71496bc2bcdd0d8ce8342d",
      "tree": "e913711aa8095fe2bdac4a8e246ebbf524aae524",
      "parents": [
        "694a72d3ef5f40aa06fb3b43f7bc52eeedd50fed"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 13:50:37 2018 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Mar 23 15:03:03 2018 +0900"
      },
      "message": "MediaController2: Match APIs with MediaPlayerBase\n\nBug: 74370608\nTest: Build\nChange-Id: I54921140eccc502803f50dd1187311fcf8a784c9\n"
    },
    {
      "commit": "483a9330a7fb62bd288cacf3e606e9d826d0a67d",
      "tree": "82efd5c61d798c248001114a643f9d8ee3d48512",
      "parents": [
        "fd0ccd539c4e13080b4e977f951f8613ec39267a"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Tue Mar 20 11:01:46 2018 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Fri Mar 23 13:47:34 2018 +0900"
      },
      "message": "MCV2: Add contentDescriptions to buttons\n\nBug: 74501732\nTest: Checked using Accessibility Scanner app\nChange-Id: Id194637dfb49a8a41fc8e32ddf1e99d66a8f3ab6\n"
    },
    {
      "commit": "0738f27674e6d6818951d01eb3a724f7f60b80a7",
      "tree": "9cdc8a6a7a539c844adac625f6968e3be2c9f92a",
      "parents": [
        "f247a89ef809d77e0ff34c8bb05e00e4473c1a65"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Wed Mar 21 08:52:42 2018 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Fri Mar 23 08:59:09 2018 +0900"
      },
      "message": "Use SessionPlaylistAgent in MediaSession2Impl\n\nBug: 74090741\nTest: SessionPlaylistAgentTest\nChange-Id: I9ea059f99e940f71f173ae5d0248253a26292304\n"
    },
    {
      "commit": "32494f5438db362e96b69e5fda7b2fd34633b562",
      "tree": "05117fdb47464a3de366fc60010e7255dce44b3b",
      "parents": [
        "56ecf3e3ce36d111a17d67485047836660128629"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 26 22:53:27 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Mar 22 15:54:58 2018 -0700"
      },
      "message": "Fixes serialization of vendor metrics\n\nUses an updated proto model that\u0027s more efficient for serialization.\n\nTest: Unit tests, google play and CTS tests.\nBug: 73724218\n\nChange-Id: I936bc18216c0c67de580424b4c62344d94be6b38\n"
    },
    {
      "commit": "0835bc5490dafe2f299edae71ed263f24952a094",
      "tree": "9350a1178c42ee701c52b2928ec0034abfb88930",
      "parents": [
        "b3aae29d8ba006682d6b031e51a3488ff2b84a8c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 22 15:08:44 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 22 15:16:26 2018 -0700"
      },
      "message": "Change softvpx buffer count to 10\n\nSome cts tests made implicity assumption that the number of buffers\nis less than 16. When the decoder has 16 or more input buffers, it\ncould queue more input buffers without blocking before the first\noutput comes out, tests waiting for the output might fail.\n\nChanging buffer count to 10, as it still allows 60fps content to\nbuffer \u003e150ms.\n\nAlso added a few missing OMX param check.\n\nTest: Youtube/Exoplayer HDR 1080p60 playback (with media service\ncpu set to top-app) and observe no framedrops;\nFailing CTS test in bug.\n\nbug: 75976396\nbug: 76145803\nChange-Id: Ie27583e6519a3dbadc7c993022a5af830fb250a9\n"
    },
    {
      "commit": "11fed3f9b192f15f06f997c09f4e48aa43b48f47",
      "tree": "be7d5cf25978e0e680113c76a64c4bb54389d09f",
      "parents": [
        "f247a89ef809d77e0ff34c8bb05e00e4473c1a65"
      ],
      "author": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Thu Mar 22 14:09:36 2018 -0700"
      },
      "committer": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Thu Mar 22 14:09:36 2018 -0700"
      },
      "message": "Move codec2 out of frameworks/av\n\nBug: 74403547\nTest: builds\nChange-Id: I186d99cab2e461849f35b60f306ff9cbeb036d5b\n"
    },
    {
      "commit": "694a72d3ef5f40aa06fb3b43f7bc52eeedd50fed",
      "tree": "26762d43783f01f0074a1cdfd85e74c09274636f",
      "parents": [
        "f334e17df4b8758e65923a17ae154a7bdbc6f07a",
        "3528c9330f481f236f16753cb0846c7d6ddcc7ee"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 22 18:48:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 18:48:44 2018 +0000"
      },
      "message": "Merge \"audio services: monitor execution time for binder commands\" into pi-dev"
    },
    {
      "commit": "f334e17df4b8758e65923a17ae154a7bdbc6f07a",
      "tree": "ab14b5022f4c3bb56c0fe6ef02ad059830b2c113",
      "parents": [
        "f247a89ef809d77e0ff34c8bb05e00e4473c1a65",
        "01a7601f753fb80e89202fc0b115e263581fc3f4"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Mar 22 17:39:52 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 17:39:52 2018 +0000"
      },
      "message": "Merge \"heif: report Exif offset and size in file meta\" into pi-dev"
    },
    {
      "commit": "3528c9330f481f236f16753cb0846c7d6ddcc7ee",
      "tree": "3fb6f04c3842c26e81a68fb847596aa237b713d9",
      "parents": [
        "12cc6e7a4162ea4137f9082a3e0fea551b21aae3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 23 17:17:22 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 22 10:02:49 2018 -0700"
      },
      "message": "audio services: monitor execution time for binder commands\n\nAdd a mechanism to monitor execution time of incoming binder\ncalls to audio flinger and audio policy and cause native audioserver\nrestart in case of timeout.\n\nBug: 69250055\nTest: manual. audio smoke tests\nChange-Id: I01b5bf2599fb2a4cd265cbbe8d4e34b2b059aaf4\n"
    },
    {
      "commit": "7a20d306e41c3cec1153923ca793cafdc685eb83",
      "tree": "cd752978b308630eb7fe96886bf3fabdd5008a13",
      "parents": [
        "b3aae29d8ba006682d6b031e51a3488ff2b84a8c"
      ],
      "author": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Mar 22 22:04:28 2018 +0900"
      },
      "committer": {
        "name": "Hyundo Moon",
        "email": "hdmoon@google.com",
        "time": "Thu Mar 22 22:04:28 2018 +0900"
      },
      "message": "MediaSession2: Protect MediaSessionManager APIs with permission\n\nBug: 73226436\nTest: Locally created custom CTS methods and run\nChange-Id: I02a4b6f56961b1c4bfece22e4061e2b30094935a\n"
    },
    {
      "commit": "f247a89ef809d77e0ff34c8bb05e00e4473c1a65",
      "tree": "66be2f6b2479e42097c7a93759ac0ffd7b52f14f",
      "parents": [
        "36559335ac6836d7f80c466e525022046d82c617",
        "e1cf6e342df782fbd7e338ab81ef23b772a05465"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 22 06:16:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 06:16:41 2018 +0000"
      },
      "message": "Merge \"Move CCodec and c2.google.* components out of framework\" into pi-dev"
    },
    {
      "commit": "36559335ac6836d7f80c466e525022046d82c617",
      "tree": "c92dde20ad25e6f4af31cf3a7fc74e77767ea076",
      "parents": [
        "b3aae29d8ba006682d6b031e51a3488ff2b84a8c",
        "256e289a6e9a568a86a60e4058a891981e76eb81"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 22 06:04:38 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 06:04:38 2018 +0000"
      },
      "message": "Merge \"Allow access from hardware/google/av\" into pi-dev"
    },
    {
      "commit": "256e289a6e9a568a86a60e4058a891981e76eb81",
      "tree": "731bc75c1f978a58d90552bef894e5f1b5b475aa",
      "parents": [
        "142a00d21641393bb65a2484c0306f7c49ae9cb8"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Tue Mar 20 18:51:03 2018 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Mar 21 15:51:25 2018 -0700"
      },
      "message": "Allow access from hardware/google/av\n\nModules in hardware/google/av need to access\nlibstagefright_codec2_internal and header files from libgui.\n\nTest: Builds\n\nBug: 64121714\nBug: 31973802\nBug: 74006396\nChange-Id: I855915fe25468bdbdadeb3474ef31d2e9e851592\n"
    },
    {
      "commit": "b3aae29d8ba006682d6b031e51a3488ff2b84a8c",
      "tree": "ec9a52d426724d256db44f89a97f7c431ec16b90",
      "parents": [
        "2ca700737c14edc9141af170ee278853fd99fa87",
        "bc3ad96efdfca9ceaa5ff31b27f7571b32903fde"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 21 21:58:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 21:58:17 2018 +0000"
      },
      "message": "Merge \"Decouple libstagefright from Codec 2.0\" into pi-dev"
    },
    {
      "commit": "2ca700737c14edc9141af170ee278853fd99fa87",
      "tree": "29ac4f7bf2422a7937eb7c97fbdc789b4ff27ffe",
      "parents": [
        "12cc6e7a4162ea4137f9082a3e0fea551b21aae3",
        "8abec3f651fa0f862361047fed63fd5b243b9bf8"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 21 19:52:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 19:52:45 2018 +0000"
      },
      "message": "Merge \"CameraService: Handle ActivityManager death for UidPolicy\" into pi-dev"
    },
    {
      "commit": "12cc6e7a4162ea4137f9082a3e0fea551b21aae3",
      "tree": "b944e0ca5a1c9690db1cb8bf2f7055e0364f8dcb",
      "parents": [
        "142a00d21641393bb65a2484c0306f7c49ae9cb8",
        "6cb243cd2bb4d2fb41d12394fe5731ba098fc2ef"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Mar 21 18:00:36 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 21 18:00:36 2018 +0000"
      },
      "message": "fix crash due to no output format available -- DO NOT MERGE\nam: 6cb243cd2b  -s ours\n\nChange-Id: I9bc2b349185537aa22ff37b54b796dc77e8704de\n"
    },
    {
      "commit": "6cb243cd2bb4d2fb41d12394fe5731ba098fc2ef",
      "tree": "b3abba0f9cae8fe380621133f63936b70b7a73ea",
      "parents": [
        "237f9034c6cbe5cbafb0cd4c862d9dddfbdf7389"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 20 13:37:22 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Mar 21 17:42:44 2018 +0000"
      },
      "message": "fix crash due to no output format available -- DO NOT MERGE\n\nOutput format should arrive before we get first frame, but if\nit doesn\u0027t, better fail it than crash.\n\nbug: 69924594\nbug: 75978033\nChange-Id: I057ba49c8f83b9a301d409510717039ad894c391\n"
    },
    {
      "commit": "142a00d21641393bb65a2484c0306f7c49ae9cb8",
      "tree": "b944e0ca5a1c9690db1cb8bf2f7055e0364f8dcb",
      "parents": [
        "56ecf3e3ce36d111a17d67485047836660128629",
        "3deddf1ba255b6bad6e36a54ab47a136eb3eab11"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 21 09:00:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 09:00:19 2018 +0000"
      },
      "message": "Merge \"Make prior{Linear/Graphic}Allocation own handle\" into pi-dev"
    },
    {
      "commit": "3deddf1ba255b6bad6e36a54ab47a136eb3eab11",
      "tree": "578d9628156fce65edacf6649a733ba63d3d7e0f",
      "parents": [
        "966c158717dea42a7aa4f69a002f30a73c8713cb"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Tue Mar 20 03:29:39 2018 -0700"
      },
      "committer": {
        "name": "Sungtak Lee",
        "email": "taklee@google.com",
        "time": "Tue Mar 20 18:27:37 2018 -0700"
      },
      "message": "Make prior{Linear/Graphic}Allocation own handle\n\nAlso, initialize C2AllocationGralloc::mLockedHandle to nullptr.\n\nTest: Builds\n\nBug: 31973802\nBug: 64121714\n\nChange-Id: I418409925b2217e81c160a11c3f9806e574cd9fc\n"
    },
    {
      "commit": "56ecf3e3ce36d111a17d67485047836660128629",
      "tree": "79a1a5a3992f0bb116d3d2e8473c1e76b84034e2",
      "parents": [
        "553a1a42fceba2f5315238355de2b20687185160"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Mar 12 15:38:17 2018 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Mar 21 01:14:13 2018 +0000"
      },
      "message": "audioflinger: only update mHalVolFloat on success\n\nThis will fix a regression with AAudio MMAP stream not getting\nits initial volume set correctly.\nAlso initialize mHalVolFloat.\n\nBug: 74547253\nTest: adb shell write_sine_callback -pl -s10 -m1\nTest: should have the same initial volume as\nTest: adb shell write_sine_callback -pl -s10 -m3\nChange-Id: Ie0c1f9ba51e2059a888d2273f41588f101b09a5c\n"
    },
    {
      "commit": "553a1a42fceba2f5315238355de2b20687185160",
      "tree": "f8899ad6adb39f243c0be72133906314187436ed",
      "parents": [
        "6dd87c3ad6c7b05dcf99501276678b9126347ce6",
        "67d5b91f2fa0b106c038e642225e3b538db2be2e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 21 01:04:15 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 01:04:15 2018 +0000"
      },
      "message": "Merge \"heif: renaming of grid-{width,height} to tile-{width,height}\" into pi-dev"
    },
    {
      "commit": "6dd87c3ad6c7b05dcf99501276678b9126347ce6",
      "tree": "8e64110b7dc717c9b168de38f99e10ddc3c8b97b",
      "parents": [
        "9bd935b6f41ad3b9289b56c0ab4e91b6fdebc27c",
        "196f01061573d47096bcd2b6a7370f4f887c2444"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 20 22:22:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 20 22:22:45 2018 +0000"
      },
      "message": "Merge \"Implements secure stops API for clearkey 1.1 service.\" into pi-dev"
    }
  ],
  "next": "9bd935b6f41ad3b9289b56c0ab4e91b6fdebc27c"
}
