)]}'
{
  "log": [
    {
      "commit": "80e7e68dbf734da1c387152f1757aa70e88ddf5a",
      "tree": "bd7a2d12878881c57ff715393a49a8dfdbad1110",
      "parents": [
        "42ab59fcd8b54ef206ea4bdcd1299cce11bac355",
        "dd36008b782ec1da0ded327dc51292d102c690d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:00:07 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:00:07 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538\nam: dd36008b78\n\nChange-Id: Icd196218ebeaa40b2463b1a35eb2cb9e27d76b0c\n"
    },
    {
      "commit": "dd36008b782ec1da0ded327dc51292d102c690d4",
      "tree": "62688bd7c8ba2a2e0f770cd8fb7550293abbe5c8",
      "parents": [
        "024216f32b482c9a9609263f9c1711fc08f86087",
        "ccd8680538d3bc3b3c0ef201b3511ee065eca12f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 00:56:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 00:56:06 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1\nam: ccd8680538\n\nChange-Id: I0af69333bcb67ef6534175ce986fc05e5a26ffa6\n"
    },
    {
      "commit": "6ac42ebf890ce99b401e1962db8ceecfb38b7a65",
      "tree": "4492d55993c5277b46332bc26c390e9eec819537",
      "parents": [
        "4a907a1760ee9ee3ab603f064cfe24a2cb32ec82",
        "cb4dae216758d9e9a28050f65097f1ce905c03e9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 20:42:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 20:42:51 2017 +0000"
      },
      "message": "Merge \"aaudio: indicate client UID and PID to audio flinger\" into oc-dr1-dev"
    },
    {
      "commit": "cb4dae216758d9e9a28050f65097f1ce905c03e9",
      "tree": "4c3c49679384d70006675e9e06c7e8e8117e206c",
      "parents": [
        "0acb3209107802e2ab116f8374aab886579729bb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 01 19:39:32 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 12 12:17:33 2017 -0700"
      },
      "message": "aaudio: indicate client UID and PID to audio flinger\n\nImplement correct indication of client UID and PID to audio flinger\nfor AAudio MMAP streams in both exclusive mode and shared mode.\n- Add start/stop client methods on MMAP streams used only when the MMAP\nstream is in AAudio service and carries a mix of shared streams.\n- Add \"In Service\u0027\" indication from \"client\" side to AAudioServiceStreamMMAP\nso that the behavior can be adapted accordingly.\n- Modify logic on audio flinger side with regard to mmap tracks and\naudio HAL stream activity:\n  - use same audio session for all clients on a same stream to match\n  audio policy logic to share same direct output stream for clients on same\n  session. This is also more consistent with current volume and effect\n  handling as all MMAP  clients sharing the same output stream have the\n  same volume and use case.\n  - start/stop the HAL when the stream is started/stopped with the initial client\n  handle (returned when the stream is opened) but do not create a track.\n  AAudioService implementation will always send an additional start command before\n  first client starts and a stop command after last client stops,\n  in both shared and exclusive mode.\n  - start/stop a track only if the start/stop stream command is received\n  with a handle different from the initial handle.\n- Allow more than one active client from the same UID on a MMAP input in audio policy.\n\nBug: 62950008\nTest: verify playback and capture in mmap mode\nMerged-In: I86151bbb637ff172d2fd5f813056eab13a7bcd3c\nChange-Id: I86151bbb637ff172d2fd5f813056eab13a7bcd3c\n"
    },
    {
      "commit": "aa165e5358403341aaca87bd7bedc39e425ea6b6",
      "tree": "c09eec55161beaca6b4838d7d398157c9cc19bc8",
      "parents": [
        "ed0f8f425d90254590bf49e2b6e2fe77be679701"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 10:39:16 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 10:39:16 2017 -0700"
      },
      "message": "audioflinger: Fix missing \u0027return\u0027 statement in \u0027getParameters\u0027\n\nWithout a \u0027return\u0027, the code attempts to call a method on\na null thread instance.\n\nBug: 62918718\nTest: doesn\u0027t crash when bogus audio_io_handle passed to \u0027getParameters\u0027\nChange-Id: I356dfd9531e0de41d869b8e29909dee5843dc795\n"
    },
    {
      "commit": "c7ab309ecbb289cd1296430f724166a26bd45afe",
      "tree": "499766fbb5598e74f874966bfad6a56bea4e8e0b",
      "parents": [
        "25c4535f04eb2229eca4dfa0da04b13c004f3446"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 15 18:43:46 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 11 02:11:00 2017 +0000"
      },
      "message": "audio effects: filter reserved effect commands\n\nBlock effect commands reserved for framework use when\nreceived on server side IAudioEffect. Applications have no reason\nto use these commands and they present a unnecessary attack surface.\n\nBug: 62019992\nTest: run CTS tests for audio effects\nChange-Id: Ie680d5d5650f99dbabf93891703e1cde2c2e852d\n"
    },
    {
      "commit": "2ac7694396640821f6723672e25b2372220bf060",
      "tree": "0cd5a8c58898fcb145f4b879ea64aeb260266ce2",
      "parents": [
        "ffd80b92df8521dd28ab5fd08b1098a58cb280e8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 22 17:17:09 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jun 26 16:29:08 2017 +0000"
      },
      "message": "Set initial audio device for AudioTrack and AudioRecord\n\nBug: 62090113\nTest: run AAudio test and verify a valid device is reported just\nafter opening playback or capture streams in legacy mode.\n\nMerged-In: Ic8be42e1735690eb00c811ef0cb8b5abb36172d6\n\nChange-Id: Ic8be42e1735690eb00c811ef0cb8b5abb36172d6\n"
    },
    {
      "commit": "5dd96d24e898701f6a37e0b49ef105d2bd637133",
      "tree": "604128929bb4cf0e4108b66928a643033c1b77b1",
      "parents": [
        "1165cb67e82553ce6a05074f2b56785c82d771a9",
        "1f3a28ec6ba9bafa4e0a6f0ae0838c392ce43b73"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:54:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:54:51 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad am: 7779f826d4 am: c343fd2846 am: 69b0154d59 am: 1d66db35e5 am: 849b3d0cdb am: ef0a06bae0 am: 9a5104ddf1\nam: 1f3a28ec6b\n\nChange-Id: I1243d98ca28b92b6d5f7a2e5a43c86f809cd4941\n"
    },
    {
      "commit": "1f3a28ec6ba9bafa4e0a6f0ae0838c392ce43b73",
      "tree": "03e1eaabb52d6393335bffae10d5987aa1bc1185",
      "parents": [
        "3aaf1671d597c41de6546605148847d4cf640217",
        "9a5104ddf13b8b9a1dec28fbc0fcd2e3ae0668c5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:49:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:49:48 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad am: 7779f826d4 am: c343fd2846 am: 69b0154d59 am: 1d66db35e5 am: 849b3d0cdb am: ef0a06bae0\nam: 9a5104ddf1\n\nChange-Id: Ia053b76c9dc3aa7d2e953bfc2eadadb40ea16b93\n"
    },
    {
      "commit": "849b3d0cdba9e6b6c2e0142714c260b9e6e20567",
      "tree": "e9ae543edfcce3febbdf5ea6d41d84cfe3eefb33",
      "parents": [
        "1efa35d1f8b9518afda9c6136acf9487f672f025",
        "1d66db35e5da3eeaf311f95c65b0349c58bae280"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:30:14 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:30:14 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad am: 7779f826d4 am: c343fd2846 am: 69b0154d59\nam: 1d66db35e5\n\nChange-Id: I962eeaea659e99f5a9f082ab2f479bbb4cface15\n"
    },
    {
      "commit": "1d66db35e5da3eeaf311f95c65b0349c58bae280",
      "tree": "fb31c43a804940adc33905f5484997a623d43f46",
      "parents": [
        "e4c62e4582bf940769a257b2232eb19062beee18",
        "69b0154d59293511b3a4071342d9c3b769b4abfa"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:24:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:24:11 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad am: 7779f826d4 am: c343fd2846\nam: 69b0154d59\n\nChange-Id: Ifbb0da32f562fe5b1001e5dc2fcc3490305e694e\n"
    },
    {
      "commit": "69b0154d59293511b3a4071342d9c3b769b4abfa",
      "tree": "28edc997df9767e37f531c9bf9a4594b76c66879",
      "parents": [
        "7c70a5482c7b1f9f9a501562aaecb30df4929495",
        "c343fd2846e78579f0a86d806a3cef01c71992b1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:18:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:18:42 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad am: 7779f826d4\nam: c343fd2846\n\nChange-Id: I72c4c8d74ffaa8b8bc03a265ae3ff06796bbeb5b\n"
    },
    {
      "commit": "c343fd2846e78579f0a86d806a3cef01c71992b1",
      "tree": "4b8e828fd85cd42d9c851e2f978793c299d2903a",
      "parents": [
        "9262a0d58fbbdd8c88fd56b04050ed96f7ce05a0",
        "7779f826d4b86b70ab1dba6fceb5a5cec1e0742a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:12:41 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:12:41 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126 am: 483cf88382 am: f89b2427ad\nam: 7779f826d4\n\nChange-Id: I6ec7ea434317d8d3c38314a9dc49f6b620e0db9f\n"
    },
    {
      "commit": "f89b2427ad2d17b83354e3b03603f99af000b1bd",
      "tree": "07a38258ac05de3d10a5c935ac68256e254570ab",
      "parents": [
        "040485c1bcd8f22ca6f7c45d934a2e90ec48a231",
        "483cf88382bd6c8b9523d9d57eafd693cd06aaec"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:02:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:02:11 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4 am: 42f2fab126\nam: 483cf88382\n\nChange-Id: I745c19ce57ca9055b5cb11a9ac5072b0b8954cd6\n"
    },
    {
      "commit": "483cf88382bd6c8b9523d9d57eafd693cd06aaec",
      "tree": "31319a05d978ede365da4746f9e3881a8d45ecd5",
      "parents": [
        "6ce4126a09190954a69dfc97f1f340fe9e139431",
        "42f2fab126561094ec38aac25b9db200dcfb28b6"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 16:56:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 16:56:42 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev am: 782a30d2ab am: a3416fc6b4\nam: 42f2fab126\n\nChange-Id: Ifb95a65ef32c643b94554c3904b84678d5459625\n"
    },
    {
      "commit": "a3416fc6b4fc40e65f36dc83038a40a2d778ddfa",
      "tree": "dc0563876c8a5581516d643bd48acf806611e196",
      "parents": [
        "2ace148c06da2e79234cab43db9a6d3dc9220b7c",
        "782a30d2abbf20bf617c19983829fe78cdc235f1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 16:45:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 16:45:42 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev\nam: 782a30d2ab\n\nChange-Id: Ie27330ced83beccaed5a5a3d69ec6833be7e36e1\n"
    },
    {
      "commit": "782a30d2abbf20bf617c19983829fe78cdc235f1",
      "tree": "824f3768fd99df018be0164572a7ed7aa82b56f8",
      "parents": [
        "d971d188737cb179dba19a27e513e07c78252bf5",
        "f4aeab2bd69bead05ed75ae3254f53a6ab2316b5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 16:35:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 19 16:35:01 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev"
    },
    {
      "commit": "2eed9fd5a02ab67ad141b515b944b6dc5fc818a3",
      "tree": "49559a067750c2814018df30d231f6e3d63a64eb",
      "parents": [
        "ba95c148265adf701bda5b25194bba92253a5222",
        "85c8828a32679eb960d21ac992238471d4b2da3d"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:25:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:25:06 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91 am: d06e47540d am: 103b751e55 am: 0851e2f4c6 am: aff0808bcf am: 109247df7a am: a92d05fc1e\nam: 85c8828a32\n\nChange-Id: I2ac2e1e00639f686905900308b3f675925e44a9d\n"
    },
    {
      "commit": "85c8828a32679eb960d21ac992238471d4b2da3d",
      "tree": "0ea1149b62442e0d3aaabe75e6791c3ff2657d1d",
      "parents": [
        "7392f40d44cbfc5f4bb53fa74c93eb84bba5928f",
        "a92d05fc1ec048541d888c4ef72ee63617ee18f1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:19:16 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:19:16 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91 am: d06e47540d am: 103b751e55 am: 0851e2f4c6 am: aff0808bcf am: 109247df7a\nam: a92d05fc1e\n\nChange-Id: I73340a812c24ea421d68fa88f6b18cfa4867a0a5\n"
    },
    {
      "commit": "a92d05fc1ec048541d888c4ef72ee63617ee18f1",
      "tree": "7493a758e3dd8958540ed42438fa059fb89a8083",
      "parents": [
        "eae3ad0585d17bab12bbd831b58407c122732a1c",
        "109247df7a1d7328f2c6f8f39d0987d7f6395ab2"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:13:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:13:12 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91 am: d06e47540d am: 103b751e55 am: 0851e2f4c6 am: aff0808bcf\nam: 109247df7a\n\nChange-Id: I4f55d2cdd5ef430742e3b6e3680603d2a9618593\n"
    },
    {
      "commit": "109247df7a1d7328f2c6f8f39d0987d7f6395ab2",
      "tree": "b87407527ebeaaa93a41ce5f0db8b1f49ef739e0",
      "parents": [
        "b95bbe95b5e55ab428ee0154e0bddda4146d41d3",
        "aff0808bcf454041bccc287ddd9a0ed144bee117"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:11:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:11:10 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91 am: d06e47540d am: 103b751e55 am: 0851e2f4c6\nam: aff0808bcf\n\nChange-Id: I4c7698da6176547fd9ebc23ae52e2e9e53e83f61\n"
    },
    {
      "commit": "0851e2f4c6abe3340259b0e02b61857215762281",
      "tree": "52b5e52e475a006d93a98cbbb380d0efb3a04b33",
      "parents": [
        "bc7ecc89b6c1274f8b472a91c50c942924bfd8ec",
        "103b751e5511c2cf4b250455e07ec1e1fc4befe2"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:04:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:04:11 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91 am: d06e47540d\nam: 103b751e55\n\nChange-Id: I3d03741eca351ad131d5bae700a5024fda36e1be\n"
    },
    {
      "commit": "103b751e5511c2cf4b250455e07ec1e1fc4befe2",
      "tree": "1f3ed539aba84c2a89d3279ceb2fd4904856530b",
      "parents": [
        "7c86ed20b2de9eb0334ffe2d7b4502c9bb719790",
        "d06e47540d0817bab04a017e8242a25c17cebd76"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jun 17 00:02:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 00:02:09 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8 am: a35816475b am: 1ce123cf91\nam: d06e47540d\n\nChange-Id: I22405b81c7351961f8aca57289a15cc99e67525a\n"
    },
    {
      "commit": "1ce123cf912a00547830fc742b927cf72007ff86",
      "tree": "fa752d996ffc18dbc8b27548dc8a980248c28b31",
      "parents": [
        "b91cfc3589922da3d038a01fe628353ce589f253",
        "a35816475b907f3cead491f1c39ea72967f49fe5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 23:58:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:58:10 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4 am: 24ef54ecb8\nam: a35816475b\n\nChange-Id: I77aa056b71679b0d0d6703a59f46c788e77d5351\n"
    },
    {
      "commit": "a35816475b907f3cead491f1c39ea72967f49fe5",
      "tree": "4b1bfcaa3885a8d64b625e44313021237bde2601",
      "parents": [
        "8818bf1fbb9ea6b65cd61543ed7db986c3d65d13",
        "24ef54ecb8e825f51b2750dbb8b2ea2139cebd8c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 23:54:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:54:39 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4\nam: 24ef54ecb8\n\nChange-Id: I0b413afa5c0e41fadcd0320f7481172cc2398018\n"
    },
    {
      "commit": "24ef54ecb8e825f51b2750dbb8b2ea2139cebd8c",
      "tree": "2b7f50cb76a81fdabe3f0f91f534fae2085967da",
      "parents": [
        "966e572c69397616d31f378fe10089ca99373824",
        "f242b890c45ef019d1cf131d3289ba72a06451e0"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 23:51:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:51:37 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3\nam: f242b890c4\n\nChange-Id: I5bd38c33b13de93e641e50c39cdfe37dbae59923\n"
    },
    {
      "commit": "f4aeab2bd69bead05ed75ae3254f53a6ab2316b5",
      "tree": "683ef1ac8035e7bc783d68e7ebd8a7e20dc84893",
      "parents": [
        "ea83248dfb1822e0c0d507f38b13d90a9641261e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 17:22:46 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jun 15 18:08:47 2017 -0700"
      },
      "message": "Track: Check buffer size of static tracks\n\nMerged-In: Ia7edd9a802905214a27961dbcec6352f6ef98f73\nTest: Native POC\nBug: 38340117\nChange-Id: I633caf563d3607dbe4b9be10be1687efce33469c\n"
    },
    {
      "commit": "1159ffd5e3f832206982d45a7b030b943cc4775e",
      "tree": "aef16a6e9d49e0d1b59bef3b487f21244e1ab8ee",
      "parents": [
        "ef3a4aead0eb4d6b0615159489d4a187ce90de2c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Feb 13 18:50:48 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 17:52:06 2017 -0700"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks\n\nTest: Ringtone with BT\nBug: 35350587\nBug: 38340117\nChange-Id: If247d319d58f8f4d18b49f58ec950491871ebb2d\n(cherry picked from commit afb31487f3156a7284d2f0d06646c7bc00d99537)\n"
    },
    {
      "commit": "b3cf7e656db20c65c0d7c779640db7f5f2a52baf",
      "tree": "82a21b169c3fd2d3afb9cfbf95e7949779db8a55",
      "parents": [
        "ad4dbf550debd0fa2794eba7c772b85445115181"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Fri Jun 02 10:24:24 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Fri Jun 02 10:24:24 2017 -0700"
      },
      "message": "audioflinger: Extend debug logs in RecordThread\n\nThis seems to be helpful to figure out why requesting\nlow latency recording fails. E.g. it can fail because\nRecordThread just doesn\u0027t enable fast capture, or because\npipe memory allocation has failed, or due to parameters\nincompatibility.\n\nChange-Id: Ia5122b0591836c4999e73f3460c761484f5c2859\nTest: manual\n"
    },
    {
      "commit": "2ee7aab4a39139a86a24ca14f718eb20a1b355db",
      "tree": "1a7501567d6af64aa958f26453ee9360833bfd4a",
      "parents": [
        "bcbc56bfd43e071cf8b199e9e6dfc835d1f29ab6"
      ],
      "author": {
        "name": "YOUNG HO CHA",
        "email": "ganadist@gmail.com",
        "time": "Thu May 25 23:16:51 2017 +0900"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu May 25 11:26:52 2017 -0700"
      },
      "message": "Android.mk: remove $TOP in LOCAL_C_INCLUDES\n\nTest: make systemimage\n\nChange-Id: I5f83786afe3f2c65819b127b041cb74fc4c989ac\nSigned-off-by: YOUNG HO CHA \u003cganadist@gmail.com\u003e\n"
    },
    {
      "commit": "af9a7b52b2273ea5c2b30350bdd0fce39a8b16d2",
      "tree": "e0c66e6f6b031293496bc4a4008d76d45cf5bc13",
      "parents": [
        "d0ebc4ce66090107dbda021cb395f1d3c11b9525"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 29 11:29:39 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue May 23 11:26:14 2017 -0700"
      },
      "message": "Add comments for bool parameter forApp\n\nTest: builds OK\nChange-Id: I71d0a76225c90e8c30979a579bacf2bd3ce8e492\n"
    },
    {
      "commit": "cc49b266bb2a6dcc4249afe26f6374f48b753396",
      "tree": "cbc3930f0a6f8d611a2789307156a20d9013d747",
      "parents": [
        "121c79d2f8a980d1e55db5af8b8c48281072ca8b",
        "f12f9ca0bef555f59b4ba34f220207e9a20f2875"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Fri May 05 00:34:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 05 00:34:48 2017 +0000"
      },
      "message": "Merge \"Fix wait time for audio threads in suspend mode\" into oc-dev am: 24fd2f7d29\nam: f12f9ca0be\n\nChange-Id: I31eac5f1953eb00c253a140dd9d3959055936eba\n"
    },
    {
      "commit": "f12f9ca0bef555f59b4ba34f220207e9a20f2875",
      "tree": "60b1869265a2ba92fa9af91b1475a7c3dc0ce33e",
      "parents": [
        "56fa0f3e36481d26ee201fd92d7e770e747efbf5",
        "24fd2f7d2900797b1300d6bc89d28bd94a31c3cb"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Fri May 05 00:31:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 05 00:31:52 2017 +0000"
      },
      "message": "Merge \"Fix wait time for audio threads in suspend mode\" into oc-dev\nam: 24fd2f7d29\n\nChange-Id: Idfb70a5c7f3d532e9946940ef15639abe884bba2\n"
    },
    {
      "commit": "24fd2f7d2900797b1300d6bc89d28bd94a31c3cb",
      "tree": "8b9db5adea9c0bc45c84b59e3f3b732938e13afe",
      "parents": [
        "8e301b17a297234757959ace170e3d77ef87b5a6",
        "1bb9082596c9cac2995dc9b4465a7c6d5666d099"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 05 00:23:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 05 00:23:53 2017 +0000"
      },
      "message": "Merge \"Fix wait time for audio threads in suspend mode\" into oc-dev"
    },
    {
      "commit": "ab37fbfcdc197429d59f6926ba970b3e68bbbadf",
      "tree": "b996f5b97e90646a4a44244874cca7a5e1b57d74",
      "parents": [
        "9be44dcb02e01e26cccd8334223f75174fbb3f26",
        "8c9796628b8aa19adb3787dae7de0989b5b5ef4c"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu May 04 23:03:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 04 23:03:00 2017 +0000"
      },
      "message": "Merge \"audioflinger: Do not report underruns for stopped or paused tracks\" into oc-dev am: bc4040efd0\nam: 8c9796628b\n\nChange-Id: I819e1361dd3245f35fe06691a4758fe43febc3d0\n"
    },
    {
      "commit": "8c9796628b8aa19adb3787dae7de0989b5b5ef4c",
      "tree": "4a63ed8c21517ab5589f4db00e9ab44040816f70",
      "parents": [
        "cd3b59c8ba5da18eb4f501b62f4e583027bc3e9d",
        "bc4040efd06835a620d97a5dc8cc2fd0c8830de3"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu May 04 22:59:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 04 22:59:46 2017 +0000"
      },
      "message": "Merge \"audioflinger: Do not report underruns for stopped or paused tracks\" into oc-dev\nam: bc4040efd0\n\nChange-Id: I5cb91b0223c6302f1b08450f2bfeb5ebf390cc95\n"
    },
    {
      "commit": "1bb9082596c9cac2995dc9b4465a7c6d5666d099",
      "tree": "7d3b5fc5f617f395167f07282d686857e15ac032",
      "parents": [
        "01506e4ad26d1f1bf5b81121a8d17b3305940eab"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Tue May 02 18:31:48 2017 -0700"
      },
      "committer": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Thu May 04 15:21:18 2017 -0700"
      },
      "message": "Fix wait time for audio threads in suspend mode\n\nBetter estimation of wait time in suspended audio threads.\n\nBug: 34772697\n\nTest: phone calls with BT headset.\nChange-Id: Icf99c0671def810b57332a321e4de4680697715b\n"
    },
    {
      "commit": "a66d3899f7d13e69ee451f1071f0d999678803ce",
      "tree": "542dcd3c8d5ad1c2963d8b8aba0156c52fac655f",
      "parents": [
        "f1e459c6400a774d99390227e853a30f58cee4a2"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed May 03 16:50:56 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu May 04 11:25:59 2017 -0700"
      },
      "message": "audioflinger: Do not report underruns for stopped or paused tracks\n\nPlaybackThread::Track is missing checks for the track state\nwhen reporting underruns. These checks present on other instances\nwhen tallyUnderrunFrames is being called.\n\nThis eliminates fake underrun reportings when playing\nmultichannel tracks via deep buffer.\n\nBug: 36181621\nTest: play multichannel track and check underrun count at the end\nChange-Id: Ieff338b33807e66df91234d85b782ee383fe95b9\n"
    },
    {
      "commit": "952a05feddbab2097e4dc4fb72438d51da198396",
      "tree": "8cb58369709691781257115f67a8c00550b36044",
      "parents": [
        "86175456fb088c8cda6c3d6ee3f77254aa1318cd",
        "8aa96b78076a10f803329a49abcdc38204372f6f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 01 15:01:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 15:01:51 2017 +0000"
      },
      "message": "Merge \"Remove unused #include.\" am: 66f70d2c8f am: ad06541333 am: dfb2379a16\nam: 8aa96b7807\n\nChange-Id: I3c04d3d225e9ebeca3ab6a9bf8a632e3ef2237b4\n"
    },
    {
      "commit": "8aa96b78076a10f803329a49abcdc38204372f6f",
      "tree": "c97c94d2a5d6f4b8a59a1a14c479ff8112cf9e79",
      "parents": [
        "dc57616ef1949898a92d2ef86433dd1918be7b8e",
        "dfb2379a1669a1a50d26fd67742593c1141cd723"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 01 14:59:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 14:59:23 2017 +0000"
      },
      "message": "Merge \"Remove unused #include.\" am: 66f70d2c8f am: ad06541333\nam: dfb2379a16\n\nChange-Id: Ic8190f5093c56e5f1b949b7e96aa75fba14e42ad\n"
    },
    {
      "commit": "dfb2379a1669a1a50d26fd67742593c1141cd723",
      "tree": "924ec985e1514985006330642a52b0aa0fd702f3",
      "parents": [
        "f5668638ee2e7a0b56476b8204265fc8789d4383",
        "ad06541333d6774238fa91289f2b2e359d9ad3a7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 01 14:56:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 14:56:21 2017 +0000"
      },
      "message": "Merge \"Remove unused #include.\" am: 66f70d2c8f\nam: ad06541333\n\nChange-Id: I69824d7d03c110442325d61ed898ec5b99769494\n"
    },
    {
      "commit": "aa4db8923757ec876c7cb8472cf3a937480d6189",
      "tree": "1999d8769bc46751c6e44812f699b37d61b479b7",
      "parents": [
        "f99ffd986c98b9e888678f63202788c59a9867e8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Apr 29 10:16:54 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Apr 29 12:39:18 2017 -0700"
      },
      "message": "Remove unused #include.\n\nBug: N/A\nTest: builds\nChange-Id: Ia493566414e7d08ae12bb9ba754d5c207eed8d3e\n"
    },
    {
      "commit": "fa382b7165edc0eba84975a0abaf159a70ea9d86",
      "tree": "4d451c2eb2133c391bfbb064ac6bf08cbca8be83",
      "parents": [
        "084ad5a4e0af7f816e3279359ed49ae18f8c7d74",
        "f417a01ad53982f5fa0b3b0d4f7e78d6b19d11f9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Apr 27 17:41:05 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 17:41:05 2017 +0000"
      },
      "message": "Merge \"audioflinger: improve mmap stream volume\" into oc-dev am: 9ba03c881f\nam: f417a01ad5\n\nChange-Id: I34d42c70991e76d3f4c398d958ac02c92977d85e\n"
    },
    {
      "commit": "9ba03c881f92f1bd62b28f1c38dc7579382ebdbc",
      "tree": "2cbccc394638af148b21522b0d7fb889f407e96e",
      "parents": [
        "abbb67724e5600c17450ed148fb2c214c5aac9ee",
        "dff774afa22569774eb2c8c25b1b3f934badea4b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 17:19:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 17:19:57 2017 +0000"
      },
      "message": "Merge \"audioflinger: improve mmap stream volume\" into oc-dev"
    },
    {
      "commit": "93d7b51f52a9a5b44d4873f69feefc1709d872c8",
      "tree": "ea87e65e62200823b44853f6b63174e00a6fe9b8",
      "parents": [
        "7b4f926ce4b0b298b5157186347a90dcbc543a70",
        "db59802a59365408b19d95375b8b39fd0a05e002"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Apr 25 16:30:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 16:30:51 2017 +0000"
      },
      "message": "Merge \"VolumeShaper: improve logging and dumpsys\" into oc-dev am: 9706527f86\nam: db59802a59\n\nChange-Id: I119a0c5cf44a9efaa0190c33a302730a4c756970\n"
    },
    {
      "commit": "9706527f86fc9895ffd0bf288bab6a2b5749a822",
      "tree": "62bb529f4105eac6055ded032b44a90f355eebb3",
      "parents": [
        "79a89ef4eb06a2d29fc3d083112de398111a9ddb",
        "da540db0fc21bc9319d9602aefe1a109d00a7e6c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Apr 25 16:23:15 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 25 16:23:16 2017 +0000"
      },
      "message": "Merge \"VolumeShaper: improve logging and dumpsys\" into oc-dev"
    },
    {
      "commit": "da540db0fc21bc9319d9602aefe1a109d00a7e6c",
      "tree": "4d2bf652c1c8e523ae1bf28bf5e67e20289be6c8",
      "parents": [
        "5551797eb2d813ef01e23eb93fd680bc1e0dd886"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Apr 20 14:06:17 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Apr 24 15:22:44 2017 -0700"
      },
      "message": "VolumeShaper: improve logging and dumpsys\n\nTest: CTS and dumpsys\nBug: 37536598\nChange-Id: I9a838a8605defde3aaf42a872e48f01425df0f0e\n"
    },
    {
      "commit": "dff774afa22569774eb2c8c25b1b3f934badea4b",
      "tree": "123482f94f2a9246407e4cdad103c599cfa60acc",
      "parents": [
        "6534425f9f508561928fa5c39dd315fd4c354060"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 21 15:29:38 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 21 15:35:23 2017 -0700"
      },
      "message": "audioflinger: improve mmap stream volume\n\nFirst try to use HW volume control and then fall back\nto volume control in AAudio service.\n\nBug: 37518243\nTest: play a sound and check AAudio volume  callback is called\nwhen pressing volume  keys.\n\nChange-Id: Ie18be9f553ae23c247974d8923e7dcddeb1047c8\n"
    },
    {
      "commit": "b04bbe15df0d40ae5d305f3b565cbac89c08a702",
      "tree": "f880ffa90f07b680dce00385c6d10556e18ac9d1",
      "parents": [
        "533800d478e81bc920bd4a3bae9d02f9982ba50a",
        "e0ca8fcf0bb527ff9c6c53ba5412a4b113118305"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 21 19:08:16 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 21 19:08:16 2017 +0000"
      },
      "message": "Merge \"audioflinger: fix mmap stream volume\" into oc-dev am: 6534425f9f\nam: e0ca8fcf0b\n\nChange-Id: Ibadb00dc1dbdb8658dee5b75e54f6f011932d899\n"
    },
    {
      "commit": "7459b90d769a85a4727a2fc02aa96695454ba652",
      "tree": "df9fb1db712ad5fa2219bb081d9152821db53f1b",
      "parents": [
        "24059088a46160f731903cc66404184a531d0478"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Apr 19 18:10:41 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Apr 21 05:10:54 2017 +0000"
      },
      "message": "audioflinger: fix mmap stream volume\n\nFix bad casting from MmapPlaybackThread to VolumeInterface causing\nvolume commands to be lost by audio flinger for MMAP threads.\n\nBug: 37518243\nTest: Verify volume is received by the audio HAL on MMAP streams\n      Verify no regression for other stream types.\n\nChange-Id: I584ae868245358b2edefecc46a5249092f8be229\n"
    },
    {
      "commit": "bf49308851509d38dbf3f57d9682a819d9f983c9",
      "tree": "89168af93deeb8337376b130e40db86179f4a4d2",
      "parents": [
        "064ac067e3e9c2e68d363aa5db57cdd6e2911cdd"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Apr 17 17:37:12 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Apr 17 17:43:36 2017 -0700"
      },
      "message": "audioflinger: Make use of android-base/macros.h\n\nReplace local definitions of \"array size\" macro, and\ndeclarations of non-copyable objects with corresponding\nconstructs from android-base/macros.h.\n\nAlso change \"protected:\" to \"private:\" for classes\nnot designed to be inherited.\n\nChange-Id: I2d1e6d153511ed84d52fe6377879f83258890653\nTest: make\n"
    },
    {
      "commit": "444841ffd7f56f7eadc3cccd59e62738626f0c33",
      "tree": "aa221059eeba7e4b10174a565a27d61a6ea2ba40",
      "parents": [
        "fbd7e12c373435c77aa5b20bdf321a0589521746"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Dec 16 15:36:43 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Apr 13 12:52:05 2017 -0700"
      },
      "message": "Get declarations from the proper header file\n\nTest: builds OK\nChange-Id: I759e49570cd00b3e5101f38164fcac5ac53faa6c\n"
    },
    {
      "commit": "5b2191a4a36746b66ba3e8f73b711f49fdb83b4b",
      "tree": "1a9844681191d98fe5a92c3463de78f99453e01b",
      "parents": [
        "fb91f95fb75b2c2f4247b7fef8674e46ea0bc978"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 19 11:44:47 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Apr 13 09:39:48 2017 -0700"
      },
      "message": "Add a tee sink filename suffix to distinguish type\n\nTest: tee sink filenames have a _C (capture), _P (playback), or _T (track) suffix\nChange-Id: Ib8ddadb0f3e3ba3ac620e33072bb212d5cde4978\n"
    },
    {
      "commit": "fb91f95fb75b2c2f4247b7fef8674e46ea0bc978",
      "tree": "2f7b9bbaa985e245cf61370a67f8b1f81f6f5c0e",
      "parents": [
        "5ede4eef66a3908d1289e2b3baaa692c5492914b",
        "388d57148e8bd330e855be0f51c72d577feb2ee9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Apr 13 16:38:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 16:38:46 2017 +0000"
      },
      "message": "Merge \"Rename logWriterTLS to tlNBLogWriter\""
    },
    {
      "commit": "2dc0a5b768b5bac4ab017d3da68b1e97a162296f",
      "tree": "776df15bebc40b62d3edffbdceb17a71e33aeb4b",
      "parents": [
        "0e335f151fbd115d9173741cbe0f87ce38bd3d4d",
        "eef598c5539aa2be5a106f2483b19e368e4b8c0e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Apr 13 00:47:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 00:47:39 2017 +0000"
      },
      "message": "Merge \"Add histograms for FastMixer\""
    },
    {
      "commit": "d9534fb35245b8bcd2489e717bdd1ad9269b3000",
      "tree": "e952072b004f3a743465cf67d89e9420246f7bc3",
      "parents": [
        "0de04e850beced076e4b1fcf0e513255f62a7d85",
        "c0c70e3c7dd10bc2c0caffcab1f3f5fb406b35fb"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Apr 12 20:04:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 12 20:04:07 2017 +0000"
      },
      "message": "Merge \"AAudioService: integrated with audioserver\" into oc-dev"
    },
    {
      "commit": "c0c70e3c7dd10bc2c0caffcab1f3f5fb406b35fb",
      "tree": "2544186372c9778460821e410c09a0edba8a17bf",
      "parents": [
        "d1b4d0a6a65476236f972cfc181a1db2b96d93ef"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Feb 09 13:18:38 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Apr 12 18:26:12 2017 +0000"
      },
      "message": "AAudioService: integrated with audioserver\n\nCall the MmapStreamInterface from AudioFlinger instead of the FakeHAL.\nFix sending timestamps from the thread.\nAdd shared mode in service.\n\nBug: 35260844\nBug: 33398120\nTest: CTS test_aaudio.cpp\nChange-Id: I44c7e4ecae4ce205611b6b73a72e0ae8a5b243e5\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n(cherry picked from commit 7f6b40d78b1976c78d1300e8a51fda36eeb50c5d)\n"
    },
    {
      "commit": "e73909ebf4728a73cbe19449003ba6b36f2955f6",
      "tree": "a6d773f7b0ab59107dd819433575f0adab0b8aa2",
      "parents": [
        "ba9a9622afc6370e4180dacb6c3169cbfe153446",
        "3ab8d66ad1c47a5ee1f87ad9f5ee2666cf89b32d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Apr 12 16:21:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 12 16:21:41 2017 +0000"
      },
      "message": "Merge \"Rename symbols to be more consistent\""
    },
    {
      "commit": "ddb332138cc8f3b4efad9b14b038f0a462b1b661",
      "tree": "867840ca5a15bf27c03946b9cefe07df4c0ccb8e",
      "parents": [
        "a4fe7d9cd54753ac068699eaf5750d34603220e9",
        "6d8018f0b7be9deec6b0acab10a0dca6e91d0fb8"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Apr 12 16:15:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 12 16:15:32 2017 +0000"
      },
      "message": "Merge \"Improve audio logs and dumpsys media.audio_flinger\" into oc-dev"
    },
    {
      "commit": "a4fe7d9cd54753ac068699eaf5750d34603220e9",
      "tree": "c3e6c161805715a07bdfb480985ae0bf3d40ea50",
      "parents": [
        "cbd0e571958736a4036bcd0496d4933780af880e",
        "3ac24a14e36085bb26b65652e11747deda0f1e18"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Apr 12 16:15:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 12 16:15:15 2017 +0000"
      },
      "message": "Merge \"Fix log spam for media.log\" into oc-dev"
    },
    {
      "commit": "1e037fa24aba83bac2b05a66123c99889cd7e301",
      "tree": "4c29d05a94d8c97d2bfed32debcff30fa70f3384",
      "parents": [
        "00f4a983d6de013045669e0545cf6d7ca232fb2b",
        "fb77f14d64d2dc8b8b2023e12a7ae34f1e053cff"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Apr 12 02:09:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 02:09:55 2017 +0000"
      },
      "message": "Merge \"Audio policy / flinger: updates to recording callback and record stop\" into oc-dev am: d9d9ae2973\nam: fb77f14d64\n\nChange-Id: I493fb706f5e2eab6500bf23a872eaa46d6ececce\n"
    },
    {
      "commit": "38f86713cbd22caae9fdd4ac2f0bb76ff91df34d",
      "tree": "0a63e9771a87a74837cad231f54e15c1ce8eb635",
      "parents": [
        "ef0b6b64144b6e062bbb445a6df73c365b66646d"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Apr 11 14:10:17 2017 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Apr 11 15:03:51 2017 -0700"
      },
      "message": "Audio policy / flinger: updates to recording callback and record stop\n\nDo not trigger the callback for recording events when the patch\n  handle is NONE, the patch handle will be updated for the\n  recording session later.\nWhen stopping recording, only stop the record thread if the\n  track is not active, not if it\u0027s not the first one.\n\nTest: cts-tradefed run cts-dev -m CtsMediaTestCases -t android.media.cts.AudioRecordingConfigurationTest\nBug: 36569938\n\nChange-Id: I1b7445ef4115d6337ba7b926f7e6b068361926a7\n"
    },
    {
      "commit": "3ac24a14e36085bb26b65652e11747deda0f1e18",
      "tree": "4d0336a8da1b211e559f1348625d4c8e5f63c7e9",
      "parents": [
        "dab5aae9390dccda539c2c805904440bc1e41e9e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 10 14:58:47 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Apr 11 15:20:51 2017 +0000"
      },
      "message": "Fix log spam for media.log\n\nBug: 36481537\nTest: logcat does not show \"Waiting for service media.log\"\nChange-Id: Ia69b679d3b1f1dd292237c63855ff650566df133\n(cherry picked from commit 04b96fc3a6cfa8312c51bbba4e5729c9dd869f78)\n"
    },
    {
      "commit": "317751902ea3ab0365dfe57a4094c5a605b09e0e",
      "tree": "a79096eb1fd51c2a34ee1bd65b6c02a62426d56d",
      "parents": [
        "e809c801009493f8b18dffdd6d07bf68f1790825",
        "04b96fc3a6cfa8312c51bbba4e5729c9dd869f78"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Apr 11 14:58:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 11 14:58:58 2017 +0000"
      },
      "message": "Merge \"Fix log spam for media.log\""
    },
    {
      "commit": "60aec5bddfb5db89f2a33271127a330357f60656",
      "tree": "4c3a9e8fdbf3411db272b6a75169e795354b847d",
      "parents": [
        "5f5e06a6ecfd11f8964e90c390ef7115f1ccc236",
        "8ae038e457b0b01c4f082ff5504f8b880b087f77"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 10 22:08:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 10 22:08:06 2017 +0000"
      },
      "message": "Merge \"TypedLogger check for logWriterTLS \u003d\u003d nullptr\""
    },
    {
      "commit": "04b96fc3a6cfa8312c51bbba4e5729c9dd869f78",
      "tree": "065b2ffc851bf6f18119cdf628f1a5d9ad1b3332",
      "parents": [
        "b783ad2fc3880af2c31febb95fa3889ee878aa3b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 10 14:58:47 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 10 15:05:31 2017 -0700"
      },
      "message": "Fix log spam for media.log\n\nBug: 36481537\nTest: logcat does not show \"Waiting for service media.log\"\nChange-Id: Ia69b679d3b1f1dd292237c63855ff650566df133\n"
    },
    {
      "commit": "7f6b40d78b1976c78d1300e8a51fda36eeb50c5d",
      "tree": "78d0268547b2ca08c89e11a3fcc4a6acafed9a54",
      "parents": [
        "a2e1b6dfd047c148a639cbaff7e3f857d7b3fddc"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Feb 09 13:18:38 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Apr 07 17:26:11 2017 -0700"
      },
      "message": "AAudioService: integrated with audioserver\n\nCall the MmapStreamInterface from AudioFlinger instead of the FakeHAL.\nFix sending timestamps from the thread.\nAdd shared mode in service.\n\nBug: 35260844\nTest: CTS test_aaudio.cpp\nChange-Id: I44c7e4ecae4ce205611b6b73a72e0ae8a5b243e5\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "388d57148e8bd330e855be0f51c72d577feb2ee9",
      "tree": "576d550bcbed7d5de386d3abc4970e59f59e3390",
      "parents": [
        "1c446273e6ebfe55ef293a0b7e78525b1b40ce84"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 14:38:41 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 14:47:02 2017 -0700"
      },
      "message": "Rename logWriterTLS to tlNBLogWriter\n\nBug: 37153050\nTest: builds OK\nChange-Id: I6b6d673fc02942d4ea7d2022fce06ec2b0e42c2e\n"
    },
    {
      "commit": "eef598c5539aa2be5a106f2483b19e368e4b8c0e",
      "tree": "677e3f98c4f1b3deb9d653dc5ad00b4a7e881028",
      "parents": [
        "3ab8d66ad1c47a5ee1f87ad9f5ee2666cf89b32d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 03 14:41:13 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 14:46:35 2017 -0700"
      },
      "message": "Add histograms for FastMixer\n\nBug: 37153050\nTest: dumpsys media.log shows histograms for audio activity on FastMixer\nChange-Id: I6bb4bf19d62da1ed1d8cda43d428b03153a35de3\n"
    },
    {
      "commit": "3ab8d66ad1c47a5ee1f87ad9f5ee2666cf89b32d",
      "tree": "4e0b0664033e13a14ad1c05652b7ccded31ee87c",
      "parents": [
        "8ae038e457b0b01c4f082ff5504f8b880b087f77"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 03 14:35:09 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 14:46:29 2017 -0700"
      },
      "message": "Rename symbols to be more consistent\n\nBug: 37153050\nTest: builds OK\nChange-Id: I7e55a03ca8e1f22901db6c8f6f2ad32e4c95a0cd\n"
    },
    {
      "commit": "8ae038e457b0b01c4f082ff5504f8b880b087f77",
      "tree": "523429f63344048229a7fce1aa4a8d03a4230d2e",
      "parents": [
        "9c37337c402d6b19c2a2d1ee50002cbf56f3bc78"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Apr 03 13:43:41 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 14:35:42 2017 -0700"
      },
      "message": "TypedLogger check for logWriterTLS \u003d\u003d nullptr\n\nlogWriterTLS !\u003d nullptr\n\nBug: 37153050\nTest: builds OK\nChange-Id: I4f1202ee68a27c637ead2ff520b248a2cfe27508\n"
    },
    {
      "commit": "6d8018f0b7be9deec6b0acab10a0dca6e91d0fb8",
      "tree": "2ce104a9e93cd8604e6624517a818ef8ddedb241",
      "parents": [
        "eb12e8bd16208fdd3017e2d99fee721993efdaa4"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 21 13:05:56 2017 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Apr 07 15:30:08 2017 +0000"
      },
      "message": "Improve audio logs and dumpsys media.audio_flinger\n\nInclude mFrameCount in shared memory corrupt error log.\n\nFix typo in log for primary audio interface.\n\nInclude the new server frame count in logs for fast tracks.\n\nAlways log when fast is successful for output tracks, as it helpful\n  (was already there for input).\n\nCleanup dumpsys for threads.\n\nBug: 37153050\nTest: builds OK, and logs contain more information\nChange-Id: I2b5b4d700e8eb7c261a3125fb03ddc00bf08537e\n(cherry picked from commit 1bfe09a0b1755a79abd32b41c0dd433b88fc260c)\n"
    },
    {
      "commit": "0b9e783197bcd5e5866e1f23ebcde78f786b38bf",
      "tree": "625f2f48670c2e1720a727d8b3760f568aaaa304",
      "parents": [
        "4f3de352284f0d52716f01e627a9ee49414e9817",
        "f42f15685ee622b1e341c8958f616c17801a1ad0"
      ],
      "author": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Sat Apr 01 20:48:54 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 01 20:48:55 2017 +0000"
      },
      "message": "Merge changes I19384478,I71c4df28,I2e0b48c6,I7fb9b899\n\n* changes:\n  NBLog change timespec to int64_t nanoseconds\n  NBLog: add buffer hex dump\n  Add histogram entries (timestamp and flush)\n  Add unique IDs to log entry\n"
    },
    {
      "commit": "537ad7dab88ee1b489331094a325726a26b8c1b1",
      "tree": "6802a41bd8f10166d42d437b5a4a110e2d17d1fe",
      "parents": [
        "bd0c6b47a93840e166f34308eb7660d81e949666"
      ],
      "author": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Tue Mar 21 16:24:30 2017 -0700"
      },
      "committer": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Fri Mar 31 12:36:33 2017 -0700"
      },
      "message": "Add histogram entries (timestamp and flush)\n\nAdd functions to write these entries into log\n\nAdd functionality to dump them in dumpsys\n\nBug: 36490717\nTest: Write format entries and histogram entries in the log.\n      Verify that format entries and histograms are dumped correctly\n\nChange-Id: I2e0b48c63031e62875c08461b98653ecfe1442be\n"
    },
    {
      "commit": "bd0c6b47a93840e166f34308eb7660d81e949666",
      "tree": "a3656aaed131ed4cef317e58231caeabb2933ca3",
      "parents": [
        "1ca75129a63a1064df311f7c33049d48ac8cdb2d"
      ],
      "author": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Thu Mar 16 13:54:23 2017 -0700"
      },
      "committer": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Fri Mar 31 12:36:00 2017 -0700"
      },
      "message": "Add unique IDs to log entry\n\nBug: 36366838\nTest: add hash entry to logs and display it in dump\nChange-Id: I7fb9b8997e46456331a946e03bfe040c47fa20b8\n"
    },
    {
      "commit": "1bfe09a0b1755a79abd32b41c0dd433b88fc260c",
      "tree": "eec723f657fc89b21f3cfc91b27c68eceac4add7",
      "parents": [
        "a29cd562f6f5839cce7e3be2e547d19c2d27f15d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 21 13:05:56 2017 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 29 11:39:04 2017 -0700"
      },
      "message": "Improve audio logs and dumpsys media.audio_flinger\n\nInclude mFrameCount in shared memory corrupt error log.\n\nFix typo in log for primary audio interface.\n\nInclude the new server frame count in logs for fast tracks.\n\nAlways log when fast is successful for output tracks, as it helpful\n  (was already there for input).\n\nCleanup dumpsys for threads.\n\nTest: builds OK, and logs contain more information\nChange-Id: I2b5b4d700e8eb7c261a3125fb03ddc00bf08537e\n"
    },
    {
      "commit": "293558ad1977e24e65f7ba78f47382d33fc77d64",
      "tree": "125f39f7efcb1c44fde136bdfefeef1bdc8af2a4",
      "parents": [
        "01c10f8cdcd58d1e7025f426a72e6e75ba5d7fc2"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Mar 21 12:19:20 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 24 17:06:30 2017 -0700"
      },
      "message": "AudioFlinger: Improve Thread logging.\n\nTest: dumpsys media.audio_flinger\nBug: 30572472\nChange-Id: I43f72354a6ece045f5f9f664946a406166974258\n"
    },
    {
      "commit": "6fcb1488b835568dd1423ccd5f0b09483b8d9917",
      "tree": "ca9472bc7e1002e75088b621fdf4d61eb194ea0e",
      "parents": [
        "efb7b9b26b966f6440bc8c5126c78c46090bf590",
        "91164e7f94030b3e49a31d88c91d70d4bd358ebe"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 16 23:01:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 16 23:01:32 2017 +0000"
      },
      "message": "Merge \"Use static_assert instead of COMPILE_TIME_ASSERT_FUNCTION_SCOPE\""
    },
    {
      "commit": "886deb506ea2938cfec40fc0dd2bff072850386b",
      "tree": "c766adb78101eaee0cf091d14cbd26f3377f14e1",
      "parents": [
        "1e039394f351ef77592689f32294a1c73840ad0e",
        "d3bb645f0b7f567b033b8664499d685f8ec10628"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 13 16:37:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 16:37:08 2017 +0000"
      },
      "message": "Merge \"Re-format to decrease the maximum line length of files to 100 characters\""
    },
    {
      "commit": "d3bb645f0b7f567b033b8664499d685f8ec10628",
      "tree": "1f1093b9594df4691cc99a2e2c81bc67ea0de136",
      "parents": [
        "0012417ddc1320c6df79258266da1e869036b211"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Dec 05 18:14:37 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 13 16:36:17 2017 +0000"
      },
      "message": "Re-format to decrease the maximum line length of files to 100 characters\n\nTest: compiles OK\nChange-Id: Ibe663032cd390ed2bcca6dc921d47732e6e15e21\n"
    },
    {
      "commit": "1e039394f351ef77592689f32294a1c73840ad0e",
      "tree": "551c0992185c35afed61e1e9dfeecee98756a7a3",
      "parents": [
        "00bf9d385f4dbfd11debd89b9fe7d5547aea5956",
        "6bf707f4c0752643757a7389384817da41d34fab"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 13 16:34:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 16:34:23 2017 +0000"
      },
      "message": "Merge \"Rename audio_utils/conversion.h to mono_blend.h\""
    },
    {
      "commit": "91164e7f94030b3e49a31d88c91d70d4bd358ebe",
      "tree": "7dd1d0ea1f841ff949f0fb40afef6471d15690ea",
      "parents": [
        "0e4b8e9cb1b422195c49be49b48d039aa0814acf"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 15 15:55:01 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 13 09:01:58 2017 -0700"
      },
      "message": "Use static_assert instead of COMPILE_TIME_ASSERT_FUNCTION_SCOPE\n\nTest: builds OK\nChange-Id: I5923dce96e43d7107f1d8e3145ad4bb5eca261e7\n"
    },
    {
      "commit": "00bf9d385f4dbfd11debd89b9fe7d5547aea5956",
      "tree": "725823dd80a9b4f60b05fb047ae248156a3acc7c",
      "parents": [
        "6b57f954a732129479f3e0604bed7fa40e36f3a2",
        "60fd12ab581e151522cf6d73f86031acf8fb46e7"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 13 15:57:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 15:57:13 2017 +0000"
      },
      "message": "Merge \"FastMixerState was missing a LOG_TAG\""
    },
    {
      "commit": "6bf707f4c0752643757a7389384817da41d34fab",
      "tree": "4b5fc278ee8a74ae100b2aadea46a6f9b4c2da1b",
      "parents": [
        "0012417ddc1320c6df79258266da1e869036b211"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 23 16:53:58 2017 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 10 15:34:17 2017 -0800"
      },
      "message": "Rename audio_utils/conversion.h to mono_blend.h\n\nThere is only one function declared in that header file, and it is\nmono_blend, so a more specific filename may be easier to understand.\n\nTest: compiles OK\nChange-Id: Ie2aec6c706b1822581b34d3702818b8200a1db8a\n"
    },
    {
      "commit": "8649ed0e5096ae2f47e8015ac43dd9e874976245",
      "tree": "450fd7703b92e65b7aa73370de29af684bd7c825",
      "parents": [
        "6bf6de375299db41d5510dca3321ebe42ceeb007",
        "cd0677fdfde5d4962c432b698faba222878e219c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 23:11:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 23:11:02 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334 am: 5562d70451 am: 3fb4149ed2 am: 78ec332732 am: 9262496af9 am: 12b5b3b008 am: dfecfdb28f am: 3c93457cfc am: a447516329\nam: cd0677fdfd\n\nChange-Id: Ie1e192c8b0013797c9e08194b6d4bf75ae536538\n"
    },
    {
      "commit": "3c93457cfce2c82ee17b226c46942d133ed24b61",
      "tree": "ab4b48798998243c5f00b5dc3a7eda2bce5a6411",
      "parents": [
        "5b8300076839ec3628db9fe44f1eca6e7d3e2acf",
        "dfecfdb28fbc99b87588a9db0dd5dde9d621ea30"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 23:00:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 23:00:31 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334 am: 5562d70451 am: 3fb4149ed2 am: 78ec332732 am: 9262496af9 am: 12b5b3b008\nam: dfecfdb28f\n\nChange-Id: I0b4de04aab9058db4beb6346c00208b697ed4f78\n"
    },
    {
      "commit": "dfecfdb28fbc99b87588a9db0dd5dde9d621ea30",
      "tree": "5a265de943f39ce2f164ea95a9800610aab3d26e",
      "parents": [
        "028e36fe3261f07544af356ac61286fe9d9213ce",
        "12b5b3b00803eac0ab5b6c7ff09b8aad3d78c2e1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:56:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:56:31 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334 am: 5562d70451 am: 3fb4149ed2 am: 78ec332732 am: 9262496af9\nam: 12b5b3b008\n\nChange-Id: I9a46a6aaa2ff3afc4be729f7877703d1bf97faa7\n"
    },
    {
      "commit": "12b5b3b00803eac0ab5b6c7ff09b8aad3d78c2e1",
      "tree": "163be6a31a0ee086d52b40564d5576c523665208",
      "parents": [
        "437d60bffb4217f997298a281d08c0d8fce7f562",
        "9262496af91c790d865e31a1f550410f088ba642"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:53:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:53:00 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334 am: 5562d70451 am: 3fb4149ed2 am: 78ec332732\nam: 9262496af9\n\nChange-Id: I8df7a4c1308afb39a1f1a37a588e70e049a868fa\n"
    },
    {
      "commit": "9262496af91c790d865e31a1f550410f088ba642",
      "tree": "151e606862444fadf76559966f9d330ca080bd06",
      "parents": [
        "3b57c387ed039efd227e069c8f46aed2a15abf27",
        "78ec332732fa4e1669eb1a791da31103eb379f5e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:49:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:49:30 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334 am: 5562d70451 am: 3fb4149ed2\nam: 78ec332732\n\nChange-Id: I50a7b9f86a494bff6aa43e719e5c819eb0c191ae\n"
    },
    {
      "commit": "3fb4149ed2983be6f0f9a32fff2646f37eca6759",
      "tree": "daab4eee4244294df72d4605c605fc740a811bd8",
      "parents": [
        "1dfa5905430f351843272dd53740d9deca957c7b",
        "5562d704519b5662d2165d688c50f85ff3d7aedd"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:42:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:42:59 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1 am: 6d4b5fc334\nam: 5562d70451\n\nChange-Id: Ia73c4a1d2911cf930700bf796fc7ee18d94500fe\n"
    },
    {
      "commit": "5562d704519b5662d2165d688c50f85ff3d7aedd",
      "tree": "41c43929eef9526fecbd100c893b1655165512c7",
      "parents": [
        "292dc7e025e983b4dfdf50961601c713ee9a2ec1",
        "6d4b5fc3344cff6f0c1feed36e558144b2c7355c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:39:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:39:59 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev am: 51a3483ec9 am: 5dc0e88cc1\nam: 6d4b5fc334\n\nChange-Id: Ie47307f09c5fcb49f81a2d034c42d69b8417c9a6\n"
    },
    {
      "commit": "de6072164a8d2bca2cd404741a121344a3e8bc33",
      "tree": "c81db7db73896f62bab63d3349e08277f2af7b2a",
      "parents": [
        "daaabdcaac696870285d8ad83502fe4319c5e719",
        "737754e97a7b33909f47b2d19cb3544f3b598413"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:36:28 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:36:28 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE AudioFlinger: Check framecount overflow when creating track\" into klp-dev am: e0da30dc57\nam: 737754e97a\n\nChange-Id: Ide9fb3f4955a31ade22f99c299f441d8413c1b88\n"
    },
    {
      "commit": "5dc0e88cc14128d54bae2297c0ee1bac2042b6a1",
      "tree": "5a146d2eab3e3afc789d151ea6e5f6d80e7bd4fe",
      "parents": [
        "1760d73fbc270e64b3804fedacaf73029140d612",
        "51a3483ec97434c29113ef3c6a04480e0cdafaf7"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:32:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:32:59 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Check framecount overflow when creating track\" into lmp-dev\nam: 51a3483ec9\n\nChange-Id: I6fe5fb0a7142218b16c84bc1966a84ac920fd70a\n"
    },
    {
      "commit": "60fd12ab581e151522cf6d73f86031acf8fb46e7",
      "tree": "75498b8a13effabaf172bb62acf657334568765b",
      "parents": [
        "0012417ddc1320c6df79258266da1e869036b211"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Feb 21 13:06:16 2017 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 10 14:31:14 2017 -0800"
      },
      "message": "FastMixerState was missing a LOG_TAG\n\nTest: logs in FastMixerState module have the correct tag\nChange-Id: Id38826754e35803a72376a9198d2839fe195b0b2\n"
    },
    {
      "commit": "89e5a2b102b484fe19dbda2a0b118edfefc70241",
      "tree": "7d569d72d3a2e16c77a10e08de04746fab6ad52e",
      "parents": [
        "ca47e6d574cd3d02821b87657a80d84b328d4f26",
        "dcdfaecc1fa630a799e1fdb508a9b92da55abc36"
      ],
      "author": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Thu Mar 09 22:55:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 09 22:55:06 2017 +0000"
      },
      "message": "Merge \"NBLog periodic merging thread\""
    },
    {
      "commit": "dcdfaecc1fa630a799e1fdb508a9b92da55abc36",
      "tree": "407138ab3b7cef085ca4f283ea24378910ce775e",
      "parents": [
        "cca34c05ca2d5e7ac6c2fbee3ac2db88f059143d"
      ],
      "author": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Tue Feb 14 10:18:39 2017 -0800"
      },
      "committer": {
        "name": "Nicolas Roulet",
        "email": "nicoroulet@google.com",
        "time": "Thu Mar 09 12:30:24 2017 -0800"
      },
      "message": "NBLog periodic merging thread\n\nBug: 35468674\nTest: no change in functionality, everything works as before\nChange-Id: Id2cea243bc15767ca6803c9505bf23a18411500e\n"
    },
    {
      "commit": "22fd9de35b387f1ed808f4fe6e0b87eac3e82690",
      "tree": "693af83a6fce5b6bcab600a3b9c3c279c9a7d16f",
      "parents": [
        "f687b91129586fd1212bcb041d3f9aeb84635eb5",
        "18b570146c971fe729c391bfbb869391084e623d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 08 16:42:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 08 16:42:34 2017 +0000"
      },
      "message": "Merge \"audioflinger: add standby() method to MmapStreamInterface\""
    },
    {
      "commit": "18b570146c971fe729c391bfbb869391084e623d",
      "tree": "44427ed969851fc0e8638b508e265d6d039556b9",
      "parents": [
        "421c434e615a417d9f5443af9e52a30e3b29c256"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 13 16:23:52 2017 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 08 00:33:34 2017 +0000"
      },
      "message": "audioflinger: add standby() method to MmapStreamInterface\n\nBug: 33398120\nTest: open/start/stop/close MMAP no IRQ stream for capture and playback\n\nChange-Id: I48ec202a71565f759c441c2a835d8c8190e76334\n"
    },
    {
      "commit": "05d19b08f3affa6fa8407e779f67e7ad1c1ca84f",
      "tree": "d2c99a03302a60a9ab3db1a9f5cc90640686009a",
      "parents": [
        "4ec4e6b1073b0dc1b608aeeaf4e3129ea1a725c8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 28 16:28:19 2017 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Mar 03 12:37:45 2017 -0800"
      },
      "message": "fallout of cleaning-up libutils includes\n\nTest: run \u0026 compile\nBug: n/a\nChange-Id: I63585ed5a764b9ce7af2187b79ca0c83e683fd7f"
    },
    {
      "commit": "6141fe19f1e16330dab3632cf8b93e54b6417164",
      "tree": "7618a13b4abf2f39be0e6a1da79034a948e76e87",
      "parents": [
        "d48b3a7a3bd95d9efb157ebbfc0f11dc8d7a87fb",
        "869fab171971f350d5adf4680608ff39049270c3"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Feb 28 16:46:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 16:46:35 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: fix Effects handling for MMapThread\""
    }
  ],
  "next": "869fab171971f350d5adf4680608ff39049270c3"
}
