)]}'
{
  "log": [
    {
      "commit": "7aa0ccbcb6e8d35c894356015c23574619bcf648",
      "tree": "dc06cec53d749f416621f685f1e8c0ebff7bc509",
      "parents": [
        "7124c1985b535a7862cd8f2706386a2a0ba676b2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 28 11:12:52 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 28 14:16:19 2017 -0700"
      },
      "message": "audioflinger: fix mmap device selection\n\nPreserve initial device selection on mmap streams in order to\nreuse it when a new client starts on the same stream so that\naudiopolicy does not use the default route for the new client.\n\nBug: 64981153\nTest: verify AAudio playback over MMAP with forced device selection to\nspeaker while headset is connected.\n\nChange-Id: I7c117c3c0f8e7ad08f8e63ea804c19ce21808874\n"
    },
    {
      "commit": "7504b9eb4561df88550f874cf0ce95b6f4d09927",
      "tree": "0991a83bf78a67170a0707d8e300578c9c46727f",
      "parents": [
        "2c8c51d4aeffc4d561a67b06d20fff67d9a5a5aa"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 15 18:17:26 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 16 08:29:05 2017 -0700"
      },
      "message": "soundtrigger: require RECORD_AUDIO permission for DSP hotword\n\nCheck android.permission.RECORD_AUDIO permission in addition to\nandroid.permission.CAPTURE_AUDIO_HOTWORD for DSP hotword operations\nas those require access to device microphone.\n\nBug: 62265680\nTest: check \"OK Google\" detection with and without DSP\nChange-Id: Icba2520331164bcd618e91916ca701e677d419b8\n"
    },
    {
      "commit": "9fabbf8a8ae755c3c07637f8ca7677c63a1607bb",
      "tree": "9f3be1ca67e5ea192cdd9b2c289c9ebe6095218d",
      "parents": [
        "909f4a6cada3d5fb7594da7d1809ba62d1b47340"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Aug 03 12:02:00 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Aug 03 15:27:38 2017 -0700"
      },
      "message": "audioflinger: prevent crash in MmapThreadHandle destructor\n\nThe mThread smart pointer was getting cleared while the\nthread was still in use.\n\nBug: 64316921\nTest: use input_monitor.cpp, see bug for repro steps\nChange-Id: I46095b4e67648208a2fb979696fc2d655432448b\n"
    },
    {
      "commit": "25bae7bb6f4737bc78891eaaade5bdd01178dbd9",
      "tree": "a6cffb9fcdbba743cf38641710d183f0ec04b0ca",
      "parents": [
        "94c68c62f02e635d395b4811c0c5089507c66be7",
        "e6e9a4811dc43e5c393b2c45eca64d1f1608e8d0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 27 01:52:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 27 01:52:33 2017 +0000"
      },
      "message": "AudioFlinger: fix set parameters on mmap streams\nam: e6e9a4811d\n\nChange-Id: I557a5a8272f606cd4264f7efbe65e10af64a1f6c\n"
    },
    {
      "commit": "e6e9a4811dc43e5c393b2c45eca64d1f1608e8d0",
      "tree": "1eb1c7d9c18b8eeb1739f6383aa7cd9aef030b83",
      "parents": [
        "dfcfad27da2216229b0141a736218ca06340ed5c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 25 19:26:02 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 26 14:39:19 2017 -0700"
      },
      "message": "AudioFlinger: fix set parameters on mmap streams\n\nBug: 63935167\nTest: Verify capture from USB mic on mmap input stream\nChange-Id: I416eb90ef0e9d51d54f6450c374c086ab078d288\n"
    },
    {
      "commit": "f22733ea799888bd281ba558d953cf5741f7b765",
      "tree": "c5dff42e9fdb2928a05e639ef757e9d886f32b16",
      "parents": [
        "85b3dfe424f7c1216f86fb78635895a439693e9e",
        "31b16502cfe969e8f4d74efe6c6b531958ddcaf9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 19 22:51:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 19 22:51:33 2017 +0000"
      },
      "message": "audioflinger: enable volume listener on direct outputs am: 3e4de77666\nam: 31b16502cf\n\nChange-Id: I0fc13815954933454665dd3765f88be7a863e7a7\n"
    },
    {
      "commit": "3e4de776665ff287cfd487ca4c7df87fbf73efa4",
      "tree": "4c2a96d88ce1df146906cfabc3178a531810c60d",
      "parents": [
        "719e24e82381cccdcb84524c5bef9a3b3ad7c1b4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 16 16:55:08 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 19 20:19:58 2017 +0000"
      },
      "message": "audioflinger: enable volume listener on direct outputs\n\nAlways allow effects with no process function on any output\nthread type as there is no impact on performance and no risk of\nthe audio properties not being supported by the effect.\n\nBug: 63015903\nTest: place a Skype call over SCO and verify the volume listener\ncan be created.\n\nChange-Id: I99db7802cec88a618808e500b74f4c78165199fe\n"
    },
    {
      "commit": "4ecf14419c0857986c1cff6c59cd1f71a9c6013f",
      "tree": "a6b56266b2e1dbbc514244a3b2d6679b5bf10e59",
      "parents": [
        "c7f764ae1917783ac1721067cf4085c3271dc821",
        "03e1cd73c64654d096243325ac3e6dc3f0b6e2fe"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 18 00:41:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 00:41:56 2017 +0000"
      },
      "message": "audio flinger: fix AEC and NS suspend logic am: d8365c54d0\nam: 03e1cd73c6\n\nChange-Id: I1df3309a9170f104016b969b285f47179a4ae55d\n"
    },
    {
      "commit": "d8365c54d049aade9e02ccae722f311f846cad9a",
      "tree": "b0678982480e7a46b21fd0a855fd1cfd242ffdb1",
      "parents": [
        "30bf42ca7242f5f7849cbe7ce61fc994b88c5b56"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 16 15:27:05 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 17 15:26:56 2017 -0700"
      },
      "message": "audio flinger: fix AEC and NS suspend logic\n\nMake sure we suspend/restore AEC and NS only when the suspend condition\nactually changes to avoid mismatch in number of suspends/restores\ncausing the ref counting mechanism to leave the effects in suspend mode\nwhile they should not.\n\nAlso clear the suspend state on an effect session before parking it in\nthe orphan chains list so that it is in default state whne attached to a\nnew record thread.\n\nBug: 63015903\nTest: verify that switching BT SCO on/off with Duo enables or disables\nAEC and NS accordingly\n\nChange-Id: I4d0f0bf818deca3952da3c67bb7e83cb500429c7\n"
    },
    {
      "commit": "9584601561ad1d3b4fc1b0035c3f3e5bbd3e499e",
      "tree": "0f3268ed27ec2f843c79924a4b779afa06fc2b98",
      "parents": [
        "6c3359f522fa5c528d7eef5deaaf0d2c9c365089"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Jul 17 10:34:02 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Jul 17 10:56:37 2017 -0700"
      },
      "message": "Append additional owners to projects\n\nThis releaves reviewing burden from the frameworks/av owners.\nNote that the lists of owners are inherited from the parent\ndirectories thus the people listed in these files are owners\n*in addition* to people listed in frameworks/av/OWNERS,\nand frameworks/av/{media|services}/OWNERS.\n\nChange-Id: I5e2db1c40cb807b906b2701fe446c874a8d19983\nTest: not needed\n"
    },
    {
      "commit": "bf887fd99efdd1b5ebc263726e130bc47242635e",
      "tree": "99ea318a025401dd477133a27be318c1b7799c9b",
      "parents": [
        "0f05641305f557a1a91c336b8999f2569395aa0b",
        "c56bb398f4a1a391b540e2c6fe2862fde0248b3c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:08:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:08:09 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538 am: dd36008b78 am: e68bb33712\nam: c56bb398f4\n\nChange-Id: Ibcabc87baa8fdfba663020368b779983cdbf0952\n"
    },
    {
      "commit": "c56bb398f4a1a391b540e2c6fe2862fde0248b3c",
      "tree": "8e32fc821f2cb2bd860129c6930231a75bc1c3c8",
      "parents": [
        "4a9524812b602399ceac9e2ce24ffe1e3ad58f88",
        "e68bb3371238e32e45cd3133a143f7a096aa9c2b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:04:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:04:08 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538 am: dd36008b78\nam: e68bb33712\n\nChange-Id: Ia8dd203330a310795c71282386ed527f9eb7267f\n"
    },
    {
      "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": "e68bb3371238e32e45cd3133a143f7a096aa9c2b",
      "tree": "1d9ee9962cff59ef4762cfb07385c1637e5b4da7",
      "parents": [
        "aee0c0b5080ecbb3cc06e78daf8538bef8e9416d",
        "dd36008b782ec1da0ded327dc51292d102c690d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:00:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:00:06 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: I4ffd95bcaa4dd9a6637c93e85d4c3c18c0a7f89f\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": "2ca3dd3338d861ad844306c6efdbc57510671dfe",
      "tree": "882d455a39907bcda7aa6e968475963e8922a0ba",
      "parents": [
        "f977174113bd51555b731f377ff295c881003edf",
        "a8a8a47da86e181d835eab7f858d6b1d2c3a8357"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 14 00:52:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 14 00:52:10 2017 +0000"
      },
      "message": "Merge \"Restored audio onStateChange log\""
    },
    {
      "commit": "a8a8a47da86e181d835eab7f858d6b1d2c3a8357",
      "tree": "a5a3c4afcd188433b61e22c9dcaa267544810743",
      "parents": [
        "41cad59d28749b397c35a246a670603cd311be19"
      ],
      "author": {
        "name": "Sanna Catherine de Treville Wager",
        "email": "scwager@google.com",
        "time": "Tue Jul 11 09:41:25 2017 -0700"
      },
      "committer": {
        "name": "Sanna Catherine de Treville Wager",
        "email": "scwager@google.com",
        "time": "Wed Jul 12 14:45:13 2017 -0700"
      },
      "message": "Restored audio onStateChange log\n\nCalls flushTsSeries when a state change was detected\nto avoid logging idle audio time as a buffer period.\n\nTest: dumpsys media.log\nChange-Id: Ia33bec8829dcd5d2de5c40f904e5ea19c5a2b453\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": "739c8b9811f8907acfcd4d8eca7276924410a4d0",
      "tree": "6dc4ffe808fe9c5a038e8e71fbdaef76e8f17688",
      "parents": [
        "8280e4156628d53c0a90c405fa57d4c40c33b62b",
        "7c126c23f4f1d70454e2a3564cd55fd000af34bd"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 19:50:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 19:50:47 2017 +0000"
      },
      "message": "Merge \"audioflinger: Fix missing \u0027return\u0027 statement in \u0027getParameters\u0027\" into oc-dr1-dev am: 4a907a1760\nam: 7c126c23f4\n\nChange-Id: Icdb798f6101479cc3d63e7bcd2309f660d63dd72\n"
    },
    {
      "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": "a54f1283fdd9adbd64ecca4e14af56aaa0e8c825",
      "tree": "cdadd19276119f775480482778c2df15a6ae264f",
      "parents": [
        "20e6916035865710b7a30ac7f2eac1311e2c2e70"
      ],
      "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": "Tue Jul 11 18:21:40 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\nChange-Id: I86151bbb637ff172d2fd5f813056eab13a7bcd3c\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": "2b01f009428797ee9154649411a64b522946e966",
      "tree": "4a92acd2cccf15d8d916bbdaa7fea1265911ab93",
      "parents": [
        "38217e0d53b14e634243d1ce36fa5d3267c71056"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 05 12:01:36 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 05 12:45:52 2017 -0700"
      },
      "message": "Replace old audio time conversion macros and functions\n\nTest: Play Movies, Youtube, CTS\nBug: 25569135\nChange-Id: Ib6e304f149c381dc7af7f4aa959c3d79d7bdb2aa\n"
    },
    {
      "commit": "c6f99734e8aadb2a8930bcb17e745af9bc4a0b13",
      "tree": "e0bca37242bf7ebc824ee5480dda467f3c54a5cc",
      "parents": [
        "52c1aa75a7c2d46467590f7fe8c2f19cb17b50a4",
        "d4a68f6a2102282ede5331c47df8f04188bdffb8"
      ],
      "author": {
        "name": "Sanna Catherine de Treville Wager",
        "email": "scwager@google.com",
        "time": "Mon Jun 26 22:23:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 26 22:23:44 2017 +0000"
      },
      "message": "Merge \"Removed LOG_HIST_FLUSH\""
    },
    {
      "commit": "d4a68f6a2102282ede5331c47df8f04188bdffb8",
      "tree": "0c146e872168b10bcffb9e82f6d8f90ef3e4a104",
      "parents": [
        "d0dfe43a46bd1705c11b405f5f376524391bfb1a"
      ],
      "author": {
        "name": "Sanna Catherine de Treville Wager",
        "email": "scwager@google.com",
        "time": "Fri Jun 23 16:09:41 2017 -0700"
      },
      "committer": {
        "name": "Sanna Catherine de Treville Wager",
        "email": "scwager@google.com",
        "time": "Mon Jun 26 10:45:16 2017 -0700"
      },
      "message": "Removed LOG_HIST_FLUSH\n\nTurning audio on and off does not cause this event to be\nwritten to the buffer. Now, a call to dumpsys media.log\nsimply writes to console an analysis of the data in memory,\nand does not delete it afterwards.\n\nTest: dumpsys media.log\n\nChange-Id: Ie75fb27ec4050fb3891635f4c7933196cfd03643\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": "9ae8c597d9a0c8cedc4047fc4716d7361453f6ab",
      "tree": "4c8824f15e744d82243f4a3caab1d67b208afd47",
      "parents": [
        "5af194cf79f280034430f2f65b02a89f261dbbc8"
      ],
      "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 08:04:19 2017 -0700"
      },
      "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\nChange-Id: Ic8be42e1735690eb00c811ef0cb8b5abb36172d6\n"
    },
    {
      "commit": "2c6c3bb76b2fa18ed3536331a1700250bd04c7ce",
      "tree": "2bdd2a6e5f8a2ba988a41d76b390827bfa68a964",
      "parents": [
        "2da80c13523113c4d93c3fe1b11ac16cd22b6d0e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 14:01:45 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jun 22 15:01:28 2017 -0700"
      },
      "message": "AudioFlinger: Log Record and MMap thread events\n\nAlso update track dump for better grouping and consistency.\n\nTest: adb shell dumpsys media.audio_flinger\nBug: 62700410\nBug: 62701585\nChange-Id: I3a6e76eac871cb08ff14d45f7d3992a6e7fba045\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": "0a6a9bfad0a6ee8b1cb9e7373ce37070b6b57c32",
      "tree": "5cf9ebaae4bb6f699227422cbb737c55ab16274e",
      "parents": [
        "36aa8a5f2bbdd4f3b8e05be26d87ce74db42f0c0",
        "1f3a28ec6ba9bafa4e0a6f0ae0838c392ce43b73"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 17:54:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 17:54:49 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: Ic8af8573530b683e045f87b97cacacecc39559b6\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": "ef48dc956a4fef50688090ae3e0036ffbf0221fe",
      "tree": "5c326c25fc9c03b21d692b285e5dabac6c564126",
      "parents": [
        "45b13fef887dc685b11fe37885191d172c4f2368",
        "8fe68036c2a670abb9eb0cc67ab9830c2c23de81"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jun 15 20:19:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 15 20:19:46 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size\""
    },
    {
      "commit": "8fe68036c2a670abb9eb0cc67ab9830c2c23de81",
      "tree": "f1ab9bb9ef108d9812188a38c021cd5ad6b184c6",
      "parents": [
        "12852bd16b84f0157cf500389304ab1e35993a81"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 05 16:17:51 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 13 12:35:16 2017 -0700"
      },
      "message": "Track: Check buffer size\n\nTest: Native POC\nBug: 38340117\nChange-Id: Ia7edd9a802905214a27961dbcec6352f6ef98f73\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": "bfa64966624c693be54cf9b9761f5124fc16fc24",
      "tree": "3a671a99fb593cca38af57250ae189486054c686",
      "parents": [
        "12852bd16b84f0157cf500389304ab1e35993a81"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 14:43:19 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 14:52:34 2017 -0700"
      },
      "message": "AudioFlinger: Enable input hal logging\n\nTest: adb shell dumpsys media.audio_flinger\nBug: 62307033\nChange-Id: I9e7816e6cd8258b76379d511f1c96b81e3fe736e\n"
    },
    {
      "commit": "8adc80866b6cc1bb6be62c1998dd424f1f339dea",
      "tree": "fa840e440587ad5641498bd6362d3bddb12777ce",
      "parents": [
        "000896fcb6e4ce78dbf72ecba8364c6727640d1f"
      ],
      "author": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Tue Jun 06 15:59:44 2017 -0700"
      },
      "committer": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Wed Jun 07 05:01:34 2017 +0000"
      },
      "message": "Fix a clang-analyzer-cplusplus.NewDelete warning.\n\nThis fixes warning: Argument to \u0027delete\u0027 is the address of the local\nvariable \u0027inBuffer\u0027, which is not memory allocated by \u0027new\u0027\n[clang-analyzer-cplusplus.NewDelete]\n\nBug: none\nTest: The warning is gone.\nChange-Id: I6c954a679ba22e0d7859caaafce24f4e50b0391d\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": "0094fd70678b901b8ffd92bc4a15c272f9ce28f0",
      "tree": "beab53f4d02fd0fb583ebdaf651d3dc2aafbd7e8",
      "parents": [
        "d2b26cd85d54b5258bfd0296313c07e80bee1957"
      ],
      "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": "Fri May 26 21:49:52 2017 +0000"
      },
      "message": "Android.mk: remove $TOP in LOCAL_C_INCLUDES\n\nTest: make systemimage\n\nChange-Id: I5f83786afe3f2c65819b127b041cb74fc4c989ac\nMerged-In: I5f83786afe3f2c65819b127b041cb74fc4c989ac\nSigned-off-by: YOUNG HO CHA \u003cganadist@gmail.com\u003e\n(cherry picked from commit 2ee7aab4a39139a86a24ca14f718eb20a1b355db)\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"
    }
  ],
  "next": "0b9e783197bcd5e5866e1f23ebcde78f786b38bf"
}
