)]}'
{
  "log": [
    {
      "commit": "74a8e2533561f04029873446206ab407cd2e033b",
      "tree": "d9c6de2cb08a9f5947cc5f35ad9e581d7a6826a6",
      "parents": [
        "6a8ab05f0598f4ebdd5ef82e93cf32fde0598189"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 24 14:09:55 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 24 15:38:24 2014 -0700"
      },
      "message": "audio policy: clean up checking for active input\n\nChange-Id: I85cc089df32e6d469e8aef307599f1021ea5b835\n"
    },
    {
      "commit": "6a8ab05f0598f4ebdd5ef82e93cf32fde0598189",
      "tree": "ca84cc8dc21a7ae93fc2c50cb48d78072361a300",
      "parents": [
        "83b8808faad1e91690c64d7007348be8d9ebde73"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 24 14:08:35 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 24 15:38:24 2014 -0700"
      },
      "message": "audio policy: add audio_input_flags_t and mOpenRefCount\n\nChange-Id: I5f9c7b5ebf03b9bc94efe70d3677edfabb99c194\n"
    },
    {
      "commit": "83b8808faad1e91690c64d7007348be8d9ebde73",
      "tree": "b541b1172f804e04bd19b29f7878a1becf6205d7",
      "parents": [
        "c15c265676da2226a18a5373812608b19d4719d7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 20 18:31:16 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 24 02:56:47 2014 +0000"
      },
      "message": "audio flinger: add patch connection between hw modules\n\nAdd support for audio device connections between different audio\nhw modules.\nThe patch is performed by creating a bridge between the playback\nthread connected to the sink device and the record thread connected\nto the source device using a pair of specialized PlaybackTrack and\nRecordTrack.\n- Added PatchTrack and PatchRecord classes.\n- Added TrackBase type to indicate more clearly the track behavior.\n- A TrackBase can allocate the buffer or reuse an existing one.\n- Factored some code in openOutput() and openInput() for internal use\nby PatchPanel.\n\nBug: 14815883.\n\nChange-Id: Ib9515fcda864610458a4bc81fa8f59096ff4d7db\n"
    },
    {
      "commit": "c15c265676da2226a18a5373812608b19d4719d7",
      "tree": "d2d97a46c7ff6420789ebb62a1da4941dadb119c",
      "parents": [
        "db2225b2a24fa4ade5c0353730dc2d6a2f5838d9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 22 19:48:16 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 23 21:11:19 2014 +0000"
      },
      "message": "audio policy: remove redundant fixed volume management\n\nRemove code handling fixed device volume in\nAudioPolicyManager::computeVolume() as this is already\nmanaged by AudioService.\n\nChange-Id: Ib2be7578e40652c85a7d44c685ff9cc703d0c969\n"
    },
    {
      "commit": "17d0842cf33464a79a81b0e78e49514c3419d1cf",
      "tree": "df4161ca751aa1860442fa9563ed5584b56abb74",
      "parents": [
        "4730fa07a3290cc3a904dcb16dbb92fcf46c36ac",
        "42b011166ece30969667e0ff9dcf4832568c9c1a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 23 20:41:59 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 23 18:25:52 2014 +0000"
      },
      "message": "Merge \"Fix multichannel integer resampling and add tests\" into lmp-dev"
    },
    {
      "commit": "f78cd5e5e6af5d06de15e6f91b98e648d89fc409",
      "tree": "1d46c850753164be31c0467852ea5aa0f1e3df9c",
      "parents": [
        "daf92cc876a1952059794e6d0f558f0f6dd9ac8c",
        "5d76e1a639c1bae9ea7d9af1124abf1c94353344"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jul 22 23:29:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 22 16:13:36 2014 +0000"
      },
      "message": "Merge \"Camera3: only append partial result to partial result collection\" into lmp-dev"
    },
    {
      "commit": "5d76e1a639c1bae9ea7d9af1124abf1c94353344",
      "tree": "d1a03e4f590b62923a460f5435cdaa1c0929ab6a",
      "parents": [
        "eeaf40a8e413780bd2aacde172ac820e2ce12eb3"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jul 22 16:08:13 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jul 22 16:08:13 2014 -0700"
      },
      "message": "Camera3: only append partial result to partial result collection\n\nOtherwise, the metadata entries will be duplicated.\n\nChange-Id: If0cd96e09960fdf746a70913d380e9036745a944\n"
    },
    {
      "commit": "daf92cc876a1952059794e6d0f558f0f6dd9ac8c",
      "tree": "b379f32b850b22cbb28443c4b95760562ea5fa60",
      "parents": [
        "0be123df1897fd3fe1b7ba30f24d8ae4c91b4dc7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 22 15:36:10 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 22 15:36:10 2014 -0700"
      },
      "message": "audio policy: fix hotword capture\n\ncommit 1c333e2 introduced a regression causing the\nwrong input source type to be communicated to\nthe audio HAL when starting hotword (background) capture.\n\nChange-Id: Iec6b3c58cbc15b9988793077232ff3e7e72a4d6d\n"
    },
    {
      "commit": "0be123df1897fd3fe1b7ba30f24d8ae4c91b4dc7",
      "tree": "61db208f3e59e3a257b3a08f582e1c0c5d440a07",
      "parents": [
        "e80b229a80a992cb14647bcc7bfa8c926dc65fe6"
      ],
      "author": {
        "name": "Ruchit Sharma",
        "email": "ruchits@nvidia.com",
        "time": "Tue Jul 22 12:35:30 2014 -0400"
      },
      "committer": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Tue Jul 22 10:53:26 2014 -0700"
      },
      "message": "camera: clear ZSLQueue when switching modes\n\nnot clearing the queue here will eat up unnecessary memory every time\nwe switch from video to still mode.\n\nChange-Id: I279ec709b485ca0dab672464e5b829be849bcaa5\n"
    },
    {
      "commit": "e80b229a80a992cb14647bcc7bfa8c926dc65fe6",
      "tree": "9847b3682ea06ce9d986a772b362eb883733003e",
      "parents": [
        "eeaf40a8e413780bd2aacde172ac820e2ce12eb3",
        "28d0327bc80e1e424c3db34c62e8f73cd5ffab1e"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jul 22 16:57:30 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 22 16:29:55 2014 +0000"
      },
      "message": "Merge \"cameraservice: remove record stream in stopPreview\" into lmp-dev"
    },
    {
      "commit": "42b011166ece30969667e0ff9dcf4832568c9c1a",
      "tree": "16f653a56d0daaeb02dfd27659ac96796163e8dc",
      "parents": [
        "8bce84142802ecdc1794d59488ede629801a5cba"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sun Jul 20 14:04:19 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jul 21 21:59:51 2014 -0700"
      },
      "message": "Fix multichannel integer resampling and add tests\n\nChange-Id: I384bf8317d4f03616bf9f2b458a8700965d5cf56\n"
    },
    {
      "commit": "eeaf40a8e413780bd2aacde172ac820e2ce12eb3",
      "tree": "f0716de6ba05862b9adae40ae96c9bb5f020a752",
      "parents": [
        "225d5b20409fd400bfa4ed5e9bc1d5babb498471",
        "a204994e7dd7dab931297176c66b5d3b82e2c90b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 22 02:11:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 21 15:42:19 2014 +0000"
      },
      "message": "Merge \"audio policy: add missing formats to audio_policy.conf parser.\" into lmp-dev"
    },
    {
      "commit": "a204994e7dd7dab931297176c66b5d3b82e2c90b",
      "tree": "aab7547a3216990fd5c24ecc1ea00c40900cc6cf",
      "parents": [
        "8bce84142802ecdc1794d59488ede629801a5cba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 21 17:49:25 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 21 17:52:01 2014 -0700"
      },
      "message": "audio policy: add missing formats to audio_policy.conf parser.\n\nChange-Id: I872c11d080c505abe3025e7bbb554ca9711de9af\n"
    },
    {
      "commit": "a7e04803ffa0d8d4cc51a122f68bf5038422aabb",
      "tree": "e1c60583b09461df3be42a04dbae4d51e1bd75e9",
      "parents": [
        "8bce84142802ecdc1794d59488ede629801a5cba"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 21 11:49:08 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 21 11:55:33 2014 -0700"
      },
      "message": "Remove execute bit\n\nChange-Id: I1cf0c0d9375779b3074af12f4cbf9c1ec07bf4ff\n"
    },
    {
      "commit": "28d0327bc80e1e424c3db34c62e8f73cd5ffab1e",
      "tree": "b5e6f1598faa883b5d7a188ab7a698426c659555",
      "parents": [
        "f6ef963fecde3b63696028fadce4bcfb5b998db0"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 17 16:05:23 2014 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 18 15:45:09 2014 -0700"
      },
      "message": "cameraservice: remove record stream in stopPreview\n\nRemove recording stream every time stopPreview is called.\n\nChange-Id: Iabb783a75418aa41ddc2693cfdfd5a2131109070\n"
    },
    {
      "commit": "8bce84142802ecdc1794d59488ede629801a5cba",
      "tree": "802c25b58a915542533fbedd62ca8b81c70270ce",
      "parents": [
        "cf1f53baa636f1782ff924d6003c70c6b8542c0b",
        "a08810b2feafeec88870c7c1f01efc39ee8e0d78"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sun Jul 20 20:53:44 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 17:59:02 2014 +0000"
      },
      "message": "Merge \"Add RemixBufferProvider to AudioMixer\" into lmp-dev"
    },
    {
      "commit": "a08810b2feafeec88870c7c1f01efc39ee8e0d78",
      "tree": "6c33f28c0c637f0d67530058493f653e453a131b",
      "parents": [
        "34803d594232af5604d893eff7ee40bb57d459a4"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 16 21:53:43 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jul 18 20:34:02 2014 -0700"
      },
      "message": "Add RemixBufferProvider to AudioMixer\n\nThis is used to convert between channel masks for input AudioTrack\ndata.\n\nChange-Id: Iedffaeccb99c7053992152e7b1cb6b2d33b12eef\n"
    },
    {
      "commit": "34803d594232af5604d893eff7ee40bb57d459a4",
      "tree": "13991635bf72797e6ff00a3ec739b465af53614d",
      "parents": [
        "1b2fdcb005f9fbe5ad465cec46ec5992b718b5e3"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 16 21:41:35 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jul 18 18:05:19 2014 -0700"
      },
      "message": "Update DownmixerBufferProvider to use CopyBufferProvider\n\nChange-Id: I6b1a8755a1e6c29b916662fd376e9509cda5df55\n"
    },
    {
      "commit": "1b2fdcb005f9fbe5ad465cec46ec5992b718b5e3",
      "tree": "af0ac40d490c649b1c3a13ba0c5c9a22e1890c6b",
      "parents": [
        "91be1fbc424035e70688e60306b755893e0fb0ae"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 16 17:44:34 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jul 18 17:56:04 2014 -0700"
      },
      "message": "Add CopyBufferProvider class for AudioMixer\n\nAudioMixer::ReformatBufferProvider now uses it as a base class.\n\nFix ReformatBufferProvider object leak.\n\nChange-Id: If196f844eaaa124a173ffa27afe88098023c2ff9\n"
    },
    {
      "commit": "4287942b0d6fabe5f99e15cd70c470b04f345de8",
      "tree": "8ae6a614689746e0f520d884eb00bdd1c7998af4",
      "parents": [
        "c60780517a882e0905fd36a06b1c45da12e49557",
        "34803d594232af5604d893eff7ee40bb57d459a4"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jul 19 03:39:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 18 22:16:50 2014 +0000"
      },
      "message": "Merge \"Update DownmixerBufferProvider to use CopyBufferProvider\" into lmp-dev"
    },
    {
      "commit": "c60780517a882e0905fd36a06b1c45da12e49557",
      "tree": "a0b1dd3d1b196b287aed2fdf6983bb0d4a82b346",
      "parents": [
        "c63680d80ac262a6be4a22a66f92960e9f44d460",
        "1b2fdcb005f9fbe5ad465cec46ec5992b718b5e3"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Jul 19 03:23:02 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:09:48 2014 +0000"
      },
      "message": "Merge \"Add CopyBufferProvider class for AudioMixer\" into lmp-dev"
    },
    {
      "commit": "529c61b7e4468a3e21f302f2a92a660249daa722",
      "tree": "26133aeea97d8ea2d564a6ff0193e471c575914f",
      "parents": [
        "ada688878122d6504cccebb9121f9d4f8f701e38"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 18 15:31:02 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 18 15:32:41 2014 -0700"
      },
      "message": "Fix copy/paste bug\n\nintroduced by Change-Id: I4e9b7fa99858b488ac98a441fa70e31dbba1b865\n\nChange-Id: I9a0c8800f5cf3767cc259776f95c96cad972e392\n"
    },
    {
      "commit": "91be1fbc424035e70688e60306b755893e0fb0ae",
      "tree": "eef36fd4610590775c813de29a63d68885c11d59",
      "parents": [
        "e94754c9601d132354e5db2079762c7d1a0bddda",
        "7410591dad836434c72ddee66680802708b70c10"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 21:56:55 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:04:20 2014 +0000"
      },
      "message": "Merge \"Move AudioRecord frame count calculations to server\" into lmp-dev"
    },
    {
      "commit": "e94754c9601d132354e5db2079762c7d1a0bddda",
      "tree": "deb178075a48d8f87b06e57c099e41ee90db99d8",
      "parents": [
        "2e8186a258c934798129847f66171df36e95d23e",
        "b3b1660ecb67f61f9da54efced8677fa3a6f4863"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 21:39:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:04:20 2014 +0000"
      },
      "message": "Merge \"Add audio_input_flags_t to IAudioPolicyService::getInput\" into lmp-dev"
    },
    {
      "commit": "2e8186a258c934798129847f66171df36e95d23e",
      "tree": "4da37472f2c220fe210c1539fbd536ce5942d77d",
      "parents": [
        "d1a4f35ec10f36c33cf7391e800910da8fdebb6e",
        "5567aaf4818007cd8e77329683a91c0f5d7a8837"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 21:23:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:09:48 2014 +0000"
      },
      "message": "Merge \"Fix initial audio glitch on startup\" into lmp-dev"
    },
    {
      "commit": "d1a4f35ec10f36c33cf7391e800910da8fdebb6e",
      "tree": "64f754cc4b7a78ac9af645c0d5b45b421230b4c1",
      "parents": [
        "e1a8112edec713ff1d84f67145f22cca3a401951",
        "ec40d284218466d8f0e832e7eb88e6ea6c479c88"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 21:12:07 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:09:48 2014 +0000"
      },
      "message": "Merge \"Add audio_input_flags_t to IAudioFlinger::openInput\" into lmp-dev"
    },
    {
      "commit": "e1a8112edec713ff1d84f67145f22cca3a401951",
      "tree": "cac289f6fe530084aa34ce72b686c9dc153d248c",
      "parents": [
        "693dd7e252529be98acd2e2585b44a6a10fa4233",
        "7025b5bf189092015df97b0952d33ee76db165c7"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 21:23:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 21:09:48 2014 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Enable extended precision PCM output in AudioFlinger\"\"\" into lmp-dev"
    },
    {
      "commit": "7025b5bf189092015df97b0952d33ee76db165c7",
      "tree": "e1949909bf8f1253526793d3ba6ef3a3aa6f27d8",
      "parents": [
        "ce83432a922e55d68625aad854f8f6520db395bc"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 21:20:57 2014 +0000"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 21:20:57 2014 +0000"
      },
      "message": "Revert \"Revert \"Enable extended precision PCM output in AudioFlinger\"\"\n\nThis reverts commit ce83432a922e55d68625aad854f8f6520db395bc.\n\nChange-Id: I2d005bfe091beef810c9ddfb53e308fa0e47b355\n"
    },
    {
      "commit": "5567aaf4818007cd8e77329683a91c0f5d7a8837",
      "tree": "02be3dd69b9b538662abc033d08fd0207d2fd607",
      "parents": [
        "d81d48961da30f657fb095ed00a697bd50266269"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 14:00:07 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 14:00:07 2014 -0700"
      },
      "message": "Fix initial audio glitch on startup\n\nAlso happens when restarting AudioFlinger.\n\nBug: 16322824\nChange-Id: I382b20174cb0639e04316130141f2094d7dd0cb3\n"
    },
    {
      "commit": "7410591dad836434c72ddee66680802708b70c10",
      "tree": "697a233ffced732dbe113c927d9de61f14ea3f2c",
      "parents": [
        "b3b1660ecb67f61f9da54efced8677fa3a6f4863"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 03 12:28:53 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 12:13:18 2014 -0700"
      },
      "message": "Move AudioRecord frame count calculations to server\n\nBuffer frame count and notification frame count\nare now calculated by server instead of by client.\nThe server has more information and can do a better job.\n\nAlso fix a few bugs:\n\n - If a fast track was re-created, even with same pipe depth, it would fail.\n   Now it can correctly re-create a fast track provided the pipe depth is same.\n\n - Notification frame count for fast tracks was calculated by client\n   as 1/2 of the total frame count, which is a large value due to the pipe.\n   Now the notification frame count is set by server to the HAL frame count.\n   This should reduce latency for fast tracks.\n\n - EVENT_OVERRUN were happening frequently when there was sample rate conversion,\n   because the client didn\u0027t know about the sample rate conversion,\n   and under-estimated the necessary buffer size.  Now since server\n   calculates the buffer sizes, EVENT_OVERRUN is unlikely.\n\n - RecordThread::createRecordTrack_l was checking for mono and stereo\n   for fast tracks.  This is not necessary, and now we can handle a\n   multi-channel fast track.\n\nBug: 7498763\nChange-Id: I0c581618e8db33084d5ff9ed50a592990c9749e8\n"
    },
    {
      "commit": "b3b1660ecb67f61f9da54efced8677fa3a6f4863",
      "tree": "ee42a2462ff40938316b521138d1edfe8a122d4b",
      "parents": [
        "ec40d284218466d8f0e832e7eb88e6ea6c479c88"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 16 08:36:31 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 12:13:11 2014 -0700"
      },
      "message": "Add audio_input_flags_t to IAudioPolicyService::getInput\n\nChange-Id: I9f37be05f8dc7b85a8827a94e76ca0f45453e170\n"
    },
    {
      "commit": "ec40d284218466d8f0e832e7eb88e6ea6c479c88",
      "tree": "46ae774a4f3535d07374bed459b1dcf2bb9d8803",
      "parents": [
        "6e6704c06d61bc356e30c164081e5bcffb37920c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 15 15:31:26 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 12:13:07 2014 -0700"
      },
      "message": "Add audio_input_flags_t to IAudioFlinger::openInput\n\nFor backward compatibility, until flags are correctly calculated,\nwe will assume that the request is for a low latency input stream.\n\nChange-Id: I76746834e870df00833dc77cbdaa2edd2ffeec95\n"
    },
    {
      "commit": "6e6704c06d61bc356e30c164081e5bcffb37920c",
      "tree": "825e014f01a7eb5a2f3282965d2a5ba9a21b4071",
      "parents": [
        "7b24ee381e806dcb53308c1cafc8a45f4e2d8300"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 03 10:20:00 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 12:13:05 2014 -0700"
      },
      "message": "Improve dumpsys for capture threads\n\nShow per-track sample rate, and whether there is a fast capture thread\n\nChange-Id: If6a08a40d1eeba0690aa8da3c541f845ec101b7f\n"
    },
    {
      "commit": "693dd7e252529be98acd2e2585b44a6a10fa4233",
      "tree": "5f189fe88493edf8f018be49fbb48ef383af3a2a",
      "parents": [
        "ca4805b607a6abce38abf05c09d3fb8bab521ee8",
        "204e3295e2814052aef7e45ee9edd60128efbbd0"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Thu Jul 17 20:36:14 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 18:05:14 2014 +0000"
      },
      "message": "Merge \"Camera HAL3: migrate from partial quirks to partial result\" into lmp-dev"
    },
    {
      "commit": "ce83432a922e55d68625aad854f8f6520db395bc",
      "tree": "dfcce1cfd2203e8e07c023ce85592b908dbfd0b8",
      "parents": [
        "d81d48961da30f657fb095ed00a697bd50266269"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 10:26:50 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 10:26:50 2014 -0700"
      },
      "message": "Revert \"Enable extended precision PCM output in AudioFlinger\"\n\nThis reverts commit a494e82c3c73508b4d3cfe89e9134de94e12fd31.\n"
    },
    {
      "commit": "ca4805b607a6abce38abf05c09d3fb8bab521ee8",
      "tree": "d0bbc801100210c72ab9d31c7ea4237f00a0ec55",
      "parents": [
        "b84bc80c952b888d2134e467835b7e9facd17805",
        "6e6704c06d61bc356e30c164081e5bcffb37920c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 17 19:26:15 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 02:29:54 2014 +0000"
      },
      "message": "Merge \"Improve dumpsys for capture threads\" into lmp-dev"
    },
    {
      "commit": "b84bc80c952b888d2134e467835b7e9facd17805",
      "tree": "45a6cfba681e42498ff2526a117ac4e296a2b2e7",
      "parents": [
        "936c84a5b743dce2a2572fdf54b37b187bc88b60",
        "ce83432a922e55d68625aad854f8f6520db395bc"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 17 17:30:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 17 02:40:09 2014 +0000"
      },
      "message": "Merge \"Revert \"Enable extended precision PCM output in AudioFlinger\"\" into lmp-dev"
    },
    {
      "commit": "936c84a5b743dce2a2572fdf54b37b187bc88b60",
      "tree": "dcf40715022acc8c80619e431931008c9af69c6f",
      "parents": [
        "7b24ee381e806dcb53308c1cafc8a45f4e2d8300"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 17 10:26:04 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 17 10:26:04 2014 -0700"
      },
      "message": "Revert \"sound trigger: added permission checks\"\n\nThis reverts commit dcb162f3aed807d1e51f29e2454ade584439992e.\n"
    },
    {
      "commit": "7b24ee381e806dcb53308c1cafc8a45f4e2d8300",
      "tree": "47cb17d1d16a65915d71056c7f588c46b5d4eea7",
      "parents": [
        "5f881c631d3a8e2c0801cdfbbe465c355816f1e3"
      ],
      "author": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Tue Jul 15 19:38:42 2014 +0900"
      },
      "committer": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Thu Jul 17 09:27:23 2014 +0900"
      },
      "message": "Revisit HDMI-CEC system audio mode in AudioService.\n\nFrom recent feedback on HDMI-CEC system audio mode,\nit would be unnecessary to enforce output from AudioService.\nInstead, it would follow audio policy according to status\nof HDMI-CEC system audio mode.\nFor that removed two params of setHdmiSystemAudioModeSupported\napi of AudioManager.\n\nIn terms of speaker mute, it will be handled by removing speaker\nfrom audio ouput instead of changing gain control. For that\nadded new force usage type, FOR_HDMI_SYSTEM_AUDIO_MODE and\nnew force config type, FORCE_HDMI_SYSTEM_AUDIO_ENFORCED.\nThis is used to notify change of system audio mode to\naudio policy manager.\n\nBug: 16305986\nBug: 16002150\nChange-Id: I702e0f9ce7c7887d5f5dd02b06a40d20e4c950df\n"
    },
    {
      "commit": "204e3295e2814052aef7e45ee9edd60128efbbd0",
      "tree": "1110e6c06e489c9c2003398e1768b9194effee78",
      "parents": [
        "671160ffe81592efa376dc1ff0fc3f4ddcdebc35"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 14 17:09:23 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jul 16 15:27:17 2014 -0700"
      },
      "message": "Camera HAL3: migrate from partial quirks to partial result\n\n- Enable the normal partial result path for HAL3.2, the quirk is only used\nfor the HAL version lower than HAL3.2. The partial quirks is no longer supported\nfor HAL3.2 or higher versions.\n- Add CameraDeviceBase getDeviceVersion API.\n- Fix some build warnings\n\nChange-Id: I7a1b03d4d5fd5258d2addfba4368bee2ba691337\n"
    },
    {
      "commit": "d81d48961da30f657fb095ed00a697bd50266269",
      "tree": "e1949909bf8f1253526793d3ba6ef3a3aa6f27d8",
      "parents": [
        "a8454c29b15748964b5eb556d1e23fbb1ee19ceb",
        "da3bd9f12883f8344d2db00ce2fa47511ed9bef6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jul 16 19:37:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 16 13:12:22 2014 +0000"
      },
      "message": "Merge \"Add audio_input_flags_t to HAL open_input_stream\" into lmp-dev"
    },
    {
      "commit": "dcb162f3aed807d1e51f29e2454ade584439992e",
      "tree": "d5430215f699eb9feea7cdf01751dcc2c83da123",
      "parents": [
        "671160ffe81592efa376dc1ff0fc3f4ddcdebc35"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 11 09:14:45 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 16 17:48:26 2014 +0000"
      },
      "message": "sound trigger: added permission checks\n\nAdd check for android.permission.CAPTURE_AUDIO_HOTWORD\nto all sound trigger binder calls on server side.\n\nBug: 12378680.\nChange-Id: Ic3fd70e947882cdf5f4d4a4fe609a2c5a8236fd5\n"
    },
    {
      "commit": "da3bd9f12883f8344d2db00ce2fa47511ed9bef6",
      "tree": "a570ee165ca19b3fd27afd543eeca77fa1e8ba52",
      "parents": [
        "efebe3974d4ad5870f957b77450c26a499fc467e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 15 15:34:27 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 15 15:53:19 2014 -0700"
      },
      "message": "Add audio_input_flags_t to HAL open_input_stream\n\nFor backward compatibility, until flags are added to openInput(),\nwe will assume that the request is for a low latency input stream.\n\nChange-Id: I5e6f7e574418917ff1b41b0a47199203c69cb40f\n"
    },
    {
      "commit": "efebe3974d4ad5870f957b77450c26a499fc467e",
      "tree": "7d453b970c3f7c83f80fb73cacde3b742976cbf0",
      "parents": [
        "7c5b60ae8b8793b2d601ecf459807c974120331b",
        "cd704219d22ec51660103684a680caf2c3a12dad"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 15 19:29:44 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 15 16:05:04 2014 +0000"
      },
      "message": "Merge \"const correctness on downmix and upmix\" into lmp-dev"
    },
    {
      "commit": "cd704219d22ec51660103684a680caf2c3a12dad",
      "tree": "6572f8fad52b82a72eba711fda2779a6e0ad6ca7",
      "parents": [
        "f6ef963fecde3b63696028fadce4bcfb5b998db0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 14 17:26:36 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jul 15 11:20:45 2014 -0700"
      },
      "message": "const correctness on downmix and upmix\n\nChange-Id: I0f51470a6d58a22310ce7cda80afc55e9d6df1dc\n"
    },
    {
      "commit": "7c5b60ae8b8793b2d601ecf459807c974120331b",
      "tree": "d96498c99615b041ec43a37f5a459680e7f4c340",
      "parents": [
        "333f66d4642ddd36b42668da2767551ba25f0248"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 15 10:38:16 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 15 10:38:16 2014 -0700"
      },
      "message": "audio policy: build with USE_LEGACY_AUDIO_POLICY\n\nChange-Id: I9def12ea689b00c0295c670c07373dacfb186799\n"
    },
    {
      "commit": "5698d4461a260dbf208484383f692b03c6473e74",
      "tree": "d29204e288b8c4c1b9b7627f9e7b33a8ea6cf01e",
      "parents": [
        "e580006cd0067109189975c56395d29309d49883"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed Jun 18 10:39:40 2014 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Jul 14 22:13:45 2014 +0000"
      },
      "message": "camera2: Set orientation flags for hardware composer.\n\nBug: 15116722\nChange-Id: I3fcc9aea38afcbd665f86c511a9929fe9a6a3a8f\n"
    },
    {
      "commit": "388742df51084f02a362818a884f3bde71b7ef8d",
      "tree": "3b845b016afe836971ad14f959b02d671797143f",
      "parents": [
        "8e6912423c3be3fc2f4bab8ac815f0dce075ded8",
        "897a408b3f9c893776d67214257ca6a6bc1751bd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 12 02:29:16 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 11 21:38:19 2014 +0000"
      },
      "message": "Merge \"audiopolicy: remove debug log in AudioPolicyEffects.cpp\""
    },
    {
      "commit": "897a408b3f9c893776d67214257ca6a6bc1751bd",
      "tree": "57f48c5fc29aae3bd1e4b54d5cd312e6e78657af",
      "parents": [
        "2db91ae0e6aa33b50cc924ad65d6dc01876d220f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 11 16:51:53 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 11 16:51:53 2014 -0700"
      },
      "message": "audiopolicy: remove debug log in AudioPolicyEffects.cpp\n\nChange-Id: Ia037807a91d6649c3f47baccf8c107df496e934e\n"
    },
    {
      "commit": "1e693b55d888b9d3e0a2ce770ae2b72b59c1a317",
      "tree": "1f5cf885a43a9f79a6c698cbd286ce4dbf27ee8b",
      "parents": [
        "2db91ae0e6aa33b50cc924ad65d6dc01876d220f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 09 15:03:28 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 11 15:06:09 2014 -0700"
      },
      "message": "audio policy: add rules to select audio parameters\n\nAdded rules to select most appropriate sampling rate, format and\nchannel mask from an input or output profile.\nMoved mFlags from IOProfile to its base class AudioPort.\nRemoved bogus mChannelMask member in DeviceDescriptor class.\nImproveed dump of dynamic parameters in AudioPort.\n\nChange-Id: Ic09d320386002a8bafee4a28db00b1001a386678\n"
    },
    {
      "commit": "2829edccd7d2bb8244246f316face82b650b8949",
      "tree": "485dbd465bc203b2227c87fe582abeffd1ece08c",
      "parents": [
        "7bad72237b49ac47e77ffe2a89fd26f3d171324c"
      ],
      "author": {
        "name": "aarti jadhav-gaikwad",
        "email": "agaikwad@nvidia.com",
        "time": "Wed Jun 18 15:25:26 2014 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 11 09:53:16 2014 -0700"
      },
      "message": "stagefright: Pass audio aac sub formats in offloadinfo\n\nPass audio aac sub formats in offloadinfo according to\naac profile. Audio HAL can take decision about offload\nusing DSP capabilities\n\nChange-Id: If269a3654b5d2b09c183212b0646ef03e06f2d8f\n"
    },
    {
      "commit": "8346bf5c2dd059c5451706ef1b906cb34d5175cd",
      "tree": "b842277d30861e2876a0e5eba1d3e1ca4c2e7769",
      "parents": [
        "eb062b5a6c98115f36af2dab8ede0efa4469825b",
        "463be250de73907965faa6a216c00312bf81e049"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jul 11 00:11:02 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 10 21:28:08 2014 +0000"
      },
      "message": "Merge \"Return negotiated format with HAL in AudioFlinger\""
    },
    {
      "commit": "463be250de73907965faa6a216c00312bf81e049",
      "tree": "fb6e9ba368855cf8fadb66fa221795d1b061afca",
      "parents": [
        "01cab9ce4fb203fab8f5115ff866f9f0cc96a73a"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 10 16:56:07 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 10 17:02:21 2014 -0700"
      },
      "message": "Return negotiated format with HAL in AudioFlinger\n\nFixes an issue caused by extended precision and the FastMixer\nwhen the format to the FastMixer was returned instead of the\nHAL format.\n\nChange-Id: I2be9d55d5c87d82e46b5200b07fcdd986ebde08a\n"
    },
    {
      "commit": "0c94309d3c6db555b57f2e2e2dc3a0a2676ac6b7",
      "tree": "5695b499e9f5f9da2e37b6daf245758054b4e5e3",
      "parents": [
        "01cab9ce4fb203fab8f5115ff866f9f0cc96a73a"
      ],
      "author": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Tue Jul 08 22:11:24 2014 +0900"
      },
      "committer": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Thu Jul 10 11:31:51 2014 +0900"
      },
      "message": "Revamp HDMI-CEC system audio mode integration with audio service.\n\nIn previous change we use setForceUse(FORCE_MEDIA, XXX) method\nin order to set\t   specific audio output type, such as LINE, HDMI_ARC,\nand SPDIF. But it turns\t    out that it conflicts with bluetooth\na2dp which uses\t  the same setForceUse(FORCE_MEDIA, yyy).\n\nThis change is based on several conditions.\n\n1. When other non-speaker devices are on, prevent system audio\n   from turing on.\n2. In order to keep track of other devices\u0027 connectivity and to\n   turn off system audio if other device like bluetooth or\n   headphone preempts current output, register OnAudioPortChangeListner\n   to audio manager.\n3. All possible system audio outputs can be merged with other\n   outputs without priority.\n\nChange-Id: Ic5ccc80f9b48fb77433c347de7969837c69e58c1\n"
    },
    {
      "commit": "0dba9b1719a598f5d78cbcef4b0b9e47313f1037",
      "tree": "3ad0181876bcac400b08564d9feb6ead793455d9",
      "parents": [
        "91848a568e6ef4d6b214b81d3f82b6d49d00ffb6",
        "5e58b0abe5b6c8f5bd96a8f78bbeeeb4d3892020"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 09 20:35:08 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 08 23:31:34 2014 +0000"
      },
      "message": "Merge \"Add floating point volume handling to AudioMixer\""
    },
    {
      "commit": "91848a568e6ef4d6b214b81d3f82b6d49d00ffb6",
      "tree": "a0a7b6eed932db5dea13b02daaf658e9c9fbf793",
      "parents": [
        "f16a9a0b4469d65e2f13d9a940a5e358ba1f6b80",
        "a494e82c3c73508b4d3cfe89e9134de94e12fd31"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 09 17:47:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 09 14:43:38 2014 +0000"
      },
      "message": "Merge \"Enable extended precision PCM output in AudioFlinger\""
    },
    {
      "commit": "817d3356b5c23f01620105141633616b48002779",
      "tree": "668794a10c197cf3540de038a9027f3c8ae668a7",
      "parents": [
        "d539e610d0d87964714a4ea2f916d6c693394152",
        "98c6043e089743355bb6686176877f2ba5125213"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jul 09 16:08:47 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 09 14:43:38 2014 +0000"
      },
      "message": "Merge \"Revise speaker volume curve for media on devices with speaker DRC\""
    },
    {
      "commit": "98c6043e089743355bb6686176877f2ba5125213",
      "tree": "6b4dba5312d4d4d169b7f33b246e8dc2ab97f286",
      "parents": [
        "0d3679e21146bfa497c38842c80ae1f9906a042a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jul 09 08:51:34 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jul 09 08:51:34 2014 -0700"
      },
      "message": "Revise speaker volume curve for media on devices with speaker DRC\n\nBug 15318604\n\nChange-Id: I14b451e2d8d4439fe286dd98c45d09b9dadbb4f6\n"
    },
    {
      "commit": "5e58b0abe5b6c8f5bd96a8f78bbeeeb4d3892020",
      "tree": "975ed02efce4eaefcf5b0ceb5f33d212542a33a6",
      "parents": [
        "72d039f007722c92ee5ea7ffd03ece19d2781103"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 23 19:07:29 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jul 08 21:09:13 2014 -0700"
      },
      "message": "Add floating point volume handling to AudioMixer\n\nUse floating point volume in AudioMixer mixing when floating\npoint input is used with the new mixer engine.\nAudioResampler is updated to take floating point volume to match.\nBoth legacy integer and floating point mixer engines work.\n\nFor now, integer volume is used when the new mixer engine\nruns in integer input mode, for backward compatibility with\nthe legacy mixer.  The new mixer engine will generally run in\nfloating point input mode. When the legacy path is removed,\nthe integer volumes will be removed.\n\nChange-Id: I79e80c292ae7c8b8bdd0aa371a1b2c3a1b618290\n"
    },
    {
      "commit": "a494e82c3c73508b4d3cfe89e9134de94e12fd31",
      "tree": "7e4cb804f1f0e1b2609d8c046d815a39a07cc760",
      "parents": [
        "2e8863b31e987f9bb54e52645e03e75120863a2e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jul 08 18:09:40 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jul 08 18:09:40 2014 -0700"
      },
      "message": "Enable extended precision PCM output in AudioFlinger\n\nChange-Id: I7c0907c7b2369681975d8ea0192b722d7ed7a867\n"
    },
    {
      "commit": "2e8863b31e987f9bb54e52645e03e75120863a2e",
      "tree": "705192d687cafae0bdc317e9b31ae6aa4e9d0388",
      "parents": [
        "c98bd8d9bf81663b5cd9c79e79d6e7869c1146e6",
        "c09cec7ba6df108b91d9d9583b340580bafa5d0b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jul 07 22:27:58 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 06 02:28:07 2014 +0000"
      },
      "message": "Merge \"av: native_window_set_buffers_geometry is deprecated.\""
    },
    {
      "commit": "c09cec7ba6df108b91d9d9583b340580bafa5d0b",
      "tree": "27264007890e4a178b78013ad888220ba9640eb2",
      "parents": [
        "7f44751f95e722f7c628652bdacfa2bb5f510591"
      ],
      "author": {
        "name": "Pierre Couillaud",
        "email": "pierre@broadcom.com",
        "time": "Thu Jul 03 10:55:00 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jul 07 13:13:38 2014 -0700"
      },
      "message": "av: native_window_set_buffers_geometry is deprecated.\n\nnative_window_set_buffers_geometry is deprecated, but\n__set_buffers_geometry is still used for device1 camera\nsupport.\n\nreplace deprecated call with its equivalent combination of\nnative_window_set_buffers_dimensions and\nnative_window_set_buffers_format.\n\nChange-Id: I4940367dcae6049451508bfdfc11c16907ec1afc\nSigned-off-by: Pierre Couillaud \u003cpierre@broadcom.com\u003e\n"
    },
    {
      "commit": "c98bd8d9bf81663b5cd9c79e79d6e7869c1146e6",
      "tree": "cdb126f44d22c81c3271757b7c61f4a4d6cec52e",
      "parents": [
        "5c68f959eaa2e02fed5643c78e281fff42bcc0a2"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 07 12:44:10 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 07 19:48:24 2014 +0000"
      },
      "message": "Camera3: only return input buffer when it is sent in request\n\nThis is to WAR the case where HAL sends non-NULL input_buffer in capture\nresult even capture framework doesn\u0027t send input buffer in the request.\nIt\u0027s very likely the input_buffer is uninitialized, and we shouldn\u0027t\nuse it. Log a warning for such case as well.\n\nBug: 16115675\nBug: 16117312\nChange-Id: Ib299b45fbfe084059a9f546ded239c8094b039e2"
    },
    {
      "commit": "0d3679e21146bfa497c38842c80ae1f9906a042a",
      "tree": "34f59b08b7eff342f8deebbec99ae5603a782fe5",
      "parents": [
        "3c643073650f469574498c68a6c30e5098350c33",
        "075abae2a954bf3edf18ad1705c2c0f188454ae0"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jul 03 01:12:32 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 21:11:19 2014 +0000"
      },
      "message": "Merge \"Add and enable multichannel for audio resampler\""
    },
    {
      "commit": "075abae2a954bf3edf18ad1705c2c0f188454ae0",
      "tree": "a2fdfffb6a6831a082a1367c303d542ae9f9c286",
      "parents": [
        "68ffa200de7c4662c088851a328923be715c6c24"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Apr 09 19:36:43 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 02 16:00:53 2014 -0700"
      },
      "message": "Add and enable multichannel for audio resampler\n\nChange-Id: I2b86fb73d70abc4c456f7567270a888086b301d4\nSigned-off-by: Andy Hung \u003chunga@google.com\u003e\n"
    },
    {
      "commit": "68ffa200de7c4662c088851a328923be715c6c24",
      "tree": "7f2ec009e6ae6bdedd867acbec9fa380845d2ce5",
      "parents": [
        "b647abc0959b07c7568d9eeaf6b177aac3b20b60"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Apr 09 19:19:06 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 02 15:56:55 2014 -0700"
      },
      "message": "Add multichannel to audio resample processing\n\nChange-Id: If6bfbf74000520713f9ba19488a475fc2eefc271\nSigned-off-by: Andy Hung \u003chunga@google.com\u003e\n"
    },
    {
      "commit": "72d039f007722c92ee5ea7ffd03ece19d2781103",
      "tree": "7cb3604710dacf89064887f16b4cd6a8057ceddd",
      "parents": [
        "ba5e39b994b44cc458708eedd26c2d50404c9a46",
        "7999a2236cb641dc1d7bf7bd8d2499d40d0a806d"
      ],
      "author": {
        "name": "Terry Heo",
        "email": "terryheo@google.com",
        "time": "Wed Jul 09 02:48:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 21:09:42 2014 +0000"
      },
      "message": "Merge \"audio policy: add new input audio device\""
    },
    {
      "commit": "0832b2d7d190f4fbe6f134446b2610df0cccdbbb",
      "tree": "9980a8d4bf652a31d89918171ed7dc617af12bbf",
      "parents": [
        "3d638b30dcc67ef9eaa389160ef285cda055ed64"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 06 16:17:25 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 08 11:28:51 2014 -0700"
      },
      "message": "sound trigger: update HAL\n\nNew start_recognition() prototype with recognition\nconfiguration structure.\nNew recognition event format.\n\nBug: 12378680.\nChange-Id: I57b430eb076e6baa58118a0ed45ce4afaacb998c\n"
    },
    {
      "commit": "3d638b30dcc67ef9eaa389160ef285cda055ed64",
      "tree": "f327239fac8300e22f97ea42f5bb927d3fff320b",
      "parents": [
        "0ea8fa4ccbf9b2b179370b983f3887d3daf2381f",
        "3348e36c51e91e78020bcc6578eda83d97c31bec"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jul 08 17:31:25 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 07 18:07:48 2014 +0000"
      },
      "message": "Merge \"Replace int bitDepth with audio_format_t in Resampler\""
    },
    {
      "commit": "0ea8fa4ccbf9b2b179370b983f3887d3daf2381f",
      "tree": "7c513124746228beab5a262424fcbdd2a00018c7",
      "parents": [
        "d8cbe4a024ef54adf043b6ea31fa22271b8b2c51"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jul 07 17:05:38 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Jul 08 14:13:16 2014 +0000"
      },
      "message": "Camera3: Add capture intent for ZSL capture\n\nAlso fix the warning condition in input buffer return path.\n\nChange-Id: I90e9edc1db9f1de87bc8936000b00c3306160c71\n"
    },
    {
      "commit": "3348e36c51e91e78020bcc6578eda83d97c31bec",
      "tree": "ee3df8ed9f79863fc34589813710896a7e08af86",
      "parents": [
        "075abae2a954bf3edf18ad1705c2c0f188454ae0"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jul 07 10:21:44 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jul 07 10:29:36 2014 -0700"
      },
      "message": "Replace int bitDepth with audio_format_t in Resampler\n\nRemove mBitDepth from class (not used).\nReplace with audio_format_t in factory method to distinguish\nbetween float and pcm 16-bit.\n\nChange-Id: I166860796c68285077ef4458d8758d19b82523f9\n"
    },
    {
      "commit": "7999a2236cb641dc1d7bf7bd8d2499d40d0a806d",
      "tree": "975fc8ba518e766c75279d35fae99c409d85956a",
      "parents": [
        "07b56676694b01825df2375e4c2ead4e55fe2d98"
      ],
      "author": {
        "name": "Terry Heo",
        "email": "terryheo@google.com",
        "time": "Fri Jun 27 15:23:36 2014 +0900"
      },
      "committer": {
        "name": "Terry Heo",
        "email": "terryheo@google.com",
        "time": "Fri Jul 04 11:14:01 2014 +0900"
      },
      "message": "audio policy: add new input audio device\n\nAdd entry for AUDIO_DEVICE_IN_LOOPBACK to string to enum table.\n\nBug: 15437484\nChange-Id: I552df0969c745bdf66ff9e5d7bd864ef9e3f438d\n"
    },
    {
      "commit": "3c643073650f469574498c68a6c30e5098350c33",
      "tree": "afc2c5ca1a13216ef8de6efd54467365394fff96",
      "parents": [
        "6a3eb6a1b1bf59ebc8c7aba8a0a3542d60d2fcfa",
        "839e4f33906b650140b578d42d6a51300f26703c"
      ],
      "author": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Thu Jul 03 00:43:47 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 20:35:42 2014 +0000"
      },
      "message": "Merge \"Add force usage and category for System Audio Control.\""
    },
    {
      "commit": "6a3eb6a1b1bf59ebc8c7aba8a0a3542d60d2fcfa",
      "tree": "847884c6286fad8fb04832c48f3db7b2ea22ed3c",
      "parents": [
        "8382a0da75fd65ceaf4c27b3ec4dedc8721b1b78",
        "68ffa200de7c4662c088851a328923be715c6c24"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 02 23:13:12 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 21:11:19 2014 +0000"
      },
      "message": "Merge \"Add multichannel to audio resample processing\""
    },
    {
      "commit": "5c68f959eaa2e02fed5643c78e281fff42bcc0a2",
      "tree": "c2009db526d2f2d81713f149edf2bc7a7adf41b6",
      "parents": [
        "11fa4012f1c68083abfc21972f3f46da397d2c5c",
        "7df8c0b799d8f52d6386e03313286dbd7d5cdc7c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jul 07 13:27:01 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 20:11:01 2014 +0000"
      },
      "message": "Merge \"IAudioFlinger::openRecord now suggests notificationFrames\""
    },
    {
      "commit": "7df8c0b799d8f52d6386e03313286dbd7d5cdc7c",
      "tree": "e87404b99042b2c21ffcc0c34ac397ae14b4c2d4",
      "parents": [
        "7c6f87856c0880ee39c2107a0fc3c9b41f8c195c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 03 12:23:29 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 03 16:28:41 2014 -0700"
      },
      "message": "IAudioFlinger::openRecord now suggests notificationFrames\n\nChange-Id: I08885cc381d03c522a23289e74f0e1ed46563863\n"
    },
    {
      "commit": "665470b36f202bcc8ee2f7417f68fd2608dd07c1",
      "tree": "b2ab9efffb5af2d730c1899c23c1706bf4793c6d",
      "parents": [
        "5ba4440c11eb975ec0e104e0af1981838f42f57c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 03 16:37:08 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 03 16:46:52 2014 -0700"
      },
      "message": "audio: deprecate audio_stream_frame_size()\n\nBug: 15000850.\nChange-Id: I955a6efa620b8f70fa5193c7853cbe88e879c9c3\n"
    },
    {
      "commit": "8382a0da75fd65ceaf4c27b3ec4dedc8721b1b78",
      "tree": "f39802d5067a217387df6b30840cbed481d40526",
      "parents": [
        "7f44751f95e722f7c628652bdacfa2bb5f510591",
        "f0d962a6737eb8eec002d6804d9ffbe7bee672a0"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jul 02 23:03:32 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 18:17:00 2014 +0000"
      },
      "message": "Merge \"Camera3: fix ZSL processor3 issues\""
    },
    {
      "commit": "f0d962a6737eb8eec002d6804d9ffbe7bee672a0",
      "tree": "ee1678ff2ede6bfc45412ddd4c48bc7bcb2be75c",
      "parents": [
        "954d248e02e19f8ecd165804b7d063d346154f4c"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jun 30 10:24:11 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jul 02 15:34:03 2014 -0700"
      },
      "message": "Camera3: fix ZSL processor3 issues\n\n- Return input buffer in capture result. Per hal3.2 spec, we should return the\ninput buffer in process capture result rather than immediately after process\ncapture request.\n- Make the depths of mZslQueue and mFrameList the same. It doesn\u0027t make sense\nmFrameList depth is larger than mZslQueue depth.\n- Set the depths of mZslQueue and mFrameList based on pipelineMaxDepth.\n- Clear result queue while clearing zsl buffer queue.\n- Hook up camera3 buffer listener with ZslProcessor3, make sure that adding the\nsame listener multiple times has no effect.\n- Remove flush call in pushToReprocess, it is a guaranteed deadlock once\ncamera3 buffer listener is hooked up.\n\nChange-Id: I285155ab4241e827145855d628f8e98b881c01d5\n"
    },
    {
      "commit": "5ba4440c11eb975ec0e104e0af1981838f42f57c",
      "tree": "d925693d3af7691ffdbc46fde146b7e13eb24285",
      "parents": [
        "0d3679e21146bfa497c38842c80ae1f9906a042a",
        "f947dbce4390f2c3c460325d37002a34f09c0b74"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jul 03 23:37:21 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 02 18:17:00 2014 +0000"
      },
      "message": "Merge \"Remove obsolete IAudioFlinger::channelCount()\""
    },
    {
      "commit": "839e4f33906b650140b578d42d6a51300f26703c",
      "tree": "f49bae1877e05efb48a7f30ab373045011098c9c",
      "parents": [
        "8d0bc4a8ea2a5d0d6aba036f15b185d60e18778f"
      ],
      "author": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Thu Jun 26 17:23:40 2014 +0900"
      },
      "committer": {
        "name": "Jungshik Jang",
        "email": "jayjang@google.com",
        "time": "Wed Jul 02 13:54:57 2014 +0900"
      },
      "message": "Add force usage and category for System Audio Control.\n\nSystem Audio Control in HDMI-CEC delegate audio control\nto audio receiver. When system audio control is selected\nin audio settings as audio output it should select one of ARC, SPDIF,\nand LINE as audio output.\nWhenever user select System Audio as audio output, audio\nsetting should call\nsetForceUse(AUDIO_POLICY_FORCE_FOR_SYSTEM_AUDIO, AUDIO_POLICY_FORCE_XXX);\nand if other output is selected it should call\nsetForceUse(AUDIO_POLICY_FORCE_FOR_SYSTEM_AUDIO, AUDIO_POLICY_FORCE_NONE);\n\nChange-Id: I1c237ee9291a4e0acf01a86aff3176edce5c14e0\n"
    },
    {
      "commit": "b647abc0959b07c7568d9eeaf6b177aac3b20b60",
      "tree": "1be736b55fb0cc12b167c81018d932e002816d6b",
      "parents": [
        "4ebf92c0418584f1bb5ab3e83e8398351f4c05e5",
        "ba2b43990a7b4f0f2c425cf6cdfc63376a45772c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 01 18:35:11 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 01 16:34:37 2014 +0000"
      },
      "message": "Merge \"frameworks: av: services: audiopolicy: Added AudioPolicyEffects\""
    },
    {
      "commit": "ba2b43990a7b4f0f2c425cf6cdfc63376a45772c",
      "tree": "a2253fca6136a86bb00a197fe2edb97c3438d9c4",
      "parents": [
        "2421a4ba309f082a83be9b8e385c00cd8e0043f6"
      ],
      "author": {
        "name": "bryant_liu",
        "email": "bryant_liu@htc.com",
        "time": "Wed Jun 11 16:49:30 2014 +0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 01 11:32:34 2014 -0700"
      },
      "message": "frameworks: av: services: audiopolicy: Added AudioPolicyEffects\n\nManage pre- and postprocessing effects defined in audio_effects.conf\n\nChange-Id: Idea1478e3d434f8ff66907adb3c77663db78d583\n"
    },
    {
      "commit": "296b741e8eb38e749e3202182f703a2e30ee5f1f",
      "tree": "7924f384f8e3ef4f063993e8721c67eb466cf58a",
      "parents": [
        "f92f22becdf7fce1f55d5ebd80ac2caa2ad55602"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 17 15:25:47 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 30 16:35:59 2014 -0700"
      },
      "message": "Add new AudioMixer processing hooks\n\nThis change adds new process and thread hooks for\nmulti-format handling.\nIt is enabled by setting kUseNewMixer \u003d true.\n\nChange-Id: I262a3d2e4411f8cef7370a497b77a34eb55f1f86\n"
    },
    {
      "commit": "954d248e02e19f8ecd165804b7d063d346154f4c",
      "tree": "775019ce9782e8d8b131af80b835bfb40922a15f",
      "parents": [
        "0b5003b7d80f70af20f387b1d0d990972a5570da"
      ],
      "author": {
        "name": "Gaurav Batra",
        "email": "gbatra@nvidia.com",
        "time": "Thu Jun 19 16:47:07 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Sat Jun 28 00:55:45 2014 +0000"
      },
      "message": "Camera API1/2: don\u0027t register the same listener multiple times\n\nFrameProcessorBase allows register the same metadata result listener multiple\ntimes with the same range IDs, which causes the same metadata result is\ndelivered multiple times for the same listener. This is problematic as client\nlike ZslProcessor\u0027s updateStream is called multiple times between captures, and\neach updateStream calls registerListener unconditionally. The the ZSL metadata\nresult queue will be flooded with same metadata result multiple times and the\nnumber of same result will keep growing until the queue is full.\n\nChange-Id: I2ff7808e5dce61068a7111e7fbbce2aba95198cd\n"
    },
    {
      "commit": "f92f22becdf7fce1f55d5ebd80ac2caa2ad55602",
      "tree": "26523a34e967a551658ff3d3597c0f25a2cbc66d",
      "parents": [
        "954d248e02e19f8ecd165804b7d063d346154f4c",
        "6146c08f0c3dd8b9e5788063aa433f304a810602"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 30 18:17:03 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 26 23:50:27 2014 +0000"
      },
      "message": "Merge \"Add enabling variable for extended precision audio\""
    },
    {
      "commit": "0b5003b7d80f70af20f387b1d0d990972a5570da",
      "tree": "99f6c8f639d165d7b83bffd953fff63f4e4f0e81",
      "parents": [
        "4ce87ac008bcd6a1004ca416f6d7031ba813078f",
        "25a0aef19e170d2695f64b4c48296e7914155a88"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Sat Jun 28 00:55:16 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 26 23:50:27 2014 +0000"
      },
      "message": "Merge \"Camera1: Don\u0027t send partial results to ZSL clients\""
    },
    {
      "commit": "25a0aef19e170d2695f64b4c48296e7914155a88",
      "tree": "39dfc94b9202060d8b8645497effa989cef2670f",
      "parents": [
        "e8f2c6cfe9afc5b303ab6b0fb51e18ddce512b54"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jun 25 11:40:02 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Jun 27 17:53:38 2014 -0700"
      },
      "message": "Camera1: Don\u0027t send partial results to ZSL clients\n\nZSL clients expect each received result as a complete result, and send back to\nHAL as a reprocess capture request. CaptureSequencer client assumes results to\nbe non-partial too, it need look into some metadata that may not be present in\npartial results.\n\nChange-Id: Id716913fd6e1c914726abd6610fddf91141783c2\n"
    },
    {
      "commit": "7b428d51a711b493090a2be4d27699215761a64e",
      "tree": "02ff3fe52761e1ddd0918ac90759c9c0a4ded684",
      "parents": [
        "e8f2c6cfe9afc5b303ab6b0fb51e18ddce512b54",
        "b919dd3334fed73e16ebac7b7e10cf2add34c338"
      ],
      "author": {
        "name": "Paul McLean",
        "email": "pmclean@google.com",
        "time": "Fri Jun 27 16:05:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 26 18:07:29 2014 +0000"
      },
      "message": "Merge \"Enabling USB Device and Android Device Vol inc/dec functionality for USB Audio Output\""
    },
    {
      "commit": "b919dd3334fed73e16ebac7b7e10cf2add34c338",
      "tree": "412879f22058e60bbc4e4e5ff935152bb95f193d",
      "parents": [
        "1760291cf87005f18605a32a35aed9cae09988f7"
      ],
      "author": {
        "name": "Paul McLean",
        "email": "pmclean@google.com",
        "time": "Thu Jun 26 13:16:44 2014 -0700"
      },
      "committer": {
        "name": "Paul McLean",
        "email": "pmclean@google.com",
        "time": "Thu Jun 26 15:25:59 2014 -0700"
      },
      "message": "Enabling USB Device and Android Device Vol inc/dec functionality for USB Audio Output\n\nBug: 13747844\nChange-Id: Ied5bb44f63a4e7183c52f8111e9a389b60ffe75f\n"
    },
    {
      "commit": "6146c08f0c3dd8b9e5788063aa433f304a810602",
      "tree": "26c9854fb01a0f9a7f3daf31cbbed99105cc88c3",
      "parents": [
        "3a227969f604d7c6a24a795661a13f70a5f37e1f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Mar 18 11:56:15 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jun 25 13:02:15 2014 -0700"
      },
      "message": "Add enabling variable for extended precision audio\n\nSet AudioFlinger::kEnableExtendedPrecision \u003d true to enable\nextended precision. Enabling will be required for devices (such as\nUSB) which report 24 bit or 32 bit sink formats.\n\nChange-Id: I0dc1d7a4f7607086d7b536ea0e43aef0e696f2ee\n"
    },
    {
      "commit": "ff17990df24913df9267c9c8b938178716298114",
      "tree": "fde9ef96f571e616912c442f90ee2be417f543cd",
      "parents": [
        "d239cb6e6898bdf2300e9038111727a9056c58ee",
        "741ace8776f052245e33a47a0b99400f75996f45"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jun 25 18:04:02 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 25 17:34:02 2014 +0000"
      },
      "message": "Merge \"cameraservice: Deprecate triggerId tags\""
    },
    {
      "commit": "1760291cf87005f18605a32a35aed9cae09988f7",
      "tree": "96efa72f2501a1e8fd3c4520c99e0fac71db6b21",
      "parents": [
        "0e88703fce53453382b33a6462f21e67019ae3fa",
        "84c70244bfea51b3413a8d8ffbf74ca737436251"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 25 15:57:06 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 25 03:38:12 2014 +0000"
      },
      "message": "Merge \"audio policy: fix several issues on routing APIs.\""
    },
    {
      "commit": "84c70244bfea51b3413a8d8ffbf74ca737436251",
      "tree": "cd427568a2d356b0c114cfb462e836cb67233d3a",
      "parents": [
        "cd8fce8fbe0f515e53a0ea0f50b739cf42ee57a4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jun 23 08:46:27 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 24 14:28:06 2014 -0700"
      },
      "message": "audio policy: fix several issues on routing APIs.\n\n- Do not list duplicated outputs in listAudioPorts(): duplicated\noutputs are not valid sources for audio patches.\nAlso add asserts to make sure that an audio port with no valid profile\nis never used by audio routing APIs.\n- Fix typos causing the wrong device type to be used\nwhen creating an audio patch.\n- Fix error in building config mask in toAudioPortConfig().\n\nChange-Id: I4505891dbed2c2fa92804d45505c3c2deb921f3e\n"
    },
    {
      "commit": "741ace8776f052245e33a47a0b99400f75996f45",
      "tree": "8e47d7a29f0f3d89e2915aa6119ee8b3374560ee",
      "parents": [
        "cd8fce8fbe0f515e53a0ea0f50b739cf42ee57a4"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jun 23 14:07:56 2014 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jun 24 13:29:20 2014 -0700"
      },
      "message": "cameraservice: Deprecate triggerId tags\n\nThe following two tags are deprecated from HAL 3.2:\nANDROID_CONTROL_AF_TRIGGER_ID\nANDROID_CONTROL_AE_PRECAPTURE_ID\n\nTrigger IDs are now internal to camera service.\n\nChange-Id: Iaebd62ecb0905a811fa37fe7850e0221c38a0006\n"
    },
    {
      "commit": "0e88703fce53453382b33a6462f21e67019ae3fa",
      "tree": "0015d84029e7e29ce37d0ed5bb81044316de48c2",
      "parents": [
        "18ecefebded5be766a000a8d8e8d578b7b846065",
        "4d23ca370dd0ce584f49a80ef9dfcdbb75ba2c8e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jun 24 22:06:56 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 24 18:00:13 2014 +0000"
      },
      "message": "Merge \"Use sp\u003c\u003e instead of raw pointer for FastMixer\""
    },
    {
      "commit": "4d23ca370dd0ce584f49a80ef9dfcdbb75ba2c8e",
      "tree": "8bde5cebd55bd04d58c4200f6879984e863d2b77",
      "parents": [
        "c27f5259cf2c45ea6f0a021fc17578f32f6c2f7d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue May 13 10:39:51 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jun 24 14:23:51 2014 -0700"
      },
      "message": "Use sp\u003c\u003e instead of raw pointer for FastMixer\n\nThis avoids worry about the thread lifetime during tear-down.\n\nBug: 15858655\nChange-Id: I896d24317bd6f53a574645cdf4cd514eaa205dd5\n"
    },
    {
      "commit": "d5d08c57fab3b8ccbdb5df206b579e51308dd3e7",
      "tree": "475ed475ab0f1b951a36889147b67afac58548be",
      "parents": [
        "c27f5259cf2c45ea6f0a021fc17578f32f6c2f7d",
        "e2d83756cb088db15fda73616ca097b8d190e1a1"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jun 23 22:04:11 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 23 17:44:28 2014 +0000"
      },
      "message": "Merge \"Camera: Clear ZSL buffer queue when jpeg size is changed\""
    },
    {
      "commit": "e2d83756cb088db15fda73616ca097b8d190e1a1",
      "tree": "aba00df07423c9e47fb428c3d98ba0985a6d67bc",
      "parents": [
        "cd8fce8fbe0f515e53a0ea0f50b739cf42ee57a4"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jun 23 10:22:37 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Jun 23 11:06:39 2014 -0700"
      },
      "message": "Camera: Clear ZSL buffer queue when jpeg size is changed\n\nBug: 15284653\nChange-Id: I4778e8443945d918801102ba600874568bde12dc\n"
    },
    {
      "commit": "eaf07697a9146d27ca863db5c43da64af4f8c94a",
      "tree": "90fc5545cfabb80f800709a2b78840926389378b",
      "parents": [
        "cd8fce8fbe0f515e53a0ea0f50b739cf42ee57a4",
        "e4fc42359cdd9786e521054a3a0491d6bc3a9e1c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 23 16:44:53 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 23 14:51:00 2014 +0000"
      },
      "message": "Merge \"Add test-mixer AudioMixer test program\""
    }
  ],
  "next": "e4fc42359cdd9786e521054a3a0491d6bc3a9e1c"
}
