)]}'
{
  "log": [
    {
      "commit": "ab7ef300b74904bce6c5c810d9e5679abfa582e6",
      "tree": "dadb05ba8da176c046139ca43c3fae48a14191c3",
      "parents": [
        "1f2bfd3ac9d61982acb348d2c78f95c7d4b0bf05"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue May 15 19:35:29 2018 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed May 16 18:49:09 2018 -0700"
      },
      "message": "Move ServiceUtilities from audioflinger to libmediautils\n\nTest: Play Music, Play Movies, Camera, Photos\nBug: 79485140\nChange-Id: Ib8382547828e386024145c416321d24e4af182db\n"
    },
    {
      "commit": "523b3047af443d0a51141ddabd328d52be5a23b0",
      "tree": "2596b9d310c3c59d391634d131d2ae866ddf1d47",
      "parents": [
        "1e0c671e14660588410560a55c34718bb8af3b22"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Sep 13 13:03:08 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Sep 15 13:29:26 2017 -0700"
      },
      "message": "aaudio: keep track of streams using strong pointers\n\nMaintain strong pointer to service stream during service calls.\nUse simple AAudioStreamTracker instead of complex HandleTracker.\n\nBug: 65280854\nTest: affects all MMAP streams, run all CTS tests, etcetera\nChange-Id: I3d2ed8b588ea39c216dacd4dea503b11c33f36f3\n"
    },
    {
      "commit": "39f02ddfbfd9313370d862a6c4727826379a319a",
      "tree": "aa5c61a50fff59d92db99619edd67b31e9d938c3",
      "parents": [
        "ee079fe295c41f89c2ac6316e99ee10847fb78fd"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Aug 04 09:13:31 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Aug 24 14:59:25 2017 -0700"
      },
      "message": "aaudio: fix EXCLUSIVE mode interfering with SHARED\n\nThe MMAP endpoints were not tracked by the EndpointManager\nso it could not broker EXCLUSIVE access. To fix this the MMAP stream\nwas refactored to use a per-client stream and a per-device endpoint.\n\nCleanup close() of MMAP stream.\nAdd AAudioServiceEndpointShared.cpp.\nExtract AAudioServiceEndpointMMAP from AAudioServiceStreamMMAP.\nTrack MMAP endpoints so we can manage EXCLUSIVE and SHARED access.\n\nBug: 64494572\nBug: 64310586\nTest: see bug, use write_sine to play a shared stream and a excl stream\nChange-Id: I5053193abfd9b8a69a2f7e1110739d65e2af5d64\nMerged-In: I5053193abfd9b8a69a2f7e1110739d65e2af5d64\n"
    },
    {
      "commit": "11e8d335b1da528ee771b19b63df23ae6fd52f41",
      "tree": "b5679b54a7acfbdf455c95355da8c0b9a4dbc51c",
      "parents": [
        "1fa57e8d3149703e794997edffa4e03bfb0a6887"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed May 24 09:59:02 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Jun 29 21:40:21 2017 -0700"
      },
      "message": "aaudio: close MMAP stream if client dies\n\nNotify client when audio service dies. Clear connection.\nNotify AAudio service when client dies. Close client streams.\n\nUse sp\u003c\u003e to track ServiceStreams.\n\nBug: 38267698\nTest: test_no_close.cpp\nChange-Id: I5f1699ed3b8b7bd960947c0028a89ca8419ce7a0\n"
    },
    {
      "commit": "47c5e530b01b620a4f65efa121a938789a6823b4",
      "tree": "b3285b6642ee395668ca3b0525321991c971d405",
      "parents": [
        "a88051816bc629eb20de8f4cecf2d4a4c1cbfc4a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 26 18:28:00 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jun 28 15:50:37 2017 -0700"
      },
      "message": "AAudioService: add dumpsys capability\n\nTest: adb shell dumpsys media.aaudio\nBug: 38396780\nChange-Id: I8b5c421bdd1b3228d8140816a68740709aa9757b\n"
    },
    {
      "commit": "a2f296e06bee54cc83130a17f136cab1006f55d5",
      "tree": "d3545a9d1aafb8485b2addd671f51079308e5d2a",
      "parents": [
        "ffd80b92df8521dd28ab5fd08b1098a58cb280e8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 21 18:51:47 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 22 10:22:09 2017 -0700"
      },
      "message": "aaudio: implement IPlayer for MMAP playback streams\n\nMake AudioStreamInternal derive from PlayerBase to\nprovide playback and volume control via IPlayer interface.\n\nBug: 62027849\nTest: verify aaudio playback in MMAP mode and registration of aaudio\nplayers in AudioService when active\n\nChange-Id: Ia0878d46637c0a954d8a6259868a2d3bccf19119\n"
    },
    {
      "commit": "87c9f646a94259d7c321c3b3d5947fa1778f5ac2",
      "tree": "89c57e19157557b2cb5d7aca7bc1371e530f734c",
      "parents": [
        "da6b9eafb5de2434717aea264ad61b025bc4fe7f"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed May 17 07:22:39 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed May 24 15:44:23 2017 -0700"
      },
      "message": "aaudio: lower latency using MMAP capture\n\nMMAP can be enabled by setting system properties.\n\nBug: 38267780\nTest: input_monitor.cpp\nChange-Id: I5e86fd1d9baef4fe59837ccbca7971acbb54d8b5\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "e2fbb59e729f6c3cade3b531f6f6411417ccbf40",
      "tree": "519ff6ad94d7465c7672e6ac3dd73b4d892dbbfe",
      "parents": [
        "441f2ccb103fdb6fe6409eac870ea30ee3ccfb33"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon May 01 15:05:52 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu May 04 11:45:08 2017 -0700"
      },
      "message": "aaudio: add setPerformanceMode()\n\nThe performance mode affects the latency and the implementation of the\ndata path.\n\nMMAP is still disabled for now.\n\nBug: 37867485\nTest: write_sine.cpp\nChange-Id: I9bf5d5d13d1047d5ace69bd5ebdce7b6d65c14e7\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "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": "f53e613b3dedab3ecada2c93d8846233c442d129",
      "tree": "b4589d9099325e9d57d729b5f60cf4c4e8260e50",
      "parents": [
        "52a93bbb3b57d1a730aedaee0b9ec22e4c71551d"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Feb 09 13:30:22 2017 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 10 19:14:40 2017 +0000"
      },
      "message": "libaaudio: change name from liboboe\n\nBug: 34749573\nTest: CTS test_aaudio.cpp\nChange-Id: I7e2b621488047f0798ca6f2fc00d2b5fed2bf015\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "5ed503c7a66c90f93759c90237a9b432dbd93f9f",
      "tree": "e8868af7a85c42ad915cef8ec05ca642937d25ba",
      "parents": [
        "82e1a5e928b6b73c6b568ed8bc4d0b81e503afd8"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Feb 01 09:38:15 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Feb 01 12:20:40 2017 -0800"
      },
      "message": "liboboe: rename Oboe to AAudio\n\nAll of the edits were done using scripts in media/liboboe/scripts.\nThe conversion is done using SED, which is called from\nconvert_oboe_aaudio.sh\nThe conversion can be reverted when debugging using revert_all_aaudio.sh\nThe string substitutions are in oboe_to_aaudio.sed\n\nBug: 34749573\nTest: cts/tests/tests/nativemedia/aaudio\n\nChange-Id: Ia10b34472a90df2652b87607c99156e9084e57aa\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "dec33abe3739b2116ef6fbac36f7ca5d26f9d190",
      "tree": "1c64bd04521ab7dee9bb21b8d5d7bd0435ca302f",
      "parents": [
        "a77cf16037e73d1bee1852e13d92c9c7521de376"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Jan 17 14:48:16 2017 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jan 30 17:18:08 2017 -0800"
      },
      "message": "OboeAudioService: add thread to service for passing timestamps\n\nCleanup several TODOs.\n\nTest: test_aaudio in CTS\nChange-Id: I7fc956b6a21cbb592f98e1e5a8f43ebd6926d796\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "2355edbcacfcb6e852a8707d893aaca788d42fdc",
      "tree": "c01ff46849cd0f88cc7f695a81073f2c40c94a47",
      "parents": [
        "cac8d4ea54ece7aeb4b2ffa7aafd06fbec731a62"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Dec 26 13:54:02 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Jan 18 08:27:08 2017 +0000"
      },
      "message": "OboeService: initial commit\n\nThis builds a standalone service that is easy to test.\n\nBug: 33269952\nTest: test_oboe_api\n\nChange-Id: I1890b1b974e728c2c0c15e24aa02121c2774bd56\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    }
  ]
}
