)]}'
{
  "log": [
    {
      "commit": "a719dfa429e2b072409f5108f162d594d37ac8fe",
      "tree": "e80b26efb1921fda3c1186af3c8f255fd229403f",
      "parents": [
        "664d6012afe348c6fe906cb05fb981d1a4dbd593",
        "d114b624ea2ec5c51779b74132a60b4a46f6cdba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 28 18:38:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 28 18:38:53 2017 +0000"
      },
      "message": "Merge \"audio track: dump more data\""
    },
    {
      "commit": "664d6012afe348c6fe906cb05fb981d1a4dbd593",
      "tree": "7b2c13fe738bb377245c12a3a3ca37a3f2c58fdf",
      "parents": [
        "2082830d6ae566cefa0b27b01162d690f3c0ce21",
        "5effdf6d9ed17b4ff67a7e1adc56996c01c43383"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 28 17:05:44 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 28 17:05:44 2017 +0000"
      },
      "message": "Merge \"Deprecate ditherAndClamp with memcpy_to_i16_from_q4_27\""
    },
    {
      "commit": "d114b624ea2ec5c51779b74132a60b4a46f6cdba",
      "tree": "e9abd0ce3d951d80d5831e49d3ba5d6623fc4ab8",
      "parents": [
        "a221a7c81776add538e6cd82cddfa427364beb79"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 27 18:37:04 2017 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 28 08:53:15 2017 -0800"
      },
      "message": "audio track: dump more data\n\nAdd more information to AudioTrack::dump();\n\nTest: run dumpsys media.player\nChange-Id: Ia0799c65c02dd27b623b53d550ebf08c5c1b724c\n"
    },
    {
      "commit": "2082830d6ae566cefa0b27b01162d690f3c0ce21",
      "tree": "7e5d01e203b7f0b941187ba4d51c872b425f09c4",
      "parents": [
        "cd742b9174eac9f8b6a108512818f2d3a2392ea8",
        "583a23aee1408815b5449aa96e2eccaf00ed8c32"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Nov 27 22:50:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 27 22:50:52 2017 +0000"
      },
      "message": "Merge \"\u0027dumpsys media.metrics -proto #\u0027 doesn\u0027t lose default\""
    },
    {
      "commit": "5effdf6d9ed17b4ff67a7e1adc56996c01c43383",
      "tree": "06e5f064d6dc9b5aea55cf9a12c39d9e68091a85",
      "parents": [
        "cd742b9174eac9f8b6a108512818f2d3a2392ea8"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 27 13:51:40 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 27 14:47:19 2017 -0800"
      },
      "message": "Deprecate ditherAndClamp with memcpy_to_i16_from_q4_27\n\nTest: test-mixer and SoloTester\nBug: 69636805\nChange-Id: I5cc04d82f3e46fbfc8188a63eb2a90fb70634c90\n"
    },
    {
      "commit": "583a23aee1408815b5449aa96e2eccaf00ed8c32",
      "tree": "cbcb38788b527af3defdfa868b5372af40ee4c8c",
      "parents": [
        "6b0e0f0299748dad99dfb5f65c7203bef1abb757"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Nov 27 12:49:57 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Nov 27 12:49:57 2017 -0800"
      },
      "message": "\u0027dumpsys media.metrics -proto #\u0027 doesn\u0027t lose default\n\nmakes sure that using \"-proto #\" option for dumpsys of the metrics\nservice doesn\u0027t leave the protocol set there; we want it to come\nback to the defined default if there is no \"-proto #\" on subsequent\ninvocations.\n\nBug: 69797899\nTest: multiple dumpsys invocations\n"
    },
    {
      "commit": "cd742b9174eac9f8b6a108512818f2d3a2392ea8",
      "tree": "f336d3af8ec25530d7d4b835da6c137e99482c47",
      "parents": [
        "ef6cf3fc6cfb12e089e787efcbf1fc485ed54931",
        "247767321d6c3b481dd8255091f41d7c0de66975"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Nov 23 00:09:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 23 00:09:49 2017 +0000"
      },
      "message": "Merge \"Disable detection of MP3 audio contained in MPEG1\""
    },
    {
      "commit": "ef6cf3fc6cfb12e089e787efcbf1fc485ed54931",
      "tree": "a197eb396f5e84684d937da00e091a27c7de7f2e",
      "parents": [
        "693cb2bde52b4d73c391c529f1c6bf7a02be9f72",
        "94a1ee822686e920a33e312f4032f991731aea07"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Nov 22 19:39:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 22 19:39:53 2017 +0000"
      },
      "message": "Merge \"Converting effect chains to float point by default.\""
    },
    {
      "commit": "693cb2bde52b4d73c391c529f1c6bf7a02be9f72",
      "tree": "e90e62f72eed4f7c6cc88d1777abf9a9c17e5cc4",
      "parents": [
        "720e24cfe430e1719c5defb9a1f41a6b63b02eaf",
        "2329638e097622653cb2c4acc145b996e317a38b"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Nov 22 18:16:26 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 22 18:16:26 2017 +0000"
      },
      "message": "Merge \"aaudio: use xruns detected in the service\""
    },
    {
      "commit": "247767321d6c3b481dd8255091f41d7c0de66975",
      "tree": "41f4ce1dc38066e7305ed9eb5b6156c8a442bfaa",
      "parents": [
        "720e24cfe430e1719c5defb9a1f41a6b63b02eaf"
      ],
      "author": {
        "name": "Jin Xue",
        "email": "jin.xue@intel.com",
        "time": "Wed Nov 08 14:13:46 2017 +0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Nov 22 09:47:29 2017 -0800"
      },
      "message": "Disable detection of MP3 audio contained in MPEG1\n\nMedia files of MPEG1 container should not be detected\nbecause MPEG1 container is not supported\n\nBug: 69278105\nTest: manual - push a MPEG1 file whose audio track is of mp3 format\nChange-Id: Ia6b49bd05e86f0056efa1359d982feaf20e7063d\nSigned-off-by: Jin Xue \u003cjin.xue@intel.com\u003e\n"
    },
    {
      "commit": "720e24cfe430e1719c5defb9a1f41a6b63b02eaf",
      "tree": "107102349b89d23660935497822878a00a108958",
      "parents": [
        "0ebfd1e12dd84a15bd3fde30d234db5255b522b8"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Nov 20 18:08:49 2017 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Nov 21 22:34:47 2017 -0800"
      },
      "message": "heif: renaming MPE4Writer in-memory cache related variables\n\nAfter previous patch, in-memory cache is used for both moov\nand file-level meta. No functional change.\n\nbug: 63633199\n\nChange-Id: I56c91a28a25867e0fd75c4d8f33f7485a5dacf02\n"
    },
    {
      "commit": "0ebfd1e12dd84a15bd3fde30d234db5255b522b8",
      "tree": "68103b3d223d44b81024a7e3ef62e2c08be18f03",
      "parents": [
        "ad972932b63027fa06d410ce51d1a04f8698190d",
        "1419b148ff16b819872046065b09a35982f0c392"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Nov 22 05:50:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 22 05:50:46 2017 +0000"
      },
      "message": "Use -Werror in frameworks/av/media/libaaudio\nam: 1419b148ff  -s ours\n\nChange-Id: I46229be7d7c016025bbddade04c2cac2521460ce\n"
    },
    {
      "commit": "1419b148ff16b819872046065b09a35982f0c392",
      "tree": "b38b5585d1d13cdced71578d59bb548cc03e3edd",
      "parents": [
        "4b18794783da8af04a037680cbde4ba0f1c0bb5b"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Nov 21 19:22:07 2017 -0800"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Nov 22 05:36:24 2017 +0000"
      },
      "message": "Use -Werror in frameworks/av/media/libaaudio\n\n* Remove unused local variables, labels, functions, private fields.\n* Fix warning of unused return result.\n* Use template functions in .h file to avoid warning of unused static functions.\n\nBug: 66996870\nTest: build with WITH_TIDY\u003d1\nExempt-From-Owner-Approval: to fix broken build\nMerged-In: I54962a7fd36a405e54366130b9c0a24e26fe8ebb\n(cherry picked from commit 68326fe017a18957419a81489b67f75831f9a674)\n\nChange-Id: If5804a74ca2c0560debd56407d8d1c1a25e11129\n(cherry picked from commit 9bba7f1734af2a56d30baac6a2df2d3254eb209d)\n"
    },
    {
      "commit": "94a1ee822686e920a33e312f4032f991731aea07",
      "tree": "5a8e84b19269529153e94fa2f0a6b927823f6848",
      "parents": [
        "c275189ccbfe8ca29437a24256195c61de2f2a6d"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Fri Jul 21 15:11:02 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 21 20:39:19 2017 -0800"
      },
      "message": "Converting effect chains to float point by default.\n\nRemoved additional conversions from/to int16/float.\nFixed config file restrictions.\nDetection of native format (int16/float) of effects.\nOn-the-fly conversion to/from 16 bit effects if necessary.\nWIP: testing effects in all possible configurations.\n\nBug: 63935479\nTest: Bufflog dumps, frequency analysis comparison, SoloTester\nChange-Id: Id4cabc5c5698befc90a5d68b0b996a9b9adebfc4\n"
    },
    {
      "commit": "ad972932b63027fa06d410ce51d1a04f8698190d",
      "tree": "68103b3d223d44b81024a7e3ef62e2c08be18f03",
      "parents": [
        "1d5f93d24444ded52a0daf36cb8471a38c88638f",
        "4b18794783da8af04a037680cbde4ba0f1c0bb5b"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Nov 22 04:03:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 22 04:03:19 2017 +0000"
      },
      "message": "Use -Werror in frameworks/av/media/libaaudio am: 9bba7f1734  -s ours\nam: 4b18794783  -s ours\n\nChange-Id: I53151f8a6bd8ada472c8134fd29c62f5e47771bb\n"
    },
    {
      "commit": "4b18794783da8af04a037680cbde4ba0f1c0bb5b",
      "tree": "f96c14ac19e0e0a256f35c42a4b7436a3f239efe",
      "parents": [
        "db5b6cb6c35a69d236fcd62dcb41c8a4682fa295",
        "9bba7f1734af2a56d30baac6a2df2d3254eb209d"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Nov 22 04:00:41 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 22 04:00:41 2017 +0000"
      },
      "message": "Use -Werror in frameworks/av/media/libaaudio\nam: 9bba7f1734  -s ours\n\nChange-Id: I8588fa10f2f21bcaefee30023f7caff66eeb245f\n"
    },
    {
      "commit": "9bba7f1734af2a56d30baac6a2df2d3254eb209d",
      "tree": "8c876cc972379b13a711d5578ac0e32815de63ea",
      "parents": [
        "899b78c12b25fa381b1d6c90330ce45f758ef28d"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Nov 21 19:22:07 2017 -0800"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Nov 22 03:54:19 2017 +0000"
      },
      "message": "Use -Werror in frameworks/av/media/libaaudio\n\n* Remove unused local variables, labels, functions, private fields.\n* Fix warning of unused return result.\n* Use template functions in .h file to avoid warning of unused static functions.\n\nBug: 66996870\nTest: build with WITH_TIDY\u003d1\nExempt-From-Owner-Approval: to fix broken build\nMerged-In: I54962a7fd36a405e54366130b9c0a24e26fe8ebb\n(cherry picked from commit 68326fe017a18957419a81489b67f75831f9a674)\n\nChange-Id: If5804a74ca2c0560debd56407d8d1c1a25e11129\n"
    },
    {
      "commit": "1d5f93d24444ded52a0daf36cb8471a38c88638f",
      "tree": "68103b3d223d44b81024a7e3ef62e2c08be18f03",
      "parents": [
        "6da1a2fefc68e63b72daa6565047b7082135c4c1",
        "fbc97c5266ec4e9fbe98db944f7aa99452299ae8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 22 03:37:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 22 03:37:56 2017 +0000"
      },
      "message": "Merge \"heif: add muxer support for adding still images\""
    },
    {
      "commit": "fbc97c5266ec4e9fbe98db944f7aa99452299ae8",
      "tree": "99b1eb109a0fafa647ed03a05ec75b89385e7a49",
      "parents": [
        "ef9fc7792d4995da68cb71a3e9f2304e565a016d"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Nov 10 13:49:46 2017 -0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Nov 21 15:50:34 2017 -0800"
      },
      "message": "heif: add muxer support for adding still images\n\nThis change adds basic support for adding still images to a\nheif container.\n\nbug: 63633199\n\ntest:\nLocally built test app that adds more than one still images\nand video sequences to a heif container. Verified the muxed\nfile can be played by locally built heif viewer app that\nuses MediaExtractor/MediaMetadataRetriever/MediaPlayer apis.\n\nTested media post-submit CTS on Pixel2XL.\n\nChange-Id: I185bbbbed3dbb4e76d64bcf7323ee44a42cc8623\n"
    },
    {
      "commit": "6da1a2fefc68e63b72daa6565047b7082135c4c1",
      "tree": "da415c19c37f2e06d8a2d6e1999186791a2221b2",
      "parents": [
        "f76bbd32192e5882cdccd09c869ac23fa43f3dda",
        "967abf87fadccb728f0e31586d08822012c3b60b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 21 23:20:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 21 23:20:29 2017 +0000"
      },
      "message": "Merge \"aaudio: force underruns in write callback\""
    },
    {
      "commit": "967abf87fadccb728f0e31586d08822012c3b60b",
      "tree": "c2ae6ed15b1656457d5107a2286bca6e5814ab63",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Nov 21 10:02:34 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Nov 21 13:47:00 2017 -0800"
      },
      "message": "aaudio: force underruns in write callback\n\nTest AAudioStream_getXRunCount() by sleeping in callback.\n\nBug: 38512417\nTest: write_sine_callback -pl -n1 -s20 -c2 -u\nChange-Id: Ib3fe210b764e4202b70c54a609785de89e52a017\n"
    },
    {
      "commit": "f76bbd32192e5882cdccd09c869ac23fa43f3dda",
      "tree": "35ffbce17cd914723af53f78aa8d1b01e83b034e",
      "parents": [
        "a221a7c81776add538e6cd82cddfa427364beb79",
        "9a9e60097f1ea8828e6d4aa6539e7bac29141afa"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Nov 21 20:26:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 21 20:26:52 2017 +0000"
      },
      "message": "Merge \"aaudio: test AAudioStream_setBufferSizeInFrames()\""
    },
    {
      "commit": "a221a7c81776add538e6cd82cddfa427364beb79",
      "tree": "8bc6d44d52f2eec78227000a849010da711422bc",
      "parents": [
        "afd5242aea820b8c7118ff35b3f1b3d5ed71ef19",
        "522e43188628dc30287e3f8c69b779ecc885e7c2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 21 20:11:54 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 21 20:11:54 2017 +0000"
      },
      "message": "Merge \"avoid null dereference\""
    },
    {
      "commit": "522e43188628dc30287e3f8c69b779ecc885e7c2",
      "tree": "bd2986074db7ee374bae11ab1bfdf2a265f004ae",
      "parents": [
        "6b0e0f0299748dad99dfb5f65c7203bef1abb757"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 21 10:32:24 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 21 10:32:24 2017 -0800"
      },
      "message": "avoid null dereference\n\nfix a null pointer dereference exposed during 64-bit testing; caused a\ncrash at the end of recording video. I would have expected a similiar failure\nin 32-bit mode, but suspect some code generation + inlining difference optimized\naway the dereference in 32-bit mode. Have not identified just where that\nhappens.\n\nBug: 16890215\nTest: record videos in both 32- and 64-bit modes\n"
    },
    {
      "commit": "2329638e097622653cb2c4acc145b996e317a38b",
      "tree": "d25dccdc184ac7ce8b7aceb227411592ff256484",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Nov 20 15:45:11 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Nov 21 10:30:58 2017 -0800"
      },
      "message": "aaudio: use xruns detected in the service\n\nThe service knows when an actual xrun occurs so we pass\nthat value to the client.\n\nBug: 38512417\nTest: write_sine_callback -pl -n1 -s20 -c2 -u\nChange-Id: I9e5ff1edd2e9378957309280162d7cda855f5adb\n"
    },
    {
      "commit": "9a9e60097f1ea8828e6d4aa6539e7bac29141afa",
      "tree": "2bbbe4e94cad0c88a98f410353dbe7270c6d0a31",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Nov 17 12:17:37 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Nov 21 08:48:27 2017 -0800"
      },
      "message": "aaudio: test AAudioStream_setBufferSizeInFrames()\n\nBug: 69469801\nTest: this is a test\nChange-Id: I524392c1141ae3b1c37fe083930947fd7ef8243d\n"
    },
    {
      "commit": "afd5242aea820b8c7118ff35b3f1b3d5ed71ef19",
      "tree": "babebc3586faaabc05552489c6da12467c0b5197",
      "parents": [
        "ee9ab22ebabab3e3669b38badf8b0a0f504fc3b4",
        "6479d501e85147d2be48bde13a7926da5f0e56f6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 21 01:18:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 21 01:18:08 2017 +0000"
      },
      "message": "Merge \"aaudio: clip bufferSize at top of MMAP code\""
    },
    {
      "commit": "ee9ab22ebabab3e3669b38badf8b0a0f504fc3b4",
      "tree": "dae301adca07186dee680107492ef68403febfbb",
      "parents": [
        "e9f825a08817134810be42d6a2b4b444d68a2843",
        "21da647792c0b78ab3943be0f32066015d5e8c34"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 21 00:36:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 21 00:36:49 2017 +0000"
      },
      "message": "Merge \"refactor AudioTrack and AudioFlinger createTrack()\""
    },
    {
      "commit": "e9f825a08817134810be42d6a2b4b444d68a2843",
      "tree": "9a840c6cff453a7c00a7c4497c847ca4d32941ba",
      "parents": [
        "6b0e0f0299748dad99dfb5f65c7203bef1abb757",
        "9eba210059bb8d8502988fc9fd0cecf223c9114f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 20 22:33:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 20 22:33:19 2017 +0000"
      },
      "message": "Merge \"aaudio: fix ramp for volume smoothing\""
    },
    {
      "commit": "6479d501e85147d2be48bde13a7926da5f0e56f6",
      "tree": "fc8ceb4291751a934f51cc716304298ed9c05526",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Nov 20 09:32:52 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Nov 20 14:05:56 2017 -0800"
      },
      "message": "aaudio: clip bufferSize at top of MMAP code\n\nSet size to a reasonable value regardless of the user input.\n\nBug: 69469801\nTest: test_various.cpp\nChange-Id: I6c155383e70959485882c17189388be1c9e6fc8b\n"
    },
    {
      "commit": "9eba210059bb8d8502988fc9fd0cecf223c9114f",
      "tree": "99a70657c29143801e8c95f866dc0d37e71a4d4b",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Nov 20 12:25:38 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Nov 20 12:25:38 2017 -0800"
      },
      "message": "aaudio: fix ramp for volume smoothing\n\nIt was using numSamples instead of numFrames.\nSo timing was off.\n\nBug: 68804159\nTest: raise and lower volume without clicking\nTest: test_linear_ramp.cpp\nChange-Id: I18b10dadbc47ab9cbe9c5aefd4e6197c50a0bedc\n"
    },
    {
      "commit": "6b0e0f0299748dad99dfb5f65c7203bef1abb757",
      "tree": "d6f4a1522cfa50fec19b56489d5f0c4dc9b624ed",
      "parents": [
        "bc9287260ccce3290308b4488d235d404b6a3ec5"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 17 17:01:17 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 17 17:04:41 2017 -0800"
      },
      "message": "Codec2: pass block pools by ID\n\nThis highlighted a cfi bug so disabled cfi:\n\nframeworks/av/media/libstagefright/codecs/avcdec/C2SoftAvcDec.cpp:1237:15: runtime error:\ncontrol flow integrity check for type \u0027android::C2BlockPool\u0027 failed during virtual call\n(vtable address 0x0078b2f659c0)\n0x0078b2f659c0: note: invalid vtable in module /system/lib64/libstagefright_soft_c2avcdec.so\n 00 00 00 00  98 a8 ef b2 78 00 00 00  f0 df f3 b2 78 00 00 00  00 e0 f3 b2 78 00 00 00  00 e0 f3 b2\n              ^\n\nBug: 64121714\nTest: unittest\nChange-Id: I25d9c9d603e78c5043568cfb951d26aacea798a4\n"
    },
    {
      "commit": "bc9287260ccce3290308b4488d235d404b6a3ec5",
      "tree": "2577acabb9c5c56a0c95a0bc4b8fe6aa736485a1",
      "parents": [
        "8df81580634ea8ca563a6689c295962fd75c8310",
        "0b924ce42aca1f190f9981b30a9b34037afc2248"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 18 00:08:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 18 00:08:21 2017 +0000"
      },
      "message": "Merge \"Codec2: finalize allocator/block allocator API\""
    },
    {
      "commit": "8df81580634ea8ca563a6689c295962fd75c8310",
      "tree": "db206ab98a378023eca13762007c101de2343081",
      "parents": [
        "e5a1a62ec0a9ee0d3856fd8d99a7eccd8ae36221",
        "161b64fc1c9ee03d32b3bd634be950fac5ad6ed8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 23:20:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 23:20:07 2017 +0000"
      },
      "message": "Merge \"Cache routed device in case returning null when switching device.\""
    },
    {
      "commit": "e5a1a62ec0a9ee0d3856fd8d99a7eccd8ae36221",
      "tree": "dc40df8633e613657655e5f301fd5d89dfe309fc",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a",
        "c0010ab1d2bdfe4ddc3ce7e38b455d3550d174a7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 22:59:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 22:59:06 2017 +0000"
      },
      "message": "Merge changes I4e0bd3c3,Ic62acf3a\n\n* changes:\n  Revert \"Revert \"Allow empty IOmxStore implementation\"\"\n  Remove dependency on non-Treble OMX\n"
    },
    {
      "commit": "0b924ce42aca1f190f9981b30a9b34037afc2248",
      "tree": "b3cd37e9d16e56ec87b7f8306e3060292f82e012",
      "parents": [
        "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 15 16:57:25 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 17 22:07:03 2017 +0000"
      },
      "message": "Codec2: finalize allocator/block allocator API\n\nBug: 64121714\nTest: unittest\nChange-Id: I32e0c342e9e306b01019c2d6d2d273a6944f3f06\n"
    },
    {
      "commit": "10edfcf70857cc0a22afbbd3fc8f57f0c8a2953a",
      "tree": "4d26b37f91720dd435ed96cdd94850a8745c34a1",
      "parents": [
        "068fe16a1b8f511046ba787f33605c0ac64f1ab5",
        "ebe144c6709aeb1a09ca2223f7f9c0acb4f9f22d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 18:26:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 18:26:34 2017 +0000"
      },
      "message": "Merge \"libaudiohal: Add optional \"msd\" devices factory\""
    },
    {
      "commit": "161b64fc1c9ee03d32b3bd634be950fac5ad6ed8",
      "tree": "d04f2f4d842a5309716bf8993c1d897feb6d4395",
      "parents": [
        "45145a39251970da167ff6cd31817673820fc134"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Fri Nov 17 09:31:48 2017 -0800"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Fri Nov 17 09:31:48 2017 -0800"
      },
      "message": "Cache routed device in case returning null when switching device.\n\nBug: 69366408\nTest: runtest --path cts/tests/tests/media/src/android/media/cts/RoutingTest.java\nChange-Id: I270fe60abdf22eada927bf0c5fc594de294c8428\n"
    },
    {
      "commit": "c0010ab1d2bdfe4ddc3ce7e38b455d3550d174a7",
      "tree": "e436d0443528dd4f786e3ffc8fbc4c49e8318996",
      "parents": [
        "e7b894297aebc24939ddfa632ea3dd2d405d9f93"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 23:30:42 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 23:40:20 2017 -0800"
      },
      "message": "Revert \"Revert \"Allow empty IOmxStore implementation\"\"\n\nThis reverts commit 77a5b891eb2c64246c82d695aac40c5312f0ff3e, which was\nmade originally for b/69110957.\n\nTest: make vts -j123 \u0026\u0026 vts-tradefed run commandAndExit vts \\\n--skip-all-system-status-check \\\n--skip-preconditions -m VtsHalMediaOmxStoreV1_0Host \\\n-l INFO\n\nBug: 68491141\nChange-Id: I4e0bd3c343811142995665672fe89ad3e9da6dde\n"
    },
    {
      "commit": "e7b894297aebc24939ddfa632ea3dd2d405d9f93",
      "tree": "9ecbc48782ee462413281ecdf7f5b6b276e96eee",
      "parents": [
        "068fe16a1b8f511046ba787f33605c0ac64f1ab5"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 19:33:39 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 23:32:11 2017 -0800"
      },
      "message": "Remove dependency on non-Treble OMX\n\nThis essentially reverts commit ba40190c5e8d9bfe5b814984c6861809fea064bd,\nwhich was made originally for b/69110957.\n\nThe change in addition to reverting is the reordering of calls in\nmain_codecservice.cpp. This CL makes the call to SetUpMinijail() come\nbefore the call to ProcessState::self()-\u003estartThreadPool().\n\nTest: make cts -j123 \u0026\u0026 cts-tradefed run cts-dev -m \\\nCtsMediaTestCases --compatibility:module-arg \\\nCtsMediaTestCases:include-annotation:\\\nandroid.platform.test.annotations.RequiresDevice\n\nTest: make vts -j123 \u0026\u0026 vts-tradefed run commandAndExit vts \\\n--skip-all-system-status-check \\\n--skip-preconditions -m VtsHalMediaOmxV1_0Host \\\n-l INFO\n\nBug: 67990472\nChange-Id: Ic62acf3ae1aa3f9249e5c3ce542fb4f95689704e\n"
    },
    {
      "commit": "068fe16a1b8f511046ba787f33605c0ac64f1ab5",
      "tree": "8012260051c564bb5cfc4b24d94bcbef28cf410c",
      "parents": [
        "2b1f16f57c984c9b4b320788fdb2733c519281e8",
        "ba40190c5e8d9bfe5b814984c6861809fea064bd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 01:54:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 01:54:48 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Revert \"Remove unused modules made for non-Treble OMX\"\"\"\""
    },
    {
      "commit": "2b1f16f57c984c9b4b320788fdb2733c519281e8",
      "tree": "4d39e4ceffbdf128b811bd8210013b47d7718803",
      "parents": [
        "1295bb471af18d8350785f7df1d1af7dd1270b1d",
        "77a5b891eb2c64246c82d695aac40c5312f0ff3e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 01:50:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 01:50:17 2017 +0000"
      },
      "message": "Merge \"Revert \"Allow empty IOmxStore implementation\"\""
    },
    {
      "commit": "1295bb471af18d8350785f7df1d1af7dd1270b1d",
      "tree": "8c6a72f6095865da357e3a454b93f74287e87e2c",
      "parents": [
        "c275189ccbfe8ca29437a24256195c61de2f2a6d",
        "5a9d64a6bd9651dca789773156b369233ee750a0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 17 01:36:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 17 01:36:04 2017 +0000"
      },
      "message": "Merge \"NDK: add more owners for AImage/AImageReader\""
    },
    {
      "commit": "ba40190c5e8d9bfe5b814984c6861809fea064bd",
      "tree": "f935c1e123522e1624163278a8b8564c71c9a394",
      "parents": [
        "77a5b891eb2c64246c82d695aac40c5312f0ff3e"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 15:38:46 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 23:57:36 2017 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Remove unused modules made for non-Treble OMX\"\"\"\n\nThis reverts commit 620e4667dc41e17e365615fda4507fa9f7267ca0, which was\nmade originally for b/67990472.\n\nBug: 69110957\n"
    },
    {
      "commit": "77a5b891eb2c64246c82d695aac40c5312f0ff3e",
      "tree": "e7c2808f80dcec08207877e063a9940ef454148f",
      "parents": [
        "fcbaadcd32ebee76ade68d8ed865f3a3190527b1"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 15:38:24 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 16 23:53:36 2017 +0000"
      },
      "message": "Revert \"Allow empty IOmxStore implementation\"\n\nThis reverts commit fcbaadcd32ebee76ade68d8ed865f3a3190527b1, which was\nmade originally for b/68491141.\n\nBug: 69110957\n"
    },
    {
      "commit": "5a9d64a6bd9651dca789773156b369233ee750a0",
      "tree": "bbfcbd2f085f3570b123e4751999465ed1d2d181",
      "parents": [
        "68f1d2842541f043ca318b01690a7cdb41b1df78"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Nov 16 15:50:10 2017 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Nov 16 15:50:10 2017 -0800"
      },
      "message": "NDK: add more owners for AImage/AImageReader\n\nChange-Id: If9749aec4cb4c21f66b44c0e072c370e1191087a\n"
    },
    {
      "commit": "c275189ccbfe8ca29437a24256195c61de2f2a6d",
      "tree": "3bb9b7e28c39c1e77b236235b8dabcd692be5526",
      "parents": [
        "602417cd10c569783c2cc32bb7c13b1e02d9645e",
        "4199198abdbf64afb4f55691144d12aa0fa68624"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 21:00:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 16 21:00:10 2017 +0000"
      },
      "message": "Merge \"NDK: fix undefined behavior\""
    },
    {
      "commit": "4199198abdbf64afb4f55691144d12aa0fa68624",
      "tree": "d3e8990c98827130980daa5cc5745e0adba76622",
      "parents": [
        "68f1d2842541f043ca318b01690a7cdb41b1df78"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Nov 15 15:53:18 2017 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Nov 16 12:49:22 2017 -0800"
      },
      "message": "NDK: fix undefined behavior\n\nFix a problem where we unlock a mutex after it\u0027s freed.\nAlso freeing a locked mutex can lead to undefined behavior\n\nTest: run all camera2 NDK CTS tests\nChange-Id: Ib56e9c4908e9bfdc06a936a6b7cfd90fbc948006\n"
    },
    {
      "commit": "602417cd10c569783c2cc32bb7c13b1e02d9645e",
      "tree": "f722f2e2c33fd9104f8abc591d8062892a90092b",
      "parents": [
        "e0ce8445a111156fcbf8cb77f928a38d0abc8ac3",
        "db5b6cb6c35a69d236fcd62dcb41c8a4682fa295"
      ],
      "author": {
        "name": "Tomoharu Kasahara",
        "email": "tomoharu.kasahara@sonymobile.com",
        "time": "Thu Nov 16 20:28:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 16 20:28:12 2017 +0000"
      },
      "message": "Merge \"Support Ireland specific supervisory tone\" am: 289cce6034 am: 899b78c12b\nam: db5b6cb6c3\n\nChange-Id: I7308f696e575344a9a8d887d63b765942905ef78\n"
    },
    {
      "commit": "21da647792c0b78ab3943be0f32066015d5e8c34",
      "tree": "15ad0b64bf6eaabf24223d7fd376ef9ac00eb9cc",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 09 16:29:26 2017 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 16 11:33:12 2017 -0800"
      },
      "message": "refactor AudioTrack and AudioFlinger createTrack()\n\nRefactor the mechanism used by audio tracks to query and attach\nto an output mixer/stream in audio flinger. This will:\n- reduce the number of binder transactions needed to create a track\n- move sample rate, framecount and flags validations to audio server\nside\n- move audio session allocation to audio server side\n- prepare restriction of certain binder transactions to audioserver only\n\nTest: CTS tests for AudioTrack\n\nChange-Id: If4369aad6c080a56c0b42fbfcc97c8ade17a7439\n"
    },
    {
      "commit": "db5b6cb6c35a69d236fcd62dcb41c8a4682fa295",
      "tree": "f96c14ac19e0e0a256f35c42a4b7436a3f239efe",
      "parents": [
        "798d981e3e5cf021debe60d848f56de5980589d5",
        "899b78c12b25fa381b1d6c90330ce45f758ef28d"
      ],
      "author": {
        "name": "Tomoharu Kasahara",
        "email": "tomoharu.kasahara@sonymobile.com",
        "time": "Thu Nov 16 19:12:36 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 16 19:12:36 2017 +0000"
      },
      "message": "Merge \"Support Ireland specific supervisory tone\" am: 289cce6034\nam: 899b78c12b\n\nChange-Id: I443b6e1960e6756d36f45e8d3328c7b828de9f24\n"
    },
    {
      "commit": "899b78c12b25fa381b1d6c90330ce45f758ef28d",
      "tree": "32ca133d8b81f781b8cc298375f421ed43568814",
      "parents": [
        "4593b04bdad2ae66b22c5d3fb78276b523b7e942",
        "289cce603494363f9d0f6d42b16289b632205f77"
      ],
      "author": {
        "name": "Tomoharu Kasahara",
        "email": "tomoharu.kasahara@sonymobile.com",
        "time": "Thu Nov 16 18:58:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 16 18:58:38 2017 +0000"
      },
      "message": "Merge \"Support Ireland specific supervisory tone\"\nam: 289cce6034\n\nChange-Id: I857c315649c27d6424ff97775aab813d330f5aaa\n"
    },
    {
      "commit": "289cce603494363f9d0f6d42b16289b632205f77",
      "tree": "2c18e7a2faaad9c450fbb76d7f6de78798138803",
      "parents": [
        "2eb29c0d79d88be7dcf2ce7092773d246a8abe6a",
        "599ca05559f93c608f00f2ad13846bf27ba82648"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 18:50:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 16 18:50:06 2017 +0000"
      },
      "message": "Merge \"Support Ireland specific supervisory tone\""
    },
    {
      "commit": "e0ce8445a111156fcbf8cb77f928a38d0abc8ac3",
      "tree": "4ea405e9db24b766b562467cfa379089ab742699",
      "parents": [
        "7c66f8e5b4347d7597c2ecba9a3c391ff8c81660",
        "c899fc0738e738fe8bce5c1949cdc93da27c44de"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 18:49:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 16 18:49:25 2017 +0000"
      },
      "message": "Merge \"GenericSource: perform seekTo on own looper\""
    },
    {
      "commit": "7c66f8e5b4347d7597c2ecba9a3c391ff8c81660",
      "tree": "aa3bee3d57432ddc4f730105d25a96e3631ed2b0",
      "parents": [
        "cb6124dcef528f0bfc88e305b98897dcddad0029",
        "00a21a30f0b8e13a4c5f5f22efd13cc7abf28179"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 18:39:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 16 18:39:33 2017 +0000"
      },
      "message": "Merge changes I7b191974,Ic048423f\n\n* changes:\n  audioserver: Increase hwbinder thread pool size\n  Revert \"audioserver: enable HIDL callbacks\"\n"
    },
    {
      "commit": "cb6124dcef528f0bfc88e305b98897dcddad0029",
      "tree": "4dc1b72867f471f7fd10edb3788b444374cbdec9",
      "parents": [
        "fec90a73a8ef23e07d6d4fa147e738a43d8307b4",
        "7f16ea4d1f6554f653babd0a63b7e97ce1061826"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 18:34:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 16 18:34:29 2017 +0000"
      },
      "message": "Merge \"libaudiohal: Use \u0027exit\u0027 in HalDeathHandler instead of fatal log\""
    },
    {
      "commit": "fec90a73a8ef23e07d6d4fa147e738a43d8307b4",
      "tree": "56acbf8e6248f23b8414acf587cb027a5449b08d",
      "parents": [
        "45145a39251970da167ff6cd31817673820fc134",
        "f80ecbca6e50d5c615e66328dc06cef94c0a368c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 16 18:29:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 16 18:29:53 2017 +0000"
      },
      "message": "Merge \"Camera2: Update NDK reference docs to latest\""
    },
    {
      "commit": "ebe144c6709aeb1a09ca2223f7f9c0acb4f9f22d",
      "tree": "4c6dc161fc735dc407e969761c07b21a6c209db5",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 09:38:18 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 09:43:05 2017 -0800"
      },
      "message": "libaudiohal: Add optional \"msd\" devices factory\n\nAdding code that attempts to get an instance of \"msd\" devices\nfactory. The factory isn\u0027t yet used, but having the code in place\nensures that we would know about any changes in HIDL services\ndiscovery protocol.\n\nBug: 63901775\nTest: audioserver starts even if \"msd\" HAL service is absent\nChange-Id: Ia897127ba383fc05d139b633717992a5d5a4f920\n"
    },
    {
      "commit": "00a21a30f0b8e13a4c5f5f22efd13cc7abf28179",
      "tree": "30d10593ee113748979bc803c5117c55131b67dd",
      "parents": [
        "bf1c3e0ae1ae1ea015957b7b73362326f8a4a1d4"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 08:57:44 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 09:00:34 2017 -0800"
      },
      "message": "audioserver: Increase hwbinder thread pool size\n\nUse 4 threads instead of default 1, since audioserver\nserves many clients.\n\nBug: 67203473\nTest: audio still works\nChange-Id: I7b191974f1a912fd8adf0096c3a1abf33a3d12fa\n"
    },
    {
      "commit": "bf1c3e0ae1ae1ea015957b7b73362326f8a4a1d4",
      "tree": "c384d18b5bb8f039d68fcbc1d395fc4c01c9989f",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 08:40:51 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 09:00:22 2017 -0800"
      },
      "message": "Revert \"audioserver: enable HIDL callbacks\"\n\nThis reverts commit e2afa1eba5cdeaf4ca0c9f4613a1f2c0231bd86d.\n\nBug: 31748996\nBug: 67203473\nTest: build\nChange-Id: Ic048423ffa186ed0249a005180a08626bc30b5f2\n"
    },
    {
      "commit": "7f16ea4d1f6554f653babd0a63b7e97ce1061826",
      "tree": "df8f17772ce517fda38d1120e849effc463e0d9e",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 08:29:49 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Nov 16 08:31:52 2017 -0800"
      },
      "message": "libaudiohal: Use \u0027exit\u0027 in HalDeathHandler instead of fatal log\n\nFatal log is registered as a process crash. Since these crash\nreports do not bring in any useful info, it\u0027s better to just\nexit the process instead.\n\nBug: 69379459\nTest: kill audio HAL, check logcat\nChange-Id: I0d83d496998248faf3669a1fe8c31944b839bb3e\n"
    },
    {
      "commit": "45145a39251970da167ff6cd31817673820fc134",
      "tree": "54e3fe5dc79b0de1a5133c60d8e9ea7b660fae48",
      "parents": [
        "8f35d0b4f06cc32b760df2c012269a6546e08a31"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 15 16:21:07 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 15 20:15:03 2017 -0800"
      },
      "message": "Codec2: finalize C2 status constants\n\nBug: 64121714\nTest: unittest\nChange-Id: Id229f49e1db85751f9e4f28b5a4c0a7d15358e28\n"
    },
    {
      "commit": "c899fc0738e738fe8bce5c1949cdc93da27c44de",
      "tree": "927ed9be1f3851932476e23d3fcfc8753db8156b",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Nov 15 17:28:53 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Nov 15 18:04:29 2017 -0800"
      },
      "message": "GenericSource: perform seekTo on own looper\n\nTest: pass Media continuous CTS tests\nBug: 69328257\nBug: 66952371\nChange-Id: Ia02abbf7a19a01cb6d6051ef9f2461679852dd56\n"
    },
    {
      "commit": "f80ecbca6e50d5c615e66328dc06cef94c0a368c",
      "tree": "b09babace972d2b896782eec1719ec5e594f2bcb",
      "parents": [
        "97e8b37f946c024d9cad312fd7f1a30f56cb3302"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Nov 10 15:53:31 2017 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 15 13:03:01 2017 -0800"
      },
      "message": "Camera2: Update NDK reference docs to latest\n\nIncludes only minor formatting/wording tweaks from merging\ntogether the SDK and NDK metadata definitions.\n\nBug: 29102963\nBug: 33262893\nTest: Build and manual inspection of generated docs diff\nChange-Id: Ie43e692cee5e6e7dc8de68c4191a9140bcc0025b\n"
    },
    {
      "commit": "8f35d0b4f06cc32b760df2c012269a6546e08a31",
      "tree": "fc7beb2091aa293f26ec430e555c5ddf287dcc34",
      "parents": [
        "6db04c2decafd1c3ee50d6c51d582c2c48d7a361",
        "07405ee8c22bf9184de5a4ea15e683f45b20bd89"
      ],
      "author": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Wed Nov 15 19:36:43 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 19:36:43 2017 +0000"
      },
      "message": "Merge \"ServiceStateEvents don\u0027t need to called with the mServiceState lock anymore.\""
    },
    {
      "commit": "6db04c2decafd1c3ee50d6c51d582c2c48d7a361",
      "tree": "8ca016b391648d05677d09ba1983abdba42d8036",
      "parents": [
        "3e27b9e5e25e2f1bd51b2cb32995adb430fd3ef1",
        "e5db6dbc501685205c8fdbaf883e10ecf4475b52"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 15 18:05:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 18:05:40 2017 +0000"
      },
      "message": "Merge \"Avoid UAF in media metrics service\""
    },
    {
      "commit": "3e27b9e5e25e2f1bd51b2cb32995adb430fd3ef1",
      "tree": "c387208b3a71a7fcc7beecc8dcc831bddafa4a33",
      "parents": [
        "6172a83d8c29feaffb295b74a52e12bed1717403",
        "2e1295104eaf1282813aad815cd11b868a4c717f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 15 06:42:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 06:42:29 2017 +0000"
      },
      "message": "Merge \"Codec2: make C2Status into an enumeration\""
    },
    {
      "commit": "6172a83d8c29feaffb295b74a52e12bed1717403",
      "tree": "08264d2e80a072bebbabf092d567f46952dfe93c",
      "parents": [
        "cce43761a289ce8ad39fe89005a3a17b157be5bb",
        "8da62466e24156861eca9a903665eae11f2bf30b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 15 04:51:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 04:51:32 2017 +0000"
      },
      "message": "Merge \"Fix downcast that was using reinterpret_cast instead of static_cast\""
    },
    {
      "commit": "07405ee8c22bf9184de5a4ea15e683f45b20bd89",
      "tree": "e651d7d77526e7f15c94fc4d0d2b2d694621a806",
      "parents": [
        "7db8b99d00f2399faba9de2f8b2c13b05d10aec5"
      ],
      "author": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Nov 14 20:45:27 2017 -0800"
      },
      "committer": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Nov 14 20:47:51 2017 -0800"
      },
      "message": "ServiceStateEvents don\u0027t need to called with the mServiceState lock anymore.\n\nTest: On taimen with sound trigger test app.\nChange-Id: I2520ba9fa7d3736ea04df1abe6229ad973932768\n"
    },
    {
      "commit": "2e1295104eaf1282813aad815cd11b868a4c717f",
      "tree": "10cb0bb775738d9fb3bbbaf10a52b5f05c913602",
      "parents": [
        "cce43761a289ce8ad39fe89005a3a17b157be5bb"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 14 20:20:55 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 14 20:39:15 2017 -0800"
      },
      "message": "Codec2: make C2Status into an enumeration\n\nThis is to distinguish it from android::status_t and to avoid implicit\nconversions.\n\nAs part of this change move status_t return values to C2Status, rename\nthe old C2Error to the new C2Status name to better reflect its purpose.\n\nKept block::error() method names as those are to be used to\ncheck for any errors after an implicit bool cast, e.g. if (view.error)...\n\nBug: 64121714\nTest: unittest\nChange-Id: I09d8e28cf63cdd9d0ac9fd29a8da502b89c52f81\n"
    },
    {
      "commit": "cce43761a289ce8ad39fe89005a3a17b157be5bb",
      "tree": "b439dee420e7372f5bd649714d12bea77741b9b7",
      "parents": [
        "6776e7171890862548b525d2cfe63d878e599727",
        "d274089ace75b61f3adc0017d68fa7968a0e6239"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 15 04:31:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 04:31:05 2017 +0000"
      },
      "message": "Merge \"Codec2: Combine C2ParamField and C2FieldSupportedValues\""
    },
    {
      "commit": "6776e7171890862548b525d2cfe63d878e599727",
      "tree": "dcc17bf6a58d0064bc41e499899cb93a021e549c",
      "parents": [
        "89c1f81939ddabc656c686431bc551ee825d6269",
        "fcbaadcd32ebee76ade68d8ed865f3a3190527b1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 15 01:43:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 01:43:21 2017 +0000"
      },
      "message": "Merge \"Allow empty IOmxStore implementation\""
    },
    {
      "commit": "d274089ace75b61f3adc0017d68fa7968a0e6239",
      "tree": "c145c14e806c868f3d566929dcdeaa991d152d5b",
      "parents": [
        "68f1d2842541f043ca318b01690a7cdb41b1df78"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 14 11:11:51 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 14 17:08:38 2017 -0800"
      },
      "message": "Codec2: Combine C2ParamField and C2FieldSupportedValues\n\nIn many constructs these go together. Create a new combined\nstructure. Also create a specific structure for querying supported\nvalues as we can avoid the unique_ptr and unnecessary allocations\nin that case.\n\nAlso fix some minor bugs in C2AvcSoftDec.\n\nBug: 64121714\nTest: unittest\nChange-Id: I59da175329c11269dc0c28dc03475701cda2118d\n"
    },
    {
      "commit": "89c1f81939ddabc656c686431bc551ee825d6269",
      "tree": "cef4ea60750b20629d21f3c3f33789acc8aaf12e",
      "parents": [
        "7db8b99d00f2399faba9de2f8b2c13b05d10aec5",
        "798d981e3e5cf021debe60d848f56de5980589d5"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Nov 15 00:53:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 15 00:53:54 2017 +0000"
      },
      "message": "Merge remote-tracking branch \u0027goog/stage-aosp-master\u0027 into HEAD\nam: 798d981e3e\n\nChange-Id: I87e25dc50f1b4e9115cb94b258cfb18c0e64b032\n"
    },
    {
      "commit": "798d981e3e5cf021debe60d848f56de5980589d5",
      "tree": "8850fc3a6f1129f2409dbcbed19f2c1112b84855",
      "parents": [
        "dc06020a3da34fee22b39c70512ef498e392fdad",
        "4593b04bdad2ae66b22c5d3fb78276b523b7e942"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Nov 14 16:43:55 2017 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Nov 14 16:43:55 2017 -0800"
      },
      "message": "Merge remote-tracking branch \u0027goog/stage-aosp-master\u0027 into HEAD\n\nChange-Id: I653c38ec8c7f441d3371f5bccb53b531f376c0d3\n"
    },
    {
      "commit": "7db8b99d00f2399faba9de2f8b2c13b05d10aec5",
      "tree": "cef4ea60750b20629d21f3c3f33789acc8aaf12e",
      "parents": [
        "68f1d2842541f043ca318b01690a7cdb41b1df78"
      ],
      "author": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Tue Nov 14 13:26:54 2017 -0800"
      },
      "committer": {
        "name": "Hongwei Wang",
        "email": "hwwang@google.com",
        "time": "Tue Nov 14 14:18:59 2017 -0800"
      },
      "message": "Adds AUDIO_DEVICE_IN_FM_TUNER/_BUS to virtual input device list\n\nBug: 69311798\nTest: m -j\nChange-Id: I4e7de370c61be48b8dcfd178bbc47d7ce68fe107\n"
    },
    {
      "commit": "68f1d2842541f043ca318b01690a7cdb41b1df78",
      "tree": "1f9ff368cbfa15e7da447b66322b23a3289e7446",
      "parents": [
        "a4fa4760fa417473324e009b3f4117a2d539c486",
        "0d98c1809f2f763be0b68ffb1daff916d5ed0bb2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 14 21:10:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 14 21:10:24 2017 +0000"
      },
      "message": "Merge \"Improve tracking of \u0027playing time\u0027 metrics\""
    },
    {
      "commit": "a4fa4760fa417473324e009b3f4117a2d539c486",
      "tree": "870d16b28c38f0421004eb67ab699b5cd107d771",
      "parents": [
        "81fb7fd7059070125657affd9fe919e70612c93c",
        "40ead60d7163c2d5577099d49f11da7afa6124d1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 14 14:08:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 14 14:08:45 2017 +0000"
      },
      "message": "Merge \"Add support for dynamic shared output surfaces\""
    },
    {
      "commit": "81fb7fd7059070125657affd9fe919e70612c93c",
      "tree": "ea82329bfa3b9d58232898dceb2158d7feb87b0c",
      "parents": [
        "955e50fae198b0a56832061285695b726fe63e16",
        "9bb3803a80a680ea7a3bc11e07b8a89ccddee003"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Nov 14 00:55:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 14 00:55:45 2017 +0000"
      },
      "message": "Merge \"BufferingSettings: simplify buffering control.\""
    },
    {
      "commit": "955e50fae198b0a56832061285695b726fe63e16",
      "tree": "242ab209476ae2ffdd1ead201db053b8fc3858b9",
      "parents": [
        "201db12eb73c6e056e592ee87fd47621dbe6d30e",
        "c990152585f6b654ffe7e1dbff483d4ecddc019b"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 14 00:21:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 14 00:21:51 2017 +0000"
      },
      "message": "Merge \"Check for valid format before match in AudioPolicyManager::selectOutput\""
    },
    {
      "commit": "c990152585f6b654ffe7e1dbff483d4ecddc019b",
      "tree": "0e64a122e3f6e0188d49e6ec3be64f17a57fbc52",
      "parents": [
        "97e8b37f946c024d9cad312fd7f1a30f56cb3302"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Nov 10 20:07:54 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Nov 13 14:37:58 2017 -0800"
      },
      "message": "Check for valid format before match in AudioPolicyManager::selectOutput\n\nTest: MediaPlayerTest#testConcurentPlayAudio\nBug: 69054370\nChange-Id: I11763187d4e7b69f8b242547d1e9e27afe6223be\n"
    },
    {
      "commit": "201db12eb73c6e056e592ee87fd47621dbe6d30e",
      "tree": "3f95ed3961c2b29b247bd960d26797b8d56a2deb",
      "parents": [
        "609babb1b22abc585dd0b6451883e95fab06d9ca",
        "dc06020a3da34fee22b39c70512ef498e392fdad"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Nov 13 20:18:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 13 20:18:06 2017 +0000"
      },
      "message": "Merge \"Always set sys.usb.ffs.mtp.ready during configure\" am: 2eb29c0d79 am: ea8dd2c787\nam: dc06020a3d\n\nChange-Id: Iff0e25d5eced8e7963536bf127a869ec52e419c8\n"
    },
    {
      "commit": "609babb1b22abc585dd0b6451883e95fab06d9ca",
      "tree": "b053b5f15ee7d89f83af92441c8146c61e555897",
      "parents": [
        "63ca96305e389e4504ab8d89111dc8719d00161f",
        "9c59bc9c37dab612c9d8fda98970c317da1963a3"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Nov 13 20:17:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 13 20:17:12 2017 +0000"
      },
      "message": "resolve merge conflicts of 5c4fbd2817 to oc-mr1-dev-plus-aosp\nam: 9c59bc9c37\n\nChange-Id: I2674d0e4b49082d9d068575ce1c5e7b53a5ea01e\n"
    },
    {
      "commit": "9bb3803a80a680ea7a3bc11e07b8a89ccddee003",
      "tree": "1ad46a98f44bd2c487678c05825c374cca92b338",
      "parents": [
        "63ca96305e389e4504ab8d89111dc8719d00161f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Mar 23 18:00:38 2017 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sun Nov 12 14:32:02 2017 -0800"
      },
      "message": "BufferingSettings: simplify buffering control.\n\nNow only 2 marks, initialMarkMs and resumPlaybackMarkMs, remain.\nTest: pass cts tests\nBug: 36280094\nChange-Id: I03c8e2a0db9f7e845f57e76f51874cd8715a48d4\n"
    },
    {
      "commit": "63ca96305e389e4504ab8d89111dc8719d00161f",
      "tree": "5319da10bf23b0aad8dfacd6453b4c3b14a35eaf",
      "parents": [
        "10610c9b7e36db93004284bf044301ac0dce4bf2",
        "b5f749e1f68a6cc38a62ab1717836891f85816f4"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat Nov 11 21:07:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 11 21:07:39 2017 +0000"
      },
      "message": "Merge \"Codec2: clean up base vs. baseIndex confusion\""
    },
    {
      "commit": "fcbaadcd32ebee76ade68d8ed865f3a3190527b1",
      "tree": "0563736ddf01a54c4b59742fcda0fa72d996d388",
      "parents": [
        "97e8b37f946c024d9cad312fd7f1a30f56cb3302"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Thu Nov 09 18:17:33 2017 -0800"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Sat Nov 11 07:24:28 2017 -0800"
      },
      "message": "Allow empty IOmxStore implementation\n\nTest: make cts -j123 \u0026\u0026 cts-tradefed run cts-dev -m \\\nCtsMediaTestCases --compatibility:module-arg \\\nCtsMediaTestCases:include-annotation:\\\nandroid.platform.test.annotations.RequiresDevice\n\nBug: 68491141\nChange-Id: I563c036c00fea96bef73f00edc467b16c1663eed\n"
    },
    {
      "commit": "8da62466e24156861eca9a903665eae11f2bf30b",
      "tree": "a146fefb919dffa1d462b81531bcbfe4bb00e2a6",
      "parents": [
        "4311dcd79aba460ba26fba11a03b43b8d3818281"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Nov 09 22:07:59 2017 -0800"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri Nov 10 23:02:41 2017 -0800"
      },
      "message": "Fix downcast that was using reinterpret_cast instead of static_cast\n\nTest: compile\nBug: 68099072\nChange-Id: Ic44941862672f4baaf0743f1df1375444d4226a2\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "10610c9b7e36db93004284bf044301ac0dce4bf2",
      "tree": "a9134a845c782b29806d5b125186d45bd842a806",
      "parents": [
        "4201c1c4fd0287e95d4b7cac34d9d0d44ea32737",
        "e5138f10ca712365a917894ef381b9216d95ca14"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 11 04:03:42 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 11 04:03:42 2017 +0000"
      },
      "message": "Merge \"Camera: keep camera device alive during dump\""
    },
    {
      "commit": "e5db6dbc501685205c8fdbaf883e10ecf4475b52",
      "tree": "eab21b0091fa35203b63b9056fe876d51def0acf",
      "parents": [
        "dd97f52b3969ee8d6fb611e045ada26037e44e27"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Nov 10 15:54:32 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Nov 10 15:54:32 2017 -0800"
      },
      "message": "Avoid UAF in media metrics service\n\nRe-arranged several potential UAF accesses in the handling of saved\nmedia.metrics items. Also avoids possible \u0027save and immediately\ndelete\u0027 behavior in certain queue situations.\n\nBug: 69002257\nTest: watched dumpsys media.metrics\nChange-Id: I8ab056f14d845aa27f3e65a77bc6c7dbfac24e4f\n"
    },
    {
      "commit": "4593b04bdad2ae66b22c5d3fb78276b523b7e942",
      "tree": "d855fc3d7505c608fc720474d2af565feb131738",
      "parents": [
        "ea8dd2c787f88e7289ffb8f226237587f95d8a93",
        "79edadcea74151b573d5b973d5a421baee693ec1"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Nov 10 15:29:40 2017 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Nov 10 15:33:45 2017 -0800"
      },
      "message": "Merge commit \u002779edadcea74151b573d5b973d5a421baee693ec1\u0027 from\noc-mr1-dev-plus-aosp into stage-aosp-master\n\nChange-Id: I04234f284e3117e8343e7c888646400c81f5a131\nMerged-In: Icf228c701afe37dd3c7f00ea9e6fb740b0d450f1\n"
    },
    {
      "commit": "e5138f10ca712365a917894ef381b9216d95ca14",
      "tree": "de80fad0936dc9ffa0cc23110e2a672e3697f068",
      "parents": [
        "e2ded2133ae4c8afc712bf7e82dde6ecd5bd110c"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Nov 10 14:10:05 2017 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Nov 10 14:10:05 2017 -0800"
      },
      "message": "Camera: keep camera device alive during dump\n\nBug: 37868600\nChange-Id: I143228b322ef4d0bce470bbd6c5fb562626b183b\n"
    },
    {
      "commit": "dc06020a3da34fee22b39c70512ef498e392fdad",
      "tree": "8850fc3a6f1129f2409dbcbed19f2c1112b84855",
      "parents": [
        "9c59bc9c37dab612c9d8fda98970c317da1963a3",
        "ea8dd2c787f88e7289ffb8f226237587f95d8a93"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Fri Nov 10 22:05:40 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Nov 10 22:05:40 2017 +0000"
      },
      "message": "Merge \"Always set sys.usb.ffs.mtp.ready during configure\" am: 2eb29c0d79\nam: ea8dd2c787\n\nChange-Id: Ied6c3c941931f52a58a4b10767b17d278dba2316\n"
    },
    {
      "commit": "ea8dd2c787f88e7289ffb8f226237587f95d8a93",
      "tree": "f9f2e975c8fbd79968f06f42282e1092b1daf2f2",
      "parents": [
        "5c4fbd2817a491fcf2c61f34333476dbf875cfca",
        "2eb29c0d79d88be7dcf2ce7092773d246a8abe6a"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Fri Nov 10 22:03:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Nov 10 22:03:32 2017 +0000"
      },
      "message": "Merge \"Always set sys.usb.ffs.mtp.ready during configure\"\nam: 2eb29c0d79\n\nChange-Id: I890e74316a04fee3e74f90b6e640e0b527c8a57d\n"
    },
    {
      "commit": "2eb29c0d79d88be7dcf2ce7092773d246a8abe6a",
      "tree": "f9f2e975c8fbd79968f06f42282e1092b1daf2f2",
      "parents": [
        "2a18bd96f64285bc615c3db5355142a83eb2a165",
        "fbc8b0683630a0f14dda04f71da7df9a5f13821f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 10 21:56:43 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 10 21:56:43 2017 +0000"
      },
      "message": "Merge \"Always set sys.usb.ffs.mtp.ready during configure\""
    },
    {
      "commit": "4201c1c4fd0287e95d4b7cac34d9d0d44ea32737",
      "tree": "59507ed1dace9a3586e88b5a6af2e2a77b54c25f",
      "parents": [
        "4311dcd79aba460ba26fba11a03b43b8d3818281",
        "67744bd64a12d95f30925724f490074e63f81d7e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 10 21:17:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 10 21:17:34 2017 +0000"
      },
      "message": "Merge \"GenericSource: release mLock when operation might take long time.\""
    },
    {
      "commit": "67744bd64a12d95f30925724f490074e63f81d7e",
      "tree": "e6a29a8896509cca9aa2920a01dd98d304b4df31",
      "parents": [
        "dd97f52b3969ee8d6fb611e045ada26037e44e27"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Nov 10 11:27:04 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Nov 10 11:27:04 2017 -0800"
      },
      "message": "GenericSource: release mLock when operation might take long time.\n\nThis allows disconnect() to be done quickly in order to not block\nreset() in mediaplayer.\nTest: pass android.media.cts.MediaPlayerFlakyNetworkTest\nBug: 68954085\n\nChange-Id: I3ebfef66098066f2169d9946c417fe530cc1fa1b\n"
    },
    {
      "commit": "fbc8b0683630a0f14dda04f71da7df9a5f13821f",
      "tree": "6fc30b433297fc31a863d01508ff03f1d80953ef",
      "parents": [
        "8aa2c307cba938b20129d52dab5da5c568dd1219"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Oct 23 12:03:40 2017 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Fri Nov 10 10:59:41 2017 -0800"
      },
      "message": "Always set sys.usb.ffs.mtp.ready during configure\n\nSometimes, due to a race, the configure\nwill fail even though descriptors are actually\nwritten because MtpServer did not die properly.\nMtpServer lifetime is fixed properly in master\nwith multiplexed io, but to work around the\nissue here, we set the property at all times.\n\nAlso reduce the timeout to leave room for\nUsbDeviceManager.\n\nBug: 67844294\nTest: Plug/replug device on sled with usb debugging off x50\nTest: Verify that the race is hit, but projection still starts\nTest: Verify that all other usb configurations still work\nChange-Id: I39dd4d3db95e087f065d58ba80ca980559920c99\n"
    },
    {
      "commit": "9c59bc9c37dab612c9d8fda98970c317da1963a3",
      "tree": "697df673a323e129c53aeb78a271d7a3423a1889",
      "parents": [
        "6faf7f3111d1bdb26967049075dfff7ab0b70d0d",
        "5c4fbd2817a491fcf2c61f34333476dbf875cfca"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Nov 09 13:52:18 2017 -0800"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Nov 10 07:45:58 2017 +0000"
      },
      "message": "resolve merge conflicts of 5c4fbd2817 to oc-mr1-dev-plus-aosp\n\nTest: I solemnly swear I tested this conflict resolution.\nExempt-From-Owner-Approval: simple merge conflicts\nChange-Id: I32cd6ce0eca9b74b20554f20bcf410d76612c47a\n"
    },
    {
      "commit": "b5f749e1f68a6cc38a62ab1717836891f85816f4",
      "tree": "668ebe1922a3357b59be5612a9273f1b2535a897",
      "parents": [
        "4311dcd79aba460ba26fba11a03b43b8d3818281"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 09 18:56:06 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 09 19:43:11 2017 -0800"
      },
      "message": "Codec2: clean up base vs. baseIndex confusion\n\n- rename baseIndex to coreIndex\n- define ParamIndex\n- change names of macros defining base structs from \u0027_NO_BASE\u0027 to\n  \u0027BASE\u0027\n- fix creating flexible params from base structs and add unit tests\n  to verify\n\nBug: 64121714\nTest: unittest\nChange-Id: I95c237a4328e5313604588b695e2fd117001dda3\n"
    },
    {
      "commit": "4311dcd79aba460ba26fba11a03b43b8d3818281",
      "tree": "d8e9a0b27603edd0402baf269cda54ac26f1bdad",
      "parents": [
        "97e8b37f946c024d9cad312fd7f1a30f56cb3302"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 09 19:01:50 2017 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 09 19:15:00 2017 -0800"
      },
      "message": "Codec2: remove some unused code\n\nMyReflector code is copied into MyComponentInstance.\n\nC2TypedFieldSupportedValues was meant as a helper class that should not be\npart of C2Param.h. It will be reworked to reuse C2FieldSupportedValues to\navoid having to copy to-from the Codec2 struct.\n\nBug: 64121714\nTest: build\nChange-Id: Ibb6fb87f69470b721fe7bd1871c4f2400411b6b9\n"
    }
  ],
  "next": "0d98c1809f2f763be0b68ffb1daff916d5ed0bb2"
}
