)]}'
{
  "log": [
    {
      "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": "00f5e1ab711371c5cf0ef3a92920982714730401",
      "tree": "24d4dfdf9e5f4f8065f0b2574efe0fc7189a7539",
      "parents": [
        "fdb3f0a8c33b8a02c9274c84293b70929c1a1da6",
        "23b206dbf8828c7ddddfb7f3029995e63a50cc7e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Apr 26 23:58:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 26 23:58:09 2017 +0000"
      },
      "message": "Merge \"AudioMixer: fix assertion for multichannel playback\" into oc-dev am: b0cc0bc266\nam: 23b206dbf8\n\nChange-Id: Ic4daba25135f4588fe25455609a524a21452a316\n"
    },
    {
      "commit": "85395896e72f8fc943c79c134e79b3ad9c783363",
      "tree": "ac326dd9dc56b5ad6587b1a81a3ed6c18953f967",
      "parents": [
        "94cfe137a105ec7db047e963e18483425e0d2272"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Apr 25 16:47:52 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Apr 25 16:47:52 2017 -0700"
      },
      "message": "AudioMixer: fix assertion for multichannel playback\n\nReset mPostDownmixReformatBufferProvider before changing\ndownmixerBufferProvider.\n\nTest: Play Music with multichannel files\nBug: 27526910\nChange-Id: I5803e169cb9da4e7681bc8caf1452e79e5a4d1d5\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": "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": "e2b43843fd12783188edd2c54188ea8d26864788",
      "tree": "baab518964134359128ed35e5ebfc36cf977cde4",
      "parents": [
        "b4d5ec0d8f3755ccb8d5ce51798c3004330e1120"
      ],
      "author": {
        "name": "Vijay Venkatraman",
        "email": "vijaykv@google.com",
        "time": "Thu Feb 02 13:35:37 2017 -0800"
      },
      "committer": {
        "name": "Vijay Venkatraman",
        "email": "vijaykv@google.com",
        "time": "Fri Feb 24 11:47:45 2017 -0800"
      },
      "message": "Moved headers from include/ to appropriate libs\n\ninclude/camera -\u003e camera/include/camera\ninclude/media/audiohal -\u003e media/libaudiohal/include\ninclude/media/AudioResampler*.h -\u003e media/libaudioprocessing/include\ninclude/media/Audio*.h,IAudio*.h,IEffect*.h,ToneGenerator.h -\u003e media/libaudioclient/include\ninclude/media/EffectsFactoryApi.h -\u003e media/libeffects/include\ninclude/media/stagefright -\u003e media/libstagefright/include\ninclude/media/nbaio -\u003e media/libnbaio/include\ninclude/media/\u003crest of files\u003e -\u003e media/libmedia/include\ninclude/cpustats -\u003e media/libcpustats/include/cpustats\n\nAdded symlinks from old location to new ones\n\nBug: 33241851\n\nTest: VNDK linked modules will need to add explicit lib dep.\nAll other modules should compile the same\n\nChange-Id: I0ecf754a2132640ae781a3cc31428fb8c0bd1669\n"
    },
    {
      "commit": "66916c26a7055c9e10471720502a29f759609819",
      "tree": "931ce309f34c35775a11240b4f8186db1983f90b",
      "parents": [
        "ceec4a06595253a6dcc167064f318e470e1c3b58"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Tue Jan 24 17:46:33 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Tue Jan 24 17:46:33 2017 -0800"
      },
      "message": "audio hal: Fix multichannel playback\n\nCorrectly operate on input and output buffers in DownmixerBufferProvider\n\nNote that playback is a bit choppy, need to investigate further.\n\nChange-Id: I350175dcc9cc7142a1935585a8bd5e9abb1b8eb6\nTest: play back a 5.1 file\n"
    },
    {
      "commit": "8c48184651df8edb5b9490fe616844dbcfbbb0a4",
      "tree": "a394d86ba1dc2e4826c7e6376b0d2bd74d49ca8a",
      "parents": [
        "060a6c53b5022c9e539a4c9b03b16da546964bec",
        "8981605d43e24c46d395acb5f145b99589d45917"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jan 13 16:19:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 16:19:33 2017 +0000"
      },
      "message": "Merge \"AudioFlinger: Move RecordBufferConverter to libaudioprocessing\""
    },
    {
      "commit": "060a6c53b5022c9e539a4c9b03b16da546964bec",
      "tree": "5c517aa0d24e519bb40dcd2431ffefa43959d4d7",
      "parents": [
        "d825ab9d5be990a6a7fb28033cfba84441100731",
        "49d3b5ee8e89e274a5c259dddb7cde38e98c2cde"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 23:54:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 12 23:54:38 2017 +0000"
      },
      "message": "Merge \"liblog: use log/log.h for ALOG macros\" am: 59cfe7de39 am: c6d07e8230 am: 15b18326b6\nam: 49d3b5ee8e\n\nChange-Id: I87a85c85d3f509e0496f5946d6e9e58174398ea5\n"
    },
    {
      "commit": "8981605d43e24c46d395acb5f145b99589d45917",
      "tree": "8bb7ee0e15081201b70730bbaafed49b47d211dc",
      "parents": [
        "d7c5ec857930496bb8a1045dc8b87b2fdd99899c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 11 17:08:23 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 11 17:19:37 2017 -0800"
      },
      "message": "AudioFlinger: Move RecordBufferConverter to libaudioprocessing\n\nTest: Recording loopback\nBug: 31015569\nChange-Id: I7897d959f36ac7424544e35f47576c99a442dd54\n"
    },
    {
      "commit": "2f607551825066933ef2ab9cac84833306c72db0",
      "tree": "94c1662a40000316608a3157bd81d2387575a60f",
      "parents": [
        "67d0d7eb36e7c36d0a9dec9264c0cab832196d57"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jan 11 16:09:03 2017 -0800"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jan 11 16:13:57 2017 -0800"
      },
      "message": "Fix crash in DownmixerBufferProvider\n\nIn ag/1768960, I forgot to actually set the buffers for the effect\ninterface. Without that, a \u0027process\u0027 method was attempting to use null\nbuffers.\n\nBug: 34228998\nTest: android.media.cts.AudioNativeTest#testPlayStreamData\nChange-Id: I904a9c08aa75bd5738b3ce981ee54511f37df7ec\n"
    },
    {
      "commit": "068561c8e84569d51df2adbbb53b56fdfd09c06b",
      "tree": "67e6c9c383b4667adc502b0ed6928a672a6a5b6d",
      "parents": [
        "ee454fcb25bff0f9c5d3455775a4cb66429e875e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jan 03 17:09:32 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jan 10 17:06:46 2017 -0800"
      },
      "message": "AudioFlinger: Split off audio processing library\n\nTest: native AudioResampler test, general playback test\nBug: 31015569\nChange-Id: Ifb248f4402a583438d756c014dcd7a4577aef713\n"
    }
  ]
}
