)]}'
{
  "log": [
    {
      "commit": "9088fdabc555053306169fc30f5f0418ff5e6b96",
      "tree": "7b9386b778fce4a0106a6f000573cb0697c48959",
      "parents": [
        "c7241e4390a26fd100415e04f8761f3dad8c938e",
        "03e015d2e6d38de6e7041766b37fe03746e9c940"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 21 23:28:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 23:28:44 2016 +0000"
      },
      "message": "Merge \"audio policy: fix getDeviceForStrategy()\" into nyc-dev\nam: 03e015d\n\n* commit \u002703e015d2e6d38de6e7041766b37fe03746e9c940\u0027:\n  audio policy: fix getDeviceForStrategy()\n"
    },
    {
      "commit": "0f928fab9963f15c524f4416b3d52d2df4a93eec",
      "tree": "e32ddb682d5835ddea58ac51c098378a3b81cb39",
      "parents": [
        "02c4f1c02b832868bbae2bf2c62039e54dc0b6d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 21 12:06:20 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Mar 21 14:19:31 2016 -0700"
      },
      "message": "audio policy: fix getDeviceForStrategy()\n\nModification of getDEviceForStrategy by commit 28d09f064 made\nwrong use of available output devices vector passed by reference\nand caused an update of the actual list of connected devices instead\nof the local list.\n\nBug: 27586202\n\nChange-Id: I805b9cf27e1fb28494e6e23b2b874e0e5c3487e6\n"
    },
    {
      "commit": "cad41411ffe66af71ad7ffeb8383a03e03fcb38c",
      "tree": "d724c3a4603e56d731b95c1e1e61b8c442cb6211",
      "parents": [
        "e5bd62ba2d585b51e0024998dc45974803d1ae2d",
        "02c4f1c02b832868bbae2bf2c62039e54dc0b6d4"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 21 14:59:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 14:59:21 2016 +0000"
      },
      "message": "Merge \"Fix typos in use of %#\" into nyc-dev\nam: 02c4f1c\n\n* commit \u002702c4f1c02b832868bbae2bf2c62039e54dc0b6d4\u0027:\n  Fix typos in use of %#\n"
    },
    {
      "commit": "6b1255bdd3d8d941f4952a98eadf3b454f36a2a9",
      "tree": "25716fd79433d052cfe5638431607d2201a1484a",
      "parents": [
        "560a198f1f95a085e24944b20df536e75e21cedb"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 11 13:22:36 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 18 17:43:40 2016 -0700"
      },
      "message": "Fix typos in use of %#\n\nChange-Id: I5e49f89dc0e49bc3f5f2d3922d390982a3773384\n"
    },
    {
      "commit": "73ea4299306f18ae7e8ee1deff00933522abccbf",
      "tree": "b2c8da1eca8cd9dee847ca843d2d734a2ee34834",
      "parents": [
        "b363544cc78b94517081dc3eb8647f39fbd0a7bb",
        "560a198f1f95a085e24944b20df536e75e21cedb"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 18 20:28:45 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 18 20:28:45 2016 +0000"
      },
      "message": "Merge \"Update audio services for 64 bit compilation\" into nyc-dev\nam: 560a198\n\n* commit \u0027560a198f1f95a085e24944b20df536e75e21cedb\u0027:\n  Update audio services for 64 bit compilation\n"
    },
    {
      "commit": "560a198f1f95a085e24944b20df536e75e21cedb",
      "tree": "bdecbf10f8294847938d4b0baa5dcf1a8ca3f9a8",
      "parents": [
        "c40fcb01669240e9c1a6af74bcb0fcd85147fa87",
        "8fa2697e21c61998f78c346251d2c08f77d720ea"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 18 20:23:25 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 18 20:23:26 2016 +0000"
      },
      "message": "Merge \"Update audio services for 64 bit compilation\" into nyc-dev"
    },
    {
      "commit": "8fa2697e21c61998f78c346251d2c08f77d720ea",
      "tree": "17e06c62a4e47b816e63cf5fbae0907fbb2efb5f",
      "parents": [
        "7e258e85368ccc8e714235a22206527090685a9b"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Mar 03 13:19:27 2016 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Mar 17 18:06:46 2016 -0700"
      },
      "message": "Update audio services for 64 bit compilation\n\naudioserver still runs in 32 bits\n\nBug: 27479136\nChange-Id: I99ac607e4ce006a87abc2a3f838023e00ef78647\n"
    },
    {
      "commit": "5ab60beffcd2d1a835d0b09dcc7ee59eb084c59e",
      "tree": "17a0dcb5c8404b9fdbee958a9c4e7bebe27352f2",
      "parents": [
        "20f18efb29b8fea661dd4119a764d3f8d4dfe7a2",
        "a8d309df2f603767c0f0ad9248aef47a5b6ed5b8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 17 17:33:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 17 17:33:22 2016 +0000"
      },
      "message": "Merge \"audio policy: fix HW A/V sync rerouting\" into nyc-dev\nam: a8d309d\n\n* commit \u0027a8d309df2f603767c0f0ad9248aef47a5b6ed5b8\u0027:\n  audio policy: fix HW A/V sync rerouting\n"
    },
    {
      "commit": "20f18efb29b8fea661dd4119a764d3f8d4dfe7a2",
      "tree": "dbfc77377a975892c262875568d5be025698eb3f",
      "parents": [
        "f91072ab57f9fadade6c3eba2aabb1a914a94345",
        "9a57e34f476d5d2400e6e8ffac303c6190e641f0"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 17 17:33:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 17 17:33:21 2016 +0000"
      },
      "message": "Merge \"Use audio_session_t consistently\" into nyc-dev\nam: 9a57e34\n\n* commit \u00279a57e34f476d5d2400e6e8ffac303c6190e641f0\u0027:\n  Use audio_session_t consistently\n"
    },
    {
      "commit": "9462ca1f5a54b9dc40ad0cddb56696dd7180020f",
      "tree": "974673388019c59830687c81679fb093eb1d982d",
      "parents": [
        "0782f70d662c0c0ff151beb750e9bec972d31628",
        "53ce1e03efa1a12b3acc7d76dd0c273487ca3746"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 17 17:33:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 17 17:33:21 2016 +0000"
      },
      "message": "Merge \"Dynamic policies: support for device selection\" into nyc-dev\nam: 53ce1e0\n\n* commit \u002753ce1e03efa1a12b3acc7d76dd0c273487ca3746\u0027:\n  Dynamic policies: support for device selection\n"
    },
    {
      "commit": "a8d309df2f603767c0f0ad9248aef47a5b6ed5b8",
      "tree": "2b851cc9d742b7b448ab929c9e008d0167a66dab",
      "parents": [
        "9a57e34f476d5d2400e6e8ffac303c6190e641f0",
        "14cbfcae68582eca97f1a8168c584254515879ee"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 17 16:51:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 17 16:51:24 2016 +0000"
      },
      "message": "Merge \"audio policy: fix HW A/V sync rerouting\" into nyc-dev"
    },
    {
      "commit": "14cbfcae68582eca97f1a8168c584254515879ee",
      "tree": "5dd9a3b51f53ff3e8c3a066f14a79a305ce5ec82",
      "parents": [
        "b53ab34b95b8633070cbef5d03162d182aac3a9a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 17 09:42:16 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 17 09:43:53 2016 -0700"
      },
      "message": "audio policy: fix HW A/V sync rerouting\n\nDo not allow HW A/V sync tracks to be attached\nto a PCM mixer as those tracks carry time stamps in band.\n\nCherry pick of c576f6a0 from lmp-mr1-tv-dev.\n\nBug: 25293500.\n\nChange-Id: I1f080232e439a410ded25ca8e461113a96687a3b\n"
    },
    {
      "commit": "9a57e34f476d5d2400e6e8ffac303c6190e641f0",
      "tree": "00b1522342b6b5a05a9a1dea154f1eb87ed36cfb",
      "parents": [
        "dabb051cf03b5ccc994c769a1cd23f9e6c378dee",
        "d848eb48c121c119e8ba7583efc75415fe102570"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 17 14:22:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 17 14:22:53 2016 +0000"
      },
      "message": "Merge \"Use audio_session_t consistently\" into nyc-dev"
    },
    {
      "commit": "7638ca29e8400a19524adb982e9d22c02786de82",
      "tree": "5d1ef493f79529cd5d5a1cce932c6dec3e5d8e69",
      "parents": [
        "9515aca0c07a32128a65a68749bda3ea6851c109"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Mar 04 17:42:44 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Mar 16 14:28:09 2016 -0700"
      },
      "message": "Dynamic policies: support for device selection\n\nDynamic policy mix: rename \"registration\" field to device address\n  as this reflects the true use of the field.\nAudioPolicyManager: dynamic policy registration differs depending\n  on policy routing flags.\nWhen register a mix with the RENDER flag, iterate over all outputs\u0027\n  patches to find a matching device and address.\n\nBug 25448664\n\nChange-Id: I71584081e7f1b2b5252fb6c4659fdeb464f7d282\n"
    },
    {
      "commit": "d848eb48c121c119e8ba7583efc75415fe102570",
      "tree": "06733e396ad546bf39be0a6699193d041883edad",
      "parents": [
        "38246e482ea3bd1e0f88f7133934ec4537b48bbd"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 08 13:42:11 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 16 14:04:22 2016 -0700"
      },
      "message": "Use audio_session_t consistently\n\nBug: 27562099\nChange-Id: I328d8226191386b163f2ace41233607294c50dcd\n"
    },
    {
      "commit": "1ae901788998027fbaa6d82cde16fa407c6ca3aa",
      "tree": "958c1f19c703d8d7056bc9d60f8aac7ad4882b42",
      "parents": [
        "b95abe525127767dbf2c6b7f2055fbdc40f66f05",
        "c8e72cb140217b5ada2ef4d66480c2b13adbd014"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 11 19:03:35 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 11 19:03:35 2016 +0000"
      },
      "message": "Merge \"audio policy: fix volume control regression\" into nyc-dev\nam: c8e72cb140\n\n* commit \u0027c8e72cb140217b5ada2ef4d66480c2b13adbd014\u0027:\n  audio policy: fix volume control regression\n"
    },
    {
      "commit": "794fde269478b50be873d9d93574b8aa2b6afc42",
      "tree": "91bee67f3d26b855c8738d52b9594ce206dc669b",
      "parents": [
        "356d3f528514f0f06e6ae1bccf0bed7be9fd1fcb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 11 09:50:45 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 11 09:50:45 2016 -0800"
      },
      "message": "audio policy: fix volume control regression\n\ncommit 28d09f064 introduced regressions in volume control resulting\nin changing some device/stream volumes unexpectedly.\n\nThe problem was in the logic consisting in considering streams equivalent for\nvolume control based on their associated strategy: The rule is wrong because it\ncauses a volume change on a given stream to cause the same change on all streams\nsharing the same strategy. For instance stream SYSTEM and MUSIC share the same\nstrategy and changing SYSTEM stream volume would change MUSIC volume.\n\nThe new rule just considers the stream type when deciding if two stream share the\nsame volume control.\n\nAlso fixed possible calls to getStrategy() with stream PATCH causing asserts.\n\nBug: 27586382\n\nAuthor: Eric Laurent \u003celaurent@google.com\u003e\nDate:   Tue Mar 8 10:43:05 2016 -0800\n\n    audio policy: improve accessibility volume\n\nChange-Id: I3fe2a25767319800b0db5fd1ed7c1bd751b04732\n"
    },
    {
      "commit": "0cc8544c869e379a90e8107f44b0595b74aaec77",
      "tree": "882d83ddd534ee1981f9ddb427556f3c47b08306",
      "parents": [
        "d162440eb14448cac5a14373c5d9ba29ec616259",
        "905d50834def592740d666b4c49549137bdf5899"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 10 19:20:54 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 10 19:20:54 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: tighter match for device descriptor query\" into nyc-dev\nam: 905d50834d\n\n* commit \u0027905d50834def592740d666b4c49549137bdf5899\u0027:\n  AudioPolicy: tighter match for device descriptor query\n"
    },
    {
      "commit": "905d50834def592740d666b4c49549137bdf5899",
      "tree": "e9866f970ba2cefe41e7f59994d672817557161f",
      "parents": [
        "becc4d8606afcc8d6a739a27b9f196e5da4463e9",
        "f7f85438503e6964aba3ddabd6228e7fefb36735"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 10 19:14:45 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 10 19:14:46 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: tighter match for device descriptor query\" into nyc-dev"
    },
    {
      "commit": "f7f85438503e6964aba3ddabd6228e7fefb36735",
      "tree": "7a835f904aeab82d88fc7efab0cd8ddba2329816",
      "parents": [
        "7e258e85368ccc8e714235a22206527090685a9b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 10 09:14:29 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 10 10:17:52 2016 -0800"
      },
      "message": "AudioPolicy: tighter match for device descriptor query\n\nWhen querying a module for a device descriptor, the matching was\n  too \"loose\": if a device type and address was not found, a\n  match was returned for just the device. While this works for device\n  types where only one is connected to the system (e.g. wired headphones),\n  this is an improper behavior for devices such as REMOTE_SUBMIX where\n  multiple are \"connected\" to the DUT, but with different addresses.\n\nBug 27337358\nBug 27336527\n\nChange-Id: I9b6464485da2bedde2d14b624133e02b5a3fa357\n"
    },
    {
      "commit": "506ab3a8b1563cc21677e5b532c84067acb918c3",
      "tree": "1b8f8ce2e67a39cc0e43c2570d7ef35de42f922a",
      "parents": [
        "d10f1be6b036522742f99ee4da97b6be6a970201",
        "a8b282504d103f1156e7d4e14104e5e91317e374"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 23:48:41 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 08 23:48:41 2016 +0000"
      },
      "message": "Merge \"audio policy: improve accessibility volume\" into nyc-dev\nam: a8b282504d\n\n* commit \u0027a8b282504d103f1156e7d4e14104e5e91317e374\u0027:\n  audio policy: improve accessibility volume\n"
    },
    {
      "commit": "a8b282504d103f1156e7d4e14104e5e91317e374",
      "tree": "fe9d35ff271fc74e3da284d594c0752ac485b1e8",
      "parents": [
        "0c07db6e89ec1daec156b6aff9bb05027d79b32a",
        "28d09f06422841b4274d7fed6ad3441dc97382b2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 22:52:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 08 22:52:38 2016 +0000"
      },
      "message": "Merge \"audio policy: improve accessibility volume\" into nyc-dev"
    },
    {
      "commit": "28d09f06422841b4274d7fed6ad3441dc97382b2",
      "tree": "87d1d7baa2a1d6079efc1ec6f929e9d987423998",
      "parents": [
        "9322ba85a06ae149575ab102dc9bcffb4388cc7e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 10:43:05 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 14:41:50 2016 -0800"
      },
      "message": "audio policy: improve accessibility volume\n\nFix some regressions caused by the introduction of accessibility\nstream type and strategy in M.\n\n- change the way ACCESSIBILITY usage maps to a given strategy: always map\nto strategy ACCESSIBILITY but implement a specific device selection for\nstrategy ACCESSIBILITY in getDeviceForStrategy(). This makes sure that\naccessibility prompts always use ACCESSIBILITY stream type.\n\n- optimize getDeviceForStrategy() to avoid reloading the list of outputs\nand devices from the observer when called recursively.\n\n-  make sure that all volume APIs also take into account ACCESSIBILITY stream\nwhen called for MUSIC stream. Generalize the concept of matching strategies\nfor straqegies that should be considered equivalent for volume control.\nModifications in:\n- initStreamVolume()\n- setStreamVolumeIndex()\n- isStreamActive()\n- getDevicesForStream()\n\nBug: 25067903\nBug: 25616373\nChange-Id: Id8c7dd3231f79572b278407bc73186fc42dcc028\n"
    },
    {
      "commit": "d10f1be6b036522742f99ee4da97b6be6a970201",
      "tree": "ee98463c309385af33e0c5ed172350a6d01f78c9",
      "parents": [
        "f416959aeda09922c8f4f9bc6043c9c086d58100",
        "0c07db6e89ec1daec156b6aff9bb05027d79b32a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 21:00:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 08 21:00:21 2016 +0000"
      },
      "message": "Merge \"audio policy: change default in call routing for line out device\" into nyc-dev\nam: 0c07db6e89\n\n* commit \u00270c07db6e89ec1daec156b6aff9bb05027d79b32a\u0027:\n  audio policy: change default in call routing for line out device\n"
    },
    {
      "commit": "a0b18ce8f737c0d6ccd728e17c3f355a250ae1dc",
      "tree": "405e015e521d8688831df089f31446b2e1f2f241",
      "parents": [
        "9322ba85a06ae149575ab102dc9bcffb4388cc7e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 11:05:00 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 08 11:13:25 2016 -0800"
      },
      "message": "audio policy: change default in call routing for line out device\n\nCurrent strategy is to use LINE OUT for calls only when speaker phone mode\nis enabled.\nThis creates confusion because most users don\u0027t understand why the behavior\ndiffers between a headset and a line out.\nAlso the main use of a line out device for calls is when connected to a car kit\nvia an aux cable. In this case, you want to use the car kit by default without\nhaving to touch your phone and select speaker phone.\n\nBug: 27548502\n\nChange-Id: I3e8a540b91dc80516439a97dabc9641b95ce23a7\n"
    },
    {
      "commit": "573d46528e358fd549cf1662ec60f9d3de9e3b61",
      "tree": "6a6744b83c42d287b4125882fca895fc334daeba",
      "parents": [
        "599b62b06e008241ea39090aa63e930f7adbc8a6",
        "9322ba85a06ae149575ab102dc9bcffb4388cc7e"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Sat Mar 05 02:16:16 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Mar 05 02:16:16 2016 +0000"
      },
      "message": "Merge \"audio policy: engine configurable: upgrade to PFW 3.2.4\" into nyc-dev\nam: 9322ba85a0\n\n* commit \u00279322ba85a06ae149575ab102dc9bcffb4388cc7e\u0027:\n  audio policy: engine configurable: upgrade to PFW 3.2.4\n"
    },
    {
      "commit": "c1391f91c4f85f5f2f08b072486455b990817710",
      "tree": "df0588423b9913a4a3b93e2288958fe8fdbe3d42",
      "parents": [
        "97d5e4eb77687288b463f300912f6eb5c2b5b60e"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Thu Dec 10 09:43:48 2015 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 04 17:56:00 2016 -0800"
      },
      "message": "audio policy: engine configurable: upgrade to PFW 3.2.4\n\nThis patch updates the policy plugin to PFW 3.2.4.\n\nBug: 22887211\n\nChange-Id: Ic9f54c3108adeaec7031a1fd4f8e3b7cfb1c5abf\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "2798f49bb4924960fe2e60ad7bb88e00d0695638",
      "tree": "8a8f4fcf5a7d93be810ed21005c9e5321237d2d9",
      "parents": [
        "e9def8832a04e16823c21639d815359c816c57a9",
        "0494ebbeda158681dbe0c7cf68abfd475a19d139"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Mar 03 21:39:31 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 03 21:39:31 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: remove unnecessary device reconnection\" into nyc-dev\nam: 0494ebbeda\n\n* commit \u00270494ebbeda158681dbe0c7cf68abfd475a19d139\u0027:\n  AudioPolicyManager: remove unnecessary device reconnection\n"
    },
    {
      "commit": "0494ebbeda158681dbe0c7cf68abfd475a19d139",
      "tree": "0569cacdbc448fbd1465d2730194ad4d0afb4137",
      "parents": [
        "dadb4ea87f5aa5230c8168b340f595b72fab878c",
        "878e32d7cefc19d86cd0602eda6101961edad6fa"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Mar 03 19:42:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 19:42:59 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: remove unnecessary device reconnection\" into nyc-dev"
    },
    {
      "commit": "92af70b8ed1c60ff6208ebdfb2cd414a739c42db",
      "tree": "2bdbb183c2972634187ccfe8289a847286676977",
      "parents": [
        "e4ddfc582a2a86ff0017dbcca6b5e766b4404ad5",
        "62b5c0c28becab95727739889ee762f727c2a462"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 03 02:08:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 03 02:08:33 2016 +0000"
      },
      "message": "Merge \"audio flinger: fix offload track underrun\" into nyc-dev\nam: 62b5c0c28b\n\n* commit \u002762b5c0c28becab95727739889ee762f727c2a462\u0027:\n  audio flinger: fix offload track underrun\n"
    },
    {
      "commit": "e4ddfc582a2a86ff0017dbcca6b5e766b4404ad5",
      "tree": "6188e8fbd906b43c538f8ce4493c261a10697227",
      "parents": [
        "8b763427ec1bddc01343d458e40468052421bc61",
        "1e3acb84fcab8f00dba0a78ad4badaef4ba3869e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 03 02:08:16 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 03 02:08:16 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: capture sample rate 0 is route-specific default\" into nyc-dev\nam: 1e3acb84fc\n\n* commit \u00271e3acb84fcab8f00dba0a78ad4badaef4ba3869e\u0027:\n  AudioPolicy: capture sample rate 0 is route-specific default\n"
    },
    {
      "commit": "62b5c0c28becab95727739889ee762f727c2a462",
      "tree": "a0e840cbcd8ba4016f0990da4ed5002645435064",
      "parents": [
        "1e3acb84fcab8f00dba0a78ad4badaef4ba3869e",
        "517161856d74f5fe39cce131f29b977bc1745991"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 03 02:02:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 02:02:50 2016 +0000"
      },
      "message": "Merge \"audio flinger: fix offload track underrun\" into nyc-dev"
    },
    {
      "commit": "1e3acb84fcab8f00dba0a78ad4badaef4ba3869e",
      "tree": "e80d5573899d256b3c2cd4d1ff1f1d9583a8fd98",
      "parents": [
        "973074eb8471496c882dc7372d729b23e03bba7c",
        "05ddca504ce8e0e61b41e5c1aebea72086eea57b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 03 02:00:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 02:00:29 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: capture sample rate 0 is route-specific default\" into nyc-dev"
    },
    {
      "commit": "8b763427ec1bddc01343d458e40468052421bc61",
      "tree": "be442818e9fefe7eea245980d4e17a781c9aff33",
      "parents": [
        "ae2f5ba4255df0a6afbf0e4e9f6f266ef277eed2",
        "973074eb8471496c882dc7372d729b23e03bba7c"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Mar 03 01:50:49 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 03 01:50:49 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: fix device enumeration\" into nyc-dev\nam: 973074eb84\n\n* commit \u0027973074eb8471496c882dc7372d729b23e03bba7c\u0027:\n  AudioPolicyManager: fix device enumeration\n"
    },
    {
      "commit": "517161856d74f5fe39cce131f29b977bc1745991",
      "tree": "c12acaeb7597dd99c1a5f0c96d5af7f8a4b7b52a",
      "parents": [
        "db52e5e3dc15f7233ccd9c128fe43f2b2f58b29b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 29 18:00:56 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 02 17:40:18 2016 -0800"
      },
      "message": "audio flinger: fix offload track underrun\n\nFix offload track underrun detection causing early disabling\nof offloaded audio tracks.\n\nOptimize sleep time in case of underrun to avoid spinning while\nwaiting for new data.\n\nRe-enable offload when streaming\n\nBug: 26668110\n\nChange-Id: I874728c69647ac05e1effb84c48700a6d0ac7435\n"
    },
    {
      "commit": "878e32d7cefc19d86cd0602eda6101961edad6fa",
      "tree": "589d200f299d31767cc6611a1e55d320d38171bb",
      "parents": [
        "702b105b290d9a3c8b23f3c809a79086d784c9be"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Mar 02 17:09:54 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Mar 02 17:09:54 2016 -0800"
      },
      "message": "AudioPolicyManager: remove unnecessary device reconnection\n\nThis is now handled by a device reconnection in the AudioService.\n\nBug: 27434478\nChange-Id: I2182b205c2b72cebff657a7bbee95df97f97eb55\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "702b105b290d9a3c8b23f3c809a79086d784c9be",
      "tree": "ae798e99cc3cf42aa9a6a4d918706d4c6c28da80",
      "parents": [
        "24b02edc16fd4d41367bc0acc42760bbe7d70f21"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Mar 02 16:38:26 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Mar 02 16:38:26 2016 -0800"
      },
      "message": "AudioPolicyManager: fix device enumeration\n\nThe AudioDeviceInfo only had PCM_FLOAT because the device enumeration was\nstopping because of an error. The error was detected by new code\nin the AudioFlinger.\n\nThe root error was not clearing a variable after a close.\n\nBug: 27457547\nChange-Id: I529a26c8c0a688863bcf316ad365feddc303fe43\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "05ddca504ce8e0e61b41e5c1aebea72086eea57b",
      "tree": "71137b6ef4df1f294d93d2cedc421b0f85190374",
      "parents": [
        "db52e5e3dc15f7233ccd9c128fe43f2b2f58b29b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 11 08:17:12 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 02 15:17:35 2016 -0800"
      },
      "message": "AudioPolicy: capture sample rate 0 is route-specific default\n\nBug: 25641253\nBug: 21019153\nChange-Id: I7d193640572c08ab5e5f1ecfc8ad6d31635967dd\n"
    },
    {
      "commit": "3a91db1ba96dba470ae003a7c2145be741ca9017",
      "tree": "26bf2bce2e447c7d59e1b0d0b0b1bbd66feec47d",
      "parents": [
        "1d633e39295b2feae447841a934a75b994fd8668",
        "e8158ffea27c9526547a7340dc5a085b8582033e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 01 23:10:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 01 23:10:22 2016 +0000"
      },
      "message": "Merge \"Add use for audio_unique_id_t\" into nyc-dev\nam: e8158ffea2\n\n* commit \u0027e8158ffea27c9526547a7340dc5a085b8582033e\u0027:\n  Add use for audio_unique_id_t\n"
    },
    {
      "commit": "e8158ffea27c9526547a7340dc5a085b8582033e",
      "tree": "7181d69a3a95ea266981d09a734cf465ab351bbf",
      "parents": [
        "ddfef426b54153f04150596619cf9f1ad88afe9c",
        "eeecb980ff4c202d0a3c4b0bfe040dce2f73336d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 01 19:10:48 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 01 19:10:50 2016 +0000"
      },
      "message": "Merge \"Add use for audio_unique_id_t\" into nyc-dev"
    },
    {
      "commit": "eeecb980ff4c202d0a3c4b0bfe040dce2f73336d",
      "tree": "decce0d925acd9efd68f2d540bbabb60c0661c6b",
      "parents": [
        "91afc2297dd1c39302dba6ff68e9839aae27d39a"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Feb 26 10:44:04 2016 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 01 08:32:58 2016 -0800"
      },
      "message": "Add use for audio_unique_id_t\n\nBug: 25641253\nBug: 21019153\nChange-Id: I65dc128e760c245f3d90559635a8981b186c87d7\n"
    },
    {
      "commit": "a3b8c24661eb8d7bab718029dbbfe35b4cfc57ac",
      "tree": "f35fc78d626d5533341bdb2f9ab7adfb38be0706",
      "parents": [
        "0cfae5863be38dec0247b3f8b88e6c5914dcb6bb",
        "65e74d0b8b60fddc9543c5e954628feb5941dd3c"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Mar 01 00:12:24 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 01 00:12:24 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: force encoded surround setting\" into nyc-dev\nam: 65e74d0b8b\n\n* commit \u002765e74d0b8b60fddc9543c5e954628feb5941dd3c\u0027:\n  AudioPolicyManager: force encoded surround setting\n"
    },
    {
      "commit": "09bc4612bdd5874d744c5da1183d96fbd2ad0235",
      "tree": "fc94045495e98c0f750c4bc262aea88c0f406e3b",
      "parents": [
        "1ba1eeca713c118ce12c97ac8bbdadbdd0cc5ff1"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Feb 24 15:58:15 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Feb 29 12:24:21 2016 -0800"
      },
      "message": "AudioPolicyManager: force encoded surround setting\n\nBug: 26373761\nChange-Id: I0f7a486bf1aa7a27f15cf220e2c75ef23f8f8536\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "51f453aac3ebcb0de4036acc9b829f58d27c3ff5",
      "tree": "423043746ce3e5da156808a8ccb95df0b8d08fc8",
      "parents": [
        "1e9a65df13859b44b91610ef4cc721155ab5eaa8",
        "b3e06a7592fc189315a90a88cbea66e31c2e6b41"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 22:43:58 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 26 22:43:58 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: AudioOutputDescriptor set/get for patch handle\" into nyc-dev\nam: b3e06a7592\n\n* commit \u0027b3e06a7592fc189315a90a88cbea66e31c2e6b41\u0027:\n  AudioPolicy: AudioOutputDescriptor set/get for patch handle\n"
    },
    {
      "commit": "1e9a65df13859b44b91610ef4cc721155ab5eaa8",
      "tree": "7fb431781504b199daa7bee5ca364c1146336272",
      "parents": [
        "a151bf331e801bba1d0a2c99d53b24584f0c4507",
        "0d035b6057cef680a3755c6a8fc914c483648903"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 22:43:50 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 26 22:43:50 2016 +0000"
      },
      "message": "Merge \"Send audio patch in recording callback\" into nyc-dev\nam: 0d035b6057\n\n* commit \u00270d035b6057cef680a3755c6a8fc914c483648903\u0027:\n  Send audio patch in recording callback\n"
    },
    {
      "commit": "b3e06a7592fc189315a90a88cbea66e31c2e6b41",
      "tree": "efdbd4add1809606bf790cb917e28a5110af11c6",
      "parents": [
        "0d035b6057cef680a3755c6a8fc914c483648903",
        "ff155c642fe7d342a3110444c6103f788230af53"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 22:38:02 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 26 22:38:03 2016 +0000"
      },
      "message": "Merge \"AudioPolicy: AudioOutputDescriptor set/get for patch handle\" into nyc-dev"
    },
    {
      "commit": "0d035b6057cef680a3755c6a8fc914c483648903",
      "tree": "bb507bd896e5503e9791b3303b01c68beff43c21",
      "parents": [
        "ecc8bbbf8a58fe9ab6d6ac41bebe70631a458134",
        "8c7cf3b7d0d7bccb9affbc34ae2ab2d6b332f972"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 22:37:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 26 22:37:34 2016 +0000"
      },
      "message": "Merge \"Send audio patch in recording callback\" into nyc-dev"
    },
    {
      "commit": "ff155c642fe7d342a3110444c6103f788230af53",
      "tree": "5ab784ffde5df4eef154c60b1f8a63f9d5a9ae06",
      "parents": [
        "8c7cf3b7d0d7bccb9affbc34ae2ab2d6b332f972"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 12:07:16 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 26 12:07:16 2016 -0800"
      },
      "message": "AudioPolicy: AudioOutputDescriptor set/get for patch handle\n\nFor symmetry with AudioInputDescriptor: no direct access to the\n  field for the patch handle.\n\nChange-Id: I5bffecf7a157ec042d749064208bc6c279008542\n"
    },
    {
      "commit": "8c7cf3b7d0d7bccb9affbc34ae2ab2d6b332f972",
      "tree": "2ce1446fe6fe647e3e0dcbcaf82ac45c5551f492",
      "parents": [
        "809aeb1f725beed877887fe1c5ca3430d811b328"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 25 17:08:24 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 25 17:08:24 2016 -0800"
      },
      "message": "Send audio patch in recording callback\n\nRemove direct access to patch handle in AudioInputDescriptor, replace with\n  set / get functions.\nAdd interface for AudioSession to query configuration from enclosing\n  input descriptor.\nWhen input descriptor\u0027s patch handle changes during a recording, propagate\n  the change through the recording notification callback.\n\nBug 26798796\n\nChange-Id: Ia1395d44da7ccfe69ca46877638d1eb49b3935ad\n"
    },
    {
      "commit": "21efb7fe5ca4bdb69a1f0649f51b76ed9441e362",
      "tree": "bffb5ae1b89360c81c0e6159b5fc196420483b00",
      "parents": [
        "276baf0a4d69d5bd7b48f83ad5d3537a190ece62",
        "78229d88678932244f7cbb6e52ad43c0d986a780"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Thu Feb 25 23:12:10 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 25 23:12:10 2016 +0000"
      },
      "message": "Merge \"audio policy: engine configurable: allow to use custom PFW and plugins\" into nyc-dev\nam: 78229d8867\n\n* commit \u002778229d88678932244f7cbb6e52ad43c0d986a780\u0027:\n  audio policy: engine configurable: allow to use custom PFW and plugins\n"
    },
    {
      "commit": "78229d88678932244f7cbb6e52ad43c0d986a780",
      "tree": "fcf5b5faa56d827b54c5e5f8c3f47f01295e4694",
      "parents": [
        "f013dc41d9ac1e295c91594e6f2ebc1455af5f41",
        "a2b6c4b54cd3ae3db7f2a7f1df6d6f889af1e743"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 25 23:11:20 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 25 23:11:20 2016 +0000"
      },
      "message": "Merge \"audio policy: engine configurable: allow to use custom PFW and plugins\" into nyc-dev"
    },
    {
      "commit": "a2b6c4b54cd3ae3db7f2a7f1df6d6f889af1e743",
      "tree": "918d8deb7c96efbc94d23b5880a8468d5436595e",
      "parents": [
        "fc958a0888d47b5d34847afab3b33d877d9ca007"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Thu Feb 25 16:56:06 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 25 23:10:53 2016 +0000"
      },
      "message": "audio policy: engine configurable: allow to use custom PFW and plugins\n\nAndroid build system prevents from having the same module\ntarget refered in more than one makefile. Some platform may need to use\na custom parameter manager version than the aosp version of the PFW.\nIt also concerns with associated plugins.\n\nThis patch inhibits the AOSP Policy PFW plugin if USE_CUSTOM_PARAMETER_MANAGER is\nset to true.\n\nBug; 22887211\n\nChange-Id: I71147b3e7c8a9296af3182f8a1401bc37191a276\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "462dd3b94adb359ea4e0d95f2d3d84bd5caa92b4",
      "tree": "3aea40cf644b91e28c5392f1f08d4263b92b937b",
      "parents": [
        "bce604a82d60e6fef43e3ca30518f82e7af2c346",
        "e736431c69e2a00468d140d2af97b63e0e5aa83a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 25 20:24:52 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 25 20:24:52 2016 +0000"
      },
      "message": "Merge \"audio policy: add device for audio bus\" into nyc-dev\nam: e736431c69\n\n* commit \u0027e736431c69e2a00468d140d2af97b63e0e5aa83a\u0027:\n  audio policy: add device for audio bus\n"
    },
    {
      "commit": "e736431c69e2a00468d140d2af97b63e0e5aa83a",
      "tree": "e9ac84c22b3e0b473deafb3df0afad84f391b9b0",
      "parents": [
        "5031b2f3ac5223587e48fc8463bec24cb62495ba",
        "58545be2ce4e701c8c37401edcc126a8b683890d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 25 20:19:37 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 25 20:19:38 2016 +0000"
      },
      "message": "Merge \"audio policy: add device for audio bus\" into nyc-dev"
    },
    {
      "commit": "bce5dfdac0e90701f53e4f8a2c0f5a3c44a0a4ac",
      "tree": "f947ac685345d51bf11e57c39659fd22a69e4fa9",
      "parents": [
        "00d1d9247488864deea46e09f121e79ae96ba82c",
        "f70077e43576f876bac08f3cf1f702b3c19b8184"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 24 17:13:20 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 24 17:13:20 2016 +0000"
      },
      "message": "Merge \"Send client / device format in recording callback\" into nyc-dev\nam: f70077e435\n\n* commit \u0027f70077e43576f876bac08f3cf1f702b3c19b8184\u0027:\n  Send client / device format in recording callback\n"
    },
    {
      "commit": "7281aa9810b33eff47b00104db26c97c77931611",
      "tree": "1fc5afe0784f22d1ab6507d07708b48b12b1c13d",
      "parents": [
        "eafe1f9734af31730790b0abaf8c6aae01bfee77"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 17 15:33:40 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Feb 23 16:23:45 2016 -0800"
      },
      "message": "Send client / device format in recording callback\n\nBug 26798796\n\nChange-Id: Ib4f64159c8371d87da49a8f0cad9317a87d843c4\n"
    },
    {
      "commit": "58545be2ce4e701c8c37401edcc126a8b683890d",
      "tree": "a7a404115488202a1cb438845aaefe6531aae963",
      "parents": [
        "f214d6936f66052bfabc51e3355f800e41b511f2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 22 18:54:20 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 22 18:54:20 2016 -0800"
      },
      "message": "audio policy: add device for audio bus\n\nAdd audio device category representing a bus in the\naudio subsystem. E.g a set of channels in MOST automotive bus.\n\nBug: 25448664\nChange-Id: Id00da57dc45037d4d8062e9a747c423940611539\n"
    },
    {
      "commit": "d88c1c0044cf1db95418ebbc474677d35fec269a",
      "tree": "77e0de918df936b952b9e29a5c310f8ff7f1b059",
      "parents": [
        "f989068f4fcfd6021e8f7ffaafc6c4d896bdfbcd",
        "c8fc4803705da79aaaeff909538a976bf0e45852"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 22 18:24:25 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Feb 22 18:24:25 2016 +0000"
      },
      "message": "Merge \"audiopolicy: Synchronize calls to Effects state\" into nyc-dev\nam: c8fc480370\n\n* commit \u0027c8fc4803705da79aaaeff909538a976bf0e45852\u0027:\n  audiopolicy: Synchronize calls to Effects state\n"
    },
    {
      "commit": "c8fc4803705da79aaaeff909538a976bf0e45852",
      "tree": "bd208256ad97b494095dc87e5a13968f035e4dfe",
      "parents": [
        "f214d6936f66052bfabc51e3355f800e41b511f2",
        "bab7bf46e15f7e2e304081c5cc56f8d58f5f09f3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 22 18:09:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 22 18:09:32 2016 +0000"
      },
      "message": "Merge \"audiopolicy: Synchronize calls to Effects state\" into nyc-dev"
    },
    {
      "commit": "bab7bf46e15f7e2e304081c5cc56f8d58f5f09f3",
      "tree": "1a2a1cbb763c962ac662980e9302e4060deecbca",
      "parents": [
        "b74dc56b2fd3ec872383544d4b6d4950c206259b"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Fri Oct 30 18:02:23 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 19 18:18:00 2016 -0800"
      },
      "message": "audiopolicy: Synchronize calls to Effects state\n\nSynchronize calls that might access Effects state (alternate approach)\n\nBug: 26516500\n\nChange-Id: Ie03de9c67232e0ac7f5db5cbfe87ec058acbfc8e\n"
    },
    {
      "commit": "107f4fec11b106c1353efc3efe42ffced0b38eea",
      "tree": "84a2ef6e5ce1126931d3e4a1127d254b4c5a5f64",
      "parents": [
        "ab8c640c6e8fcd8051bb2f1eb8c9ff5123100246",
        "408d0b67c6e384052fd114fbe969a558f990d7a1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 18 23:57:47 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 18 23:57:47 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE - audio policy: disable concurrent capture\" into nyc-dev\nam: 408d0b67c6\n\n* commit \u0027408d0b67c6e384052fd114fbe969a558f990d7a1\u0027:\n  DO NOT MERGE - audio policy: disable concurrent capture\n"
    },
    {
      "commit": "232f26f8b673973ffa463f80b08b731ffacc8785",
      "tree": "0722b9bc20a7b049ba6b4120138ef8845293e37f",
      "parents": [
        "b74dc56b2fd3ec872383544d4b6d4950c206259b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 17 18:06:27 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 18 22:03:21 2016 +0000"
      },
      "message": "DO NOT MERGE - audio policy: disable concurrent capture\n\nThis reverts commit 4342335fb84bfa4ec5b99e3ef82f186820c2275f.\nThis reverts commit 56afc7a5cc0f0bfc8021f6413b2e2267050bdc8a.\nThis reverts commit 313d1e7dfb4bf8e0a2f09a9adb287062dd64410c.\nThis reverts commit fb66dd9f95a1168698f072c4e5c2a2cf8c49a80f.\n\nBug: 22702906\n\nChange-Id: I9085918f1f7b12e28430958cceb768bb29c12bdb\n"
    },
    {
      "commit": "994d49d96171ea2138b79d60b650150d2eff2973",
      "tree": "f1c00ce9b4be0910307108077124b1a87ba69f49",
      "parents": [
        "c59de9ba394887e748190e223165e6f15f9a1b5f",
        "b74dc56b2fd3ec872383544d4b6d4950c206259b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Feb 18 00:59:36 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 18 00:59:36 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: add comment for disabling offload when streaming.\" into nyc-dev\nam: b74dc56b2f\n\n* commit \u0027b74dc56b2fd3ec872383544d4b6d4950c206259b\u0027:\n  AudioPolicyManager: add comment for disabling offload when streaming.\n"
    },
    {
      "commit": "b74dc56b2fd3ec872383544d4b6d4950c206259b",
      "tree": "2eb75fd747728028728765b09b8ef406a3f0fb5a",
      "parents": [
        "de223b40b81450703980667ffffc766a16c3447c",
        "4ca44d77ede74eda712fbae80700dc92d5922e02"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Feb 18 00:58:02 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 00:58:02 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: add comment for disabling offload when streaming.\" into nyc-dev"
    },
    {
      "commit": "4ca44d77ede74eda712fbae80700dc92d5922e02",
      "tree": "20ee74e31b67db0225d6de4420661e16f9472092",
      "parents": [
        "f25f8410c01922c58d78ec35da420c3b4fed7e38"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 17 16:56:38 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 17 16:56:38 2016 -0800"
      },
      "message": "AudioPolicyManager: add comment for disabling offload when streaming.\n\nBug: 23499384\nChange-Id: I74214c9cb444b10a6f50ffe499938945c063afca\n"
    },
    {
      "commit": "c59de9ba394887e748190e223165e6f15f9a1b5f",
      "tree": "6d194f66e35222193c188f67f4ff4f9f5f9df0b6",
      "parents": [
        "37205a1b77b4f06af819e7d61418c86a0083d2d2",
        "de223b40b81450703980667ffffc766a16c3447c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 18 00:51:01 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 18 00:51:01 2016 +0000"
      },
      "message": "Merge \"audio policy: select output with best sample format match\" into nyc-dev\nam: de223b40b8\n\n* commit \u0027de223b40b81450703980667ffffc766a16c3447c\u0027:\n  audio policy: select output with best sample format match\n"
    },
    {
      "commit": "de223b40b81450703980667ffffc766a16c3447c",
      "tree": "65f5bea3ce3eaea8742a88f96c0151bdaa24ac98",
      "parents": [
        "f25f8410c01922c58d78ec35da420c3b4fed7e38",
        "e693002b0fb25099540588245892ed98103749ba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 18 00:46:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 00:46:42 2016 +0000"
      },
      "message": "Merge \"audio policy: select output with best sample format match\" into nyc-dev"
    },
    {
      "commit": "e693002b0fb25099540588245892ed98103749ba",
      "tree": "5c6b80929a798987d5ae658d3041cdefd4ba162d",
      "parents": [
        "d25c45526d9598218433b0fa59e1f5accbd5b639"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 11 10:20:40 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 17 15:34:40 2016 -0800"
      },
      "message": "audio policy: select output with best sample format match\n\nAdd rules allowing selection of the output stream with the sample\nformat offering the best match to the client track sample format\nwhen more than one output is compatible with a request.\n\nBug: 27210844\n\nChange-Id: I31981940be5d1c06d713d52187cfb0a7bf355773\n"
    },
    {
      "commit": "37205a1b77b4f06af819e7d61418c86a0083d2d2",
      "tree": "f6a21f2b9b1623f422d136f93ef4bfd949c96aaf",
      "parents": [
        "4c4903fa2f277f0bad9269f884ec6f85069e7fa8",
        "f25f8410c01922c58d78ec35da420c3b4fed7e38"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 17 21:02:04 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 17 21:02:04 2016 +0000"
      },
      "message": "Merge \"AudioPolicyManager: disable offload mode when streaming.\" into nyc-dev\nam: f25f8410c0\n\n* commit \u0027f25f8410c01922c58d78ec35da420c3b4fed7e38\u0027:\n  AudioPolicyManager: disable offload mode when streaming.\n"
    },
    {
      "commit": "7b8d434379e486ff32d43875676f423ce9ee1c05",
      "tree": "b5accd56e1190c2ab7b84d42d392746f53044211",
      "parents": [
        "b0a144d705a021994628d136a170a6d2bd4282e7"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Feb 16 17:56:37 2016 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Feb 17 19:44:18 2016 +0000"
      },
      "message": "AudioPolicyManager: disable offload mode when streaming.\n\nThis is a temporary work around until the root cause is fixed in offload\nplayback path.\n\nBug: 23499384\nChange-Id: I1ee8197ba8995084287ef9385a0f6a30e4bb9351\n"
    },
    {
      "commit": "4b10421d8f8abb11907a4c54e4e225b6d9330ece",
      "tree": "f67d12d4813227d1169b83a3201ce03bf0c5038b",
      "parents": [
        "aca058c6e86a975dff03038347eb73ead4b71201",
        "11c3022b6e5fcf48c8ba7c13bba899ff1b00a9e9"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Sat Feb 13 01:26:14 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Feb 13 01:26:14 2016 +0000"
      },
      "message": "Merge \"Add missing liblog dependency\"\nam: 11c3022b6e\n\n* commit \u002711c3022b6e5fcf48c8ba7c13bba899ff1b00a9e9\u0027:\n  Add missing liblog dependency\n"
    },
    {
      "commit": "d1a9f491e7850136c203ba118a5f045933cd5d29",
      "tree": "12459b91970a7da72616db60b1676b9bba9fa4d5",
      "parents": [
        "e27e223dedcc8f7970d550cebd4a7dda3599ef03"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 12 16:19:48 2016 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 12 16:21:07 2016 -0800"
      },
      "message": "Add missing liblog dependency\n\nBug: http://b/27171986\nChange-Id: I5f62e39b54b7dfc0aa03992a20373a0a6daf1e2f\n"
    },
    {
      "commit": "b0a144d705a021994628d136a170a6d2bd4282e7",
      "tree": "f6144a26c0e19fa9a7ba75e136c80afeb9ecf14a",
      "parents": [
        "7f308c3e0556a5e704bcb3b341842ed50ba80b0a",
        "fdb3c07db5d44535eb8c3ec46dc78ad8446c01eb"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Feb 12 22:24:53 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 22:24:55 2016 +0000"
      },
      "message": "Merge \"AudioTrack: support ENCODING_IEC61937\" into nyc-dev"
    },
    {
      "commit": "661c5953f54848a37a012d9106af00e61bb98e08",
      "tree": "d1990ea391e9c225a60f55aa85fbe77842de1c6c",
      "parents": [
        "e99556b85081778027653bd3e716a529ab518b35",
        "e8decedb429ed76dfa84cdb3e80ab3b969e77298"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 12 16:57:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 16:57:51 2016 +0000"
      },
      "message": "Merge \"Dynamic audio policies on UID\" into nyc-dev"
    },
    {
      "commit": "fdb3c07db5d44535eb8c3ec46dc78ad8446c01eb",
      "tree": "b8c3d97da524e8aefcb37e736619da6b8e087a82",
      "parents": [
        "3ea4f828a6906e9931f96ebdcae9c63e14b86cbd"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Feb 09 10:47:02 2016 -0800"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Feb 12 06:30:43 2016 +0000"
      },
      "message": "AudioTrack: support ENCODING_IEC61937\n\nSet DIRECT flag.\nUse audio_has_proportional_frames() instead of audio_is_linear_pcm()\nwhere appropriate.\n\nBug: 24541671\nBug: 20891646\nBug: 26373761\nChange-Id: Ia32036b18683b084d6c9887593df87397ea0afd9\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "e8decedb429ed76dfa84cdb3e80ab3b969e77298",
      "tree": "3cdcd5f6ad76945ef052e0a68978a8c2930e4c3a",
      "parents": [
        "3aaa699a46edb4f47d0cd5a11d57eba93493bd90"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 11 12:50:39 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Feb 11 12:50:39 2016 -0800"
      },
      "message": "Dynamic audio policies on UID\n\nWhen looking for an output, take attributes and UID into account.\nTo find the matching mix: for each mix\n- inspect which rules are used\n- find a candidate mix for usage\n- check UID compatibility\nRename AttributeMatchCriterion to AudioMixMatchCriterion to be consistent\n with the fact that now mixing rules are not always about audio attributes.\n\nBug 26798796\n\nChange-Id: I1520b0df190a98f197ea8e0144b770e1e6d97888\n"
    },
    {
      "commit": "138ed1796f8c8edd318488911a9b056877191778",
      "tree": "d13629fcc205cc2a2ed858d7caced0436ce820e8",
      "parents": [
        "e3b06f27668901d3d7ae53b6d77aafd4181045ad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 10 10:40:44 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Feb 11 12:10:16 2016 -0800"
      },
      "message": "audio policy: fix issues in effect parameters parsing\n\nFix several issues in AudioPolicyEffects.cpp\n- Fix old bug in growParamSize() that should take a pointer\nto the address of the parameter structure because it can\nmodify it by calling realloc()\n- Fix warnings reported by clang static analyzer\n- Add checks on memory allocations\n\nBug: 26938281\n\nChange-Id: Id0bfa64371d95356d9fc308c6ea9c74e10ab1be0\n"
    },
    {
      "commit": "52785f3df24fe817af4f1c3c2cddfb30ab5450ee",
      "tree": "28535fcfed7f5d82c1c8575da06ecae08f46353d",
      "parents": [
        "b30f2636bc36d56b94dc5d35e20a68b2e403aac2"
      ],
      "author": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Feb 09 17:28:49 2016 -0800"
      },
      "committer": {
        "name": "Chris Thornton",
        "email": "thorntonc@google.com",
        "time": "Tue Feb 09 17:28:49 2016 -0800"
      },
      "message": "Call SoundTrigger::setCaptureState in AudioPoilcyManager::closeAllInputs\n\ncloseAllInputs wasn\u0027t informing the sound trigger service that all\ninputs were closed. This meant that the service could get stuck in a\nstate where it was disabled because it thought there was some active\ncapture, even though there was nothing listening. (This was particularly\ncommon when a bluetooth device disconnected).\n\nBUG: 26970013,26450651\nChange-Id: I613434ecacce3ef03a657008fd94c314948ba2b8\n"
    },
    {
      "commit": "814ce809867326e6ba46583444476e9f63ad01f7",
      "tree": "56db7eaca6e39117f365704e8db638e948d78f90",
      "parents": [
        "9792ec3735dc56ca2bd97d7e6524deb8c46f5186"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Mon Jan 18 11:23:47 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 11:15:49 2016 -0800"
      },
      "message": "audio policy: engine configurable: support fail safe\n\nWhen the parameter manager could not be launched, the engine will abort if\nLOG_NDEBUG is defined, unless a segmentation fault will happen later.\nThis patch allows fail safe feature when LOG_NDEBUG is not defined.\n\nChange-Id: Ie78575bddad6d19beed61673979e1b8ef1c70b0e\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "9792ec3735dc56ca2bd97d7e6524deb8c46f5186",
      "tree": "8e8943b4d83e9a7aaa1f0aea4540f68da5d5f54c",
      "parents": [
        "687bb88d330048075e69a7fc514d92901eeb0eee"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Tue Jan 26 11:08:22 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 11:14:01 2016 -0800"
      },
      "message": "audio policy: engine configurable: update example PFW files\n\nThis patch updates the PFW files given as example.\n-it adapts to N-definition\n-fixes some bugs\n\nChange-Id: I9537982b33bf772056a3bf94c775ce28d9069ef2\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "62e4bc53be19e96f8e37e850b9c8a9e15b9e2ba6",
      "tree": "f3b454f08ebd786f30b9fea45ef4c85bb91b704d",
      "parents": [
        "43e08e0146b825cde52480b64764765d9a61f97c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 18:37:28 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 09 01:52:21 2016 +0000"
      },
      "message": "audio policy: strengthen dynamic audio profile intialization\n\nAdd some robustness to getParameters() reply parsing\nin AudioPolicyManager::updateAudioProfiles().\nSome audio HALs may respond with more than just the parameters requested.\n\nChange-Id: Id9327604f521f9fb5636ff93cb6a7c3c23c86778\n"
    },
    {
      "commit": "156260319a15174a86676fa3de8819976199ccac",
      "tree": "19d07ee4a6fabafdf2c1c374034693af3ce310e9",
      "parents": [
        "5405b7f0c1e1859d036951a1ddba0fb222a11934",
        "4342335fb84bfa4ec5b99e3ef82f186820c2275f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 20:34:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 05 20:34:13 2016 +0000"
      },
      "message": "Merge \"audio policy: fix capture concurrency mode checks\""
    },
    {
      "commit": "4342335fb84bfa4ec5b99e3ef82f186820c2275f",
      "tree": "8cb38b5d0f1d00ec6f8e73e97b5827ceee260d1d",
      "parents": [
        "da53ce37c5283fad74d213f855ed8f4a078b860c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 11:57:57 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 05 11:57:57 2016 -0800"
      },
      "message": "audio policy: fix capture concurrency mode checks\n\nCapture concurrency mode indicated by policy manager\nafter startInput() is a bit field and should be handled as\nsuch by startInput() in AudioPolicyInterfaceImpl.\n\nBug: 26994864\nChange-Id: Iff093a82b8b68262abab50bc84060cf023450783\n"
    },
    {
      "commit": "19bd5498a78936436e982ff074cd9d460494c066",
      "tree": "248192b1811a1417f5f49f6e01acf84f05a63ada",
      "parents": [
        "da53ce37c5283fad74d213f855ed8f4a078b860c",
        "56afc7a5cc0f0bfc8021f6413b2e2267050bdc8a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 22:08:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 22:08:32 2016 +0000"
      },
      "message": "Merge \"Fix connection of OUT_REMOTE_SUBMIX device on APM startInput\""
    },
    {
      "commit": "56afc7a5cc0f0bfc8021f6413b2e2267050bdc8a",
      "tree": "4130dd51cc5d405ece260c66916a84024e6979ee",
      "parents": [
        "2e5408ac3e51cb459160b9cd392f1809b0758316"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 11:35:52 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Feb 03 11:46:08 2016 -0800"
      },
      "message": "Fix connection of OUT_REMOTE_SUBMIX device on APM startInput\n\nFix a regression in AudioPolicyManager::startInput() where\n the OUT_REMOTE_SUBMIX audio device was never made available\n due to the test on the input descriptor, which was already\n active by the time it is tested, as the activity on the\n session has already been updated.\n\nAdd methods to AudioInputDescriptor and AudioSessionCollection\n to query the number of active sessions. Use the new method\n to optimize AudioSessionCollection::hasActiveSession()\n\nBug 26798796\n\nChange-Id: I2de4e47970505e64c4c78a148a80a9f0ec19e821\n"
    },
    {
      "commit": "e1c37946c27024acd80b1af8724ad5d309ddcf92",
      "tree": "80ee92bb5f8b58ffa45d231b1c5d2e6562ace2f3",
      "parents": [
        "3ba7ed56de35656a1eeb12fff16531085d3f37cb",
        "d7eda8d0127fabf2d63b0890043da40e2a9e366c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Feb 03 01:57:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 01:57:33 2016 +0000"
      },
      "message": "Merge \"audio policy: fix overflow in condition wait timeout\""
    },
    {
      "commit": "d7eda8d0127fabf2d63b0890043da40e2a9e366c",
      "tree": "6feeb75bb2eca25b1eb77725a0d0c005b4332bf1",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 17:18:39 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Feb 02 17:18:39 2016 -0800"
      },
      "message": "audio policy: fix overflow in condition wait timeout\n\nDo not pass a large value to Condition::waitRelative() as this\ncan cause an overflow in pthread_cond_timedwait_relative_np() when\nconverting to absolute time.\n\nBug: 26891803\nChange-Id: Ie2a00bca52d469aa08b2718089dc19cfb1f3475f\n"
    },
    {
      "commit": "2e5408ac3e51cb459160b9cd392f1809b0758316",
      "tree": "66527477ef5a03dbd4bd13e773010ab0e56b9e2c",
      "parents": [
        "706de969169a8f651726ab7de7302a3d35b39768",
        "e04e62bc05316d9682688f87053be5cf47e9c707"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 01 19:54:26 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 19:54:26 2016 +0000"
      },
      "message": "Merge \"audio policy: fix set volume with explicit audio patch\""
    },
    {
      "commit": "706de969169a8f651726ab7de7302a3d35b39768",
      "tree": "b416c007f71098a17f41d008088bb9988f7641a5",
      "parents": [
        "16558ea318c3cf25a945fc1771572f489763527e",
        "bacd9d7ae33d831f9b8b3a0bc7ba8d367164a1d0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Feb 01 19:53:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 19:53:36 2016 +0000"
      },
      "message": "Merge \"audio policy: fix loss of audio patch client UID\""
    },
    {
      "commit": "e04e62bc05316d9682688f87053be5cf47e9c707",
      "tree": "11271f0fc771239d28f0bedeb8f3589c9e047428",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 18:25:01 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 01 19:31:14 2016 +0000"
      },
      "message": "audio policy: fix set volume with explicit audio patch\n\nsetStreamVolumeIndex() receives both a stream and a device as inputs.\nWhen an explicit audio patch is requested on an output mix, it\nis possible that the active device does not match the strategy\nderived from the stream, in which case the function would not update\ncurrent volume.\nThis patch makes sure that the device explicitly passed to\nsetStreamVolumeIndex() is always taken into acount.\n\nChange-Id: Ie496ff70f059166af6c81c8f8445a9a9c7548a72\n"
    },
    {
      "commit": "bacd9d7ae33d831f9b8b3a0bc7ba8d367164a1d0",
      "tree": "8a3174549761071b27dcb4cad25906019009678e",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 17:49:52 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 17:49:52 2016 -0800"
      },
      "message": "audio policy: fix loss of audio patch client UID\n\nIf an explicit audio patch is present on an output mix,\nits client UID should not be reset by default when the device is updated\non this output mix.\n\nBug: 26423115\nChange-Id: I87973e62d6eeb6f8fef3780bd67f58ae52d07812\n"
    },
    {
      "commit": "52d49a8a1f48c2d59769b9257e2eed988014aa03",
      "tree": "c535638a45a7dbd7025c5d868a444c882b47d0f4",
      "parents": [
        "313d1e7dfb4bf8e0a2f09a9adb287062dd64410c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 14:18:00 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 20:29:33 2016 +0000"
      },
      "message": "audio policy: fix connected device address.\n\nAlso update the audio device address with the one passed by\nsetDeviceConnectionState() if the device is in the list of\ndeclared devices but does not have an address set.\n\nChange-Id: Ibe9008b0c96fc336a90646b98703ed238a6cf4a9\n"
    },
    {
      "commit": "313d1e7dfb4bf8e0a2f09a9adb287062dd64410c",
      "tree": "70b8d0bf8ee87072115c91f108365c4001eecaa9",
      "parents": [
        "6186b0f418e6efd0bf2463397f4c783cde75ecff"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 09:56:57 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 20:28:54 2016 +0000"
      },
      "message": "audio policy: fix input device selection\n\nMake sure session activity count is incremented before\nselecting device in startInput().\n\nBug: 26841909\nChange-Id: I0b4867b9ad4c7a98e5eddb4f1f23c4cf075f074e\n"
    },
    {
      "commit": "fb66dd9f95a1168698f072c4e5c2a2cf8c49a80f",
      "tree": "e08f2ecc670ee5828d5ef4bece2e962b02295afc",
      "parents": [
        "37dfacdf3e66516bd4b0c7d08e1aad5869bf5825"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 18:32:03 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 29 18:06:50 2016 +0000"
      },
      "message": "Revert \"Revert \"audio policy for concurrent capture.\"\"\n\nThis reverts commit 84332aaa807037baca05340875f2d94fcc519ac4.\n\nBug:26841909\n"
    },
    {
      "commit": "35cb56342e80dbbba3a9cbf5c1398976f1f1befd",
      "tree": "dd25b6024aad666459718276cf8e068cfb289118",
      "parents": [
        "157bd8a8a69c15cba8276652a15dbb7e5fd5cffb",
        "84332aaa807037baca05340875f2d94fcc519ac4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:51:30 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 22:51:30 2016 +0000"
      },
      "message": "Merge \"Revert \"audio policy for concurrent capture.\"\""
    },
    {
      "commit": "84332aaa807037baca05340875f2d94fcc519ac4",
      "tree": "638152ca1462b98449c8985f53c4c7986dcdf15d",
      "parents": [
        "4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:19:18 2016 +0000"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 28 22:20:23 2016 +0000"
      },
      "message": "Revert \"audio policy for concurrent capture.\"\n\nThis reverts commit 4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1.\n\nBug:26841909\n\nChange-Id: Ifc74b195394b9fb3f73d33455ad061bd896d5331\n"
    },
    {
      "commit": "19219b44e05555b29e00ce56ce273d168fa83888",
      "tree": "11790a2d472ade7c736296c7f1ee4c446c0bffbb",
      "parents": [
        "c9d7c4e35afd48ac8a315f53666943b6210dafa1"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Mon Jan 25 11:28:17 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 12:49:24 2016 -0800"
      },
      "message": "audio policy: use reference for all default volume table\n\nThis patch migrates all default volume tables as reference\nvolume tables.\nNo implicit volume tables is allowed any more, the reference\nmust be given for all stream type and device category.\nIt allows removing the WA that was introduce to use the stream CNT\nto host the default volume tables.\n\nChange-Id: I19f5e9d2a62d448f0f8447f93acbbd2e1a723958\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "c9d7c4e35afd48ac8a315f53666943b6210dafa1",
      "tree": "20d04a20ed8afc299a01e7a0a763860c674bba4f",
      "parents": [
        "5bae3d6b17d7eb90b52174f8149aaa7c7ff334d6"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@intel.com",
        "time": "Fri Jan 22 13:54:30 2016 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 10:57:49 2016 -0800"
      },
      "message": "audio policy: allows to use reference for volume table\n\nThis patch allows to definie reference attribute within XML\nVolume Element and define a reference volume curve.\nIt allows to factorize efficiently and avoid too much XML\nduplication.\n\nChange-Id: I462808ea38d7a39e1e20fe7090a6ebee0cb3c39b\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@intel.com\u003e\n"
    },
    {
      "commit": "4b2fcd8abf90b1bd95539f9f4ef2ac39ce9e2df1",
      "tree": "8d98964e142912b23352b5c67fd6a3b6568645ab",
      "parents": [
        "a03910b23a31058eea178e8d3f5e84fcf852d5c2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jan 15 18:00:39 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 03:09:22 2016 +0000"
      },
      "message": "audio policy for concurrent capture.\n\nFirst implementation of concurrent capture policy:\nInitially, only capture for HOTWORD or FM TUNER sources or\nre-route submix is allowed at the same time as any other capture.\nSeveral capture clients can share the same input stream. In this case\nactive clients are sorted by audio source priority level and the input\npath configuration and routing is driven by the highest priority\nactive source.\n\nBug: 22702906\n\nChange-Id: Icbedfe001c6243ecad7a7b57ab78d893b2b97402\n"
    },
    {
      "commit": "a03910b23a31058eea178e8d3f5e84fcf852d5c2",
      "tree": "638152ca1462b98449c8985f53c4c7986dcdf15d",
      "parents": [
        "93ec0d71800824481b41b883739c9ab1d0559c27",
        "20eb3a4340a1f1f6e978a23527daff080140db1a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 27 03:07:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 27 03:07:40 2016 +0000"
      },
      "message": "Merge \"audio policy: fix merging error for commit 112b0af8.\""
    }
  ],
  "next": "20eb3a4340a1f1f6e978a23527daff080140db1a"
}
