)]}'
{
  "log": [
    {
      "commit": "1609e451cf6101efe6aeaaa2da61db2cb095c9e8",
      "tree": "f09b7bb9b88d37985ca41e255f4efc8ffa769905",
      "parents": [
        "c339a921642c38621f57e95b4ec41cfaa99c7a63",
        "04f101c35eaa90b1f95939afac30674ec1611e6f"
      ],
      "author": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Fri Nov 07 19:44:29 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 19:44:30 2014 +0000"
      },
      "message": "Merge \"Add a BufferItem parameter to onFrameAvailable\" into lmp-mr1-dev"
    },
    {
      "commit": "c339a921642c38621f57e95b4ec41cfaa99c7a63",
      "tree": "7b8204818f224904c8df99e6b1ee66e34f2afed2",
      "parents": [
        "62fe78b66c87339a64f047561e7b4aac606310e2",
        "a36060891425c4ce0621e40344ac473ec14924dd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 07 18:38:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 18:38:54 2014 +0000"
      },
      "message": "Merge \"AudioSystem: remove obsolete method.\" into lmp-mr1-dev"
    },
    {
      "commit": "a36060891425c4ce0621e40344ac473ec14924dd",
      "tree": "f098fd77fb7661b83e3c43f31aec6f30316f4f34",
      "parents": [
        "1cf9ad1abb599ce4057189e0db154cf00b4913f8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 06 18:07:23 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 06 18:07:23 2014 -0800"
      },
      "message": "AudioSystem: remove obsolete method.\n\nBug: 18067208.\nChange-Id: I9bbf9088485f5162c765ca504d9b784b956234c6\n"
    },
    {
      "commit": "62fe78b66c87339a64f047561e7b4aac606310e2",
      "tree": "95c63273d9323a8edd231c725b1e72c1369439a8",
      "parents": [
        "d556fad7475f4cd05a2199e9716ed8e01aa0ea9b",
        "85f480e7fd7c5e70c91d2f205b5c49488a84eb4d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 07 01:48:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 07 01:48:20 2014 +0000"
      },
      "message": "Merge \"Fix memory leak\" into lmp-mr1-dev"
    },
    {
      "commit": "d556fad7475f4cd05a2199e9716ed8e01aa0ea9b",
      "tree": "54ec9d3bf73ceb8647f421bd8ff095a529e4ddaa",
      "parents": [
        "e86c6d59dfa8aea8f321287cbb1f122623e5417a"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Nov 05 20:11:10 2014 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Nov 06 15:54:14 2014 -0800"
      },
      "message": "Fix build, update mock drm plugin\n\nBug: 18280078\n(cherry picked from commit 85c737a67e1b679251fce7f456ae79eefdc15e07)\n\nChange-Id: I341981e71d87be666787d9c866fc71a6b758c0e9\n"
    },
    {
      "commit": "e86c6d59dfa8aea8f321287cbb1f122623e5417a",
      "tree": "de24fd38277b8d4f3ee954fe4156798f34a045a3",
      "parents": [
        "1cf9ad1abb599ce4057189e0db154cf00b4913f8",
        "fef808d42a9c94b0b5ef3c3d5fb0a090edbc42da"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 06 23:38:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 06 23:38:18 2014 +0000"
      },
      "message": "Merge \"AnotherPacketSource.cpp: Do not queue discontinity signal buffer resulted from seek.\" into lmp-mr1-dev"
    },
    {
      "commit": "fef808d42a9c94b0b5ef3c3d5fb0a090edbc42da",
      "tree": "94c39efa1b2c3cc6a3b40cf2b6e5f087dd6f917b",
      "parents": [
        "151b3f41ffcdf187580542ba0c0d3b84df16beed"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Oct 31 17:57:05 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Nov 06 09:57:19 2014 -0800"
      },
      "message": "AnotherPacketSource.cpp: Do not queue discontinity signal buffer resulted from seek.\n\nThis will remove the unnecessary flush for seek.\n\nBug: 17511837\nChange-Id: I4b7acfc71a410372f5c630afb94b6a95d09d8974\n"
    },
    {
      "commit": "85f480e7fd7c5e70c91d2f205b5c49488a84eb4d",
      "tree": "79022052fe7237ba1d3a5af8e7f4e75f3ae84a1b",
      "parents": [
        "74adca9ad30b7f8a70d40c5237bade0d16c4ea58"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 05 17:44:51 2014 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Nov 06 08:39:29 2014 -0800"
      },
      "message": "Fix memory leak\n\nChange-Id: I3f4110a88679b7e7841f40c6acdbf5dcde40fb19\n"
    },
    {
      "commit": "1cf9ad1abb599ce4057189e0db154cf00b4913f8",
      "tree": "1bbf6047da0636dddcac32a904d55c2cd87d2ba0",
      "parents": [
        "19a3f69d9d5398db62ee7b15f2c13052d7ee9f07",
        "2514d080c8a54ff603a45d7e336de668fe7329db"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Nov 06 02:36:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 06 02:36:17 2014 +0000"
      },
      "message": "Merge \"Pass resolution to Crypto plugin on format change\" into lmp-mr1-dev"
    },
    {
      "commit": "19a3f69d9d5398db62ee7b15f2c13052d7ee9f07",
      "tree": "cf8ab0afd5e431df089fb7a45499fd1981ba4fc4",
      "parents": [
        "74adca9ad30b7f8a70d40c5237bade0d16c4ea58",
        "3c1285e8f86bd497e14c14fb6df7b42072ef52bd"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Nov 06 02:33:37 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 06 02:33:37 2014 +0000"
      },
      "message": "Merge \"Add missing secure stop methods\" into lmp-mr1-dev"
    },
    {
      "commit": "74adca9ad30b7f8a70d40c5237bade0d16c4ea58",
      "tree": "13e642689e945e69b76ac095a6bec978debf4084",
      "parents": [
        "ed1e55c5276a1c031e9b2f016387c7d2fe7bc47f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 05 12:15:36 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 05 12:33:59 2014 -0800"
      },
      "message": "IAudioPolicyService: bound array size in queryDefaultPreProcessing\n\nBug: 18226810.\nChange-Id: Ib8e2bfe835a8681aac50bf23161db14e50c9a124\n"
    },
    {
      "commit": "04f101c35eaa90b1f95939afac30674ec1611e6f",
      "tree": "638649883fdc1e7329b9334b5a1a7461b7421942",
      "parents": [
        "151b3f41ffcdf187580542ba0c0d3b84df16beed"
      ],
      "author": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Tue Nov 04 11:32:52 2014 -0800"
      },
      "committer": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Tue Nov 04 11:32:52 2014 -0800"
      },
      "message": "Add a BufferItem parameter to onFrameAvailable\n\nPasses the BufferItem for the queued buffer to the onFrameAvailable\ncallback so the consumer can track the BufferQueue\u0027s contents.\n\nBug: 18111837\nChange-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0\n"
    },
    {
      "commit": "2514d080c8a54ff603a45d7e336de668fe7329db",
      "tree": "c02e8521f99240935f7c672c9d79846addd785cb",
      "parents": [
        "3c1285e8f86bd497e14c14fb6df7b42072ef52bd"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Nov 03 13:29:35 2014 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Nov 03 18:39:23 2014 -0800"
      },
      "message": "Pass resolution to Crypto plugin on format change\n\nChange-Id: I56cd557ce3525fe625db8c312d2557d3c8b51101\nrelated-to-bug: 16034599\n"
    },
    {
      "commit": "ed1e55c5276a1c031e9b2f016387c7d2fe7bc47f",
      "tree": "daa44e7941703765a4d37c0207df8e12959b66c8",
      "parents": [
        "461b02d3eccefea48fa15c67a9cd3a5895bd2765",
        "b10352f4bc11ae6f3d93e464074709555ecf9e06"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 04 02:37:03 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 04 02:37:03 2014 +0000"
      },
      "message": "Merge \"remove some restrictions on effect output channels\" into lmp-mr1-dev"
    },
    {
      "commit": "461b02d3eccefea48fa15c67a9cd3a5895bd2765",
      "tree": "6fa1b5cef70a6572fa528bcb04f398b185bd3763",
      "parents": [
        "0def1d9e88e5ce567e13e0081f2ee8ae3cba0232",
        "03fcdcd0aa9758b6d882b18218fcfb9a1ccffdad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 04 01:37:34 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 04 01:37:34 2014 +0000"
      },
      "message": "Merge \"audio: fix talkback why alarm is playing\" into lmp-mr1-dev"
    },
    {
      "commit": "b10352f4bc11ae6f3d93e464074709555ecf9e06",
      "tree": "52187ad264691c11e3d1efc541fe791568a33d69",
      "parents": [
        "b1322c78b035c9f47ebe57a39799d7a0e13bf57f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 16:25:39 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 16:25:39 2014 -0800"
      },
      "message": "remove some restrictions on effect output channels\n\nDo not prevent from attaching effects to a non stereo\noutput thread, unless the output thread is a mixer thread.\n\nBug: 18157592.\nChange-Id: I6ac3187187a1b8aade7db04ea6dfbc47dacc25c3\n"
    },
    {
      "commit": "0def1d9e88e5ce567e13e0081f2ee8ae3cba0232",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "5e4215f5d7f78b5f6bffafc8a93a0f5575524b77",
        "10e898cc583473d4c3604456b48e008f90d82f70"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 04 00:23:00 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 04 00:23:00 2014 +0000"
      },
      "message": "am 9c0c41ff: am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls. automerge: ca83dd2 automerge: ba30b45\nautomerge: 10e898c\n\n* commit \u002710e898cc583473d4c3604456b48e008f90d82f70\u0027:\n"
    },
    {
      "commit": "5e4215f5d7f78b5f6bffafc8a93a0f5575524b77",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "c7eca4e8ea8c6cd6d1a96404331c2119c1dd556e",
        "953705d721627558bbdcd0c014ba3a95f073f4da"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Nov 04 00:19:08 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 04 00:19:08 2014 +0000"
      },
      "message": "am 9c356efa: Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: b6dcdbf  -s ours automerge: ed394bc  -s ours\nautomerge: 953705d  -s ours\n\n* commit \u0027953705d721627558bbdcd0c014ba3a95f073f4da\u0027:\n"
    },
    {
      "commit": "c7eca4e8ea8c6cd6d1a96404331c2119c1dd556e",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "3baa9d08ad2ec5afd4c1cdd48942aeb74b5428d7",
        "4f97e6933b529e3822fb3ef121a9f0139e7a04d7"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Nov 04 00:19:03 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 04 00:19:03 2014 +0000"
      },
      "message": "am 4b189fe2: audio: prevent larger than required sleeps - DO NOT MERGE automerge: 620208d  -s ours automerge: b2c3ad1  -s ours\nautomerge: 4f97e69  -s ours\n\n* commit \u00274f97e6933b529e3822fb3ef121a9f0139e7a04d7\u0027:\n"
    },
    {
      "commit": "3baa9d08ad2ec5afd4c1cdd48942aeb74b5428d7",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "398a2c5425ecbc4225b934e61440a5f2dd92f607",
        "0a978b70e95f8499831843b155d64fecc54208e8"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Nov 04 00:18:57 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 04 00:18:57 2014 +0000"
      },
      "message": "am 1aed5c92: Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: 2feb18d  -s ours automerge: bb92112  -s ours\nautomerge: 0a978b7  -s ours\n\n* commit \u00270a978b70e95f8499831843b155d64fecc54208e8\u0027:\n"
    },
    {
      "commit": "398a2c5425ecbc4225b934e61440a5f2dd92f607",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "3736dbc5c4ef7c0e0cf81ff3fc73579527cad50a",
        "d20609f642d8455f8cf548ac0ca42c732931b891"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Tue Nov 04 00:18:52 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 04 00:18:52 2014 +0000"
      },
      "message": "am d6d711c3: audio: prevent larger than required sleeps - DO NOT MERGE automerge: 8c0417c  -s ours automerge: 52ea677  -s ours\nautomerge: d20609f  -s ours\n\n* commit \u0027d20609f642d8455f8cf548ac0ca42c732931b891\u0027:\n"
    },
    {
      "commit": "03fcdcd0aa9758b6d882b18218fcfb9a1ccffdad",
      "tree": "93729916df7ea6d15a72e4c8b016f7584a480715",
      "parents": [
        "b1322c78b035c9f47ebe57a39799d7a0e13bf57f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 15:16:04 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 15:16:04 2014 -0800"
      },
      "message": "audio: fix talkback why alarm is playing\n\nConvert attributes usage \"assistance accessibility\" to\na stream type guarantying that the prompt is audible\nand not muted by policy manager.\n\nBug: 17994328.\nChange-Id: I89f53f2ce84b499b859336c0a1a3a0332ee670f5\n"
    },
    {
      "commit": "3736dbc5c4ef7c0e0cf81ff3fc73579527cad50a",
      "tree": "e02f98e76d6eb7ef6c3a90a8c07eb59405c42776",
      "parents": [
        "0c629a3857c31bee6fa39ba7a9a8cbcabeb383fd",
        "1bbc1c93b5db545e503dc27c262eef38685d0726"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Nov 03 22:00:10 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 03 22:00:11 2014 +0000"
      },
      "message": "Merge \"CameraService: API1: fix picture FOV\" into lmp-mr1-dev"
    },
    {
      "commit": "10e898cc583473d4c3604456b48e008f90d82f70",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "953705d721627558bbdcd0c014ba3a95f073f4da",
        "9c0c41ff36926030778a8a41210d02602c5a9f62"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 21:26:15 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 03 21:26:15 2014 +0000"
      },
      "message": "am 9c0c41ff: am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls. automerge: ca83dd2 automerge: ba30b45\n\n* commit \u00279c0c41ff36926030778a8a41210d02602c5a9f62\u0027:\n"
    },
    {
      "commit": "953705d721627558bbdcd0c014ba3a95f073f4da",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "4f97e6933b529e3822fb3ef121a9f0139e7a04d7",
        "9c356efa84e6fa756ebcce88ea192921f1a0da3e"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:20:44 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 03 21:20:44 2014 +0000"
      },
      "message": "am 9c356efa: Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: b6dcdbf  -s ours automerge: ed394bc  -s ours\n\n* commit \u00279c356efa84e6fa756ebcce88ea192921f1a0da3e\u0027:\n"
    },
    {
      "commit": "4f97e6933b529e3822fb3ef121a9f0139e7a04d7",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "0a978b70e95f8499831843b155d64fecc54208e8",
        "4b189fe2c22bc0079ec6d40947de9172c36f49eb"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:20:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 03 21:20:43 2014 +0000"
      },
      "message": "am 4b189fe2: audio: prevent larger than required sleeps - DO NOT MERGE automerge: 620208d  -s ours automerge: b2c3ad1  -s ours\n\n* commit \u00274b189fe2c22bc0079ec6d40947de9172c36f49eb\u0027:\n"
    },
    {
      "commit": "0a978b70e95f8499831843b155d64fecc54208e8",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "d20609f642d8455f8cf548ac0ca42c732931b891",
        "1aed5c9213e6f7eb31b53bc7771889b146e39877"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:20:42 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 03 21:20:42 2014 +0000"
      },
      "message": "am 1aed5c92: Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: 2feb18d  -s ours automerge: bb92112  -s ours\n\n* commit \u00271aed5c9213e6f7eb31b53bc7771889b146e39877\u0027:\n"
    },
    {
      "commit": "d20609f642d8455f8cf548ac0ca42c732931b891",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "aa751488b338e7f806bb20cb69e60fcd2b0ad738",
        "d6d711c3b12cca2c6eee21b088831144e1fb0550"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Nov 03 21:20:41 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 03 21:20:41 2014 +0000"
      },
      "message": "am d6d711c3: audio: prevent larger than required sleeps - DO NOT MERGE automerge: 8c0417c  -s ours automerge: 52ea677  -s ours\n\n* commit \u0027d6d711c3b12cca2c6eee21b088831144e1fb0550\u0027:\n"
    },
    {
      "commit": "9c0c41ff36926030778a8a41210d02602c5a9f62",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "9c356efa84e6fa756ebcce88ea192921f1a0da3e",
        "ba30b4547c6b7ca949ef74e760ccc6157f435690"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 03 21:18:07 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 03 21:18:07 2014 +0000"
      },
      "message": "am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls. automerge: ca83dd2\nautomerge: ba30b45\n\n* commit \u0027ba30b4547c6b7ca949ef74e760ccc6157f435690\u0027:\n"
    },
    {
      "commit": "9c356efa84e6fa756ebcce88ea192921f1a0da3e",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "4b189fe2c22bc0079ec6d40947de9172c36f49eb",
        "ed394bcfa79da3dd25cd24d485aa0d063818a977"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:14:34 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 03 21:14:34 2014 +0000"
      },
      "message": "Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: b6dcdbf  -s ours\nautomerge: ed394bc  -s ours\n\n* commit \u0027ed394bcfa79da3dd25cd24d485aa0d063818a977\u0027:\n"
    },
    {
      "commit": "4b189fe2c22bc0079ec6d40947de9172c36f49eb",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "1aed5c9213e6f7eb31b53bc7771889b146e39877",
        "b2c3ad13cb248159910bef6ac51f7e6023e133b9"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:14:28 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 03 21:14:28 2014 +0000"
      },
      "message": "audio: prevent larger than required sleeps - DO NOT MERGE automerge: 620208d  -s ours\nautomerge: b2c3ad1  -s ours\n\n* commit \u0027b2c3ad13cb248159910bef6ac51f7e6023e133b9\u0027:\n"
    },
    {
      "commit": "1aed5c9213e6f7eb31b53bc7771889b146e39877",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "d6d711c3b12cca2c6eee21b088831144e1fb0550",
        "bb9211236cf6104d16fc09b58550ce692d9af4e9"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon Nov 03 21:13:02 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 03 21:13:02 2014 +0000"
      },
      "message": "Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\" automerge: 2feb18d  -s ours\nautomerge: bb92112  -s ours\n\n* commit \u0027bb9211236cf6104d16fc09b58550ce692d9af4e9\u0027:\n"
    },
    {
      "commit": "d6d711c3b12cca2c6eee21b088831144e1fb0550",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "5987e7ae4491842f9c8d0e8a888105a56273159d",
        "52ea677828b23b216484dd34f84da2699ed850e3"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Nov 03 21:12:35 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 03 21:12:35 2014 +0000"
      },
      "message": "audio: prevent larger than required sleeps - DO NOT MERGE automerge: 8c0417c  -s ours\nautomerge: 52ea677  -s ours\n\n* commit \u002752ea677828b23b216484dd34f84da2699ed850e3\u0027:\n"
    },
    {
      "commit": "0c629a3857c31bee6fa39ba7a9a8cbcabeb383fd",
      "tree": "3738e599a1c8e87d362ed31cc639df3f9f8592a5",
      "parents": [
        "151b3f41ffcdf187580542ba0c0d3b84df16beed"
      ],
      "author": {
        "name": "Gaurav Batra",
        "email": "gbatra@nvidia.com",
        "time": "Fri Oct 31 16:13:38 2014 -0700"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Nov 03 18:57:50 2014 +0000"
      },
      "message": "camera: fix vendortags section malloc failure\n\nsize_t type variables should be initialized properly especially on 64-bit archs\nif they are type casted to shorter datatypes for some operation and then later\nused in entirety. The results may be unpredictable since the most significant\nbytes may contain garbage.\n\nBug 18222311\n\nChange-Id: Iced82e964cf8c98f6856d257fc1534a5237a9064\n"
    },
    {
      "commit": "151b3f41ffcdf187580542ba0c0d3b84df16beed",
      "tree": "5bae7d5985563f2cbbf9cc9cc1a5fca422cb8390",
      "parents": [
        "d9cfeb447356cb6334379eaf5da1e49424eb5979",
        "aa751488b338e7f806bb20cb69e60fcd2b0ad738"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 01 14:07:57 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 01 14:07:57 2014 +0000"
      },
      "message": "am aa751488: am 5987e7ae: am ca83dd27: (-s ours) am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027aa751488b338e7f806bb20cb69e60fcd2b0ad738\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "d9cfeb447356cb6334379eaf5da1e49424eb5979",
      "tree": "5bae7d5985563f2cbbf9cc9cc1a5fca422cb8390",
      "parents": [
        "20f51b1ea04c410a25f214e37bcdb586e2a028cc"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Sep 22 16:51:34 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Oct 31 14:12:20 2014 -0700"
      },
      "message": "Support speaker routing for FLAG_BEACON\n\nAdd support for routing audio stream to the speaker when audio\n  attributes carry the FLAG_BEACON value:\n- associate streams with FLAG_BEACON to the up-to-now unused\n  STREAM_TTS (\"Transmitted Through Speaker\").\n  The remapping happens in AudioTrack.\n- AudioPolicyManager: define new strategy for handling the Beacon\n  behavior, that only goes to speaker. Define new volume curves\n  for STREAM_TTS that are not silence only for the speaker device\n  category. Keep ref count of other streams and never play Beacon\n  streams when anything else is playing: either don\u0027t start playback\n  if something else is playing, or unmute STREAM_TTS when it\u0027s\n  allowed to play and mute when it\u0027s done.\n- Take into account muting latency when starting an output.\n\nBug 15415971\n\nChange-Id: I26539c7ec1a486accd85bbeb1623e9c7d3a1192f\n"
    },
    {
      "commit": "3c1285e8f86bd497e14c14fb6df7b42072ef52bd",
      "tree": "82c107d9b3001bf4f9d375b7d655968abe20c2c3",
      "parents": [
        "6e8212b2a02685e50d0c093a6f44d9af636261d9"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Oct 31 00:55:16 2014 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Oct 31 00:55:16 2014 -0700"
      },
      "message": "Add missing secure stop methods\n\nb/18053197\nb/18076411\n\nChange-Id: I923dc893d48c70bf17980007b32f0ac5dfd22896\n"
    },
    {
      "commit": "ba30b4547c6b7ca949ef74e760ccc6157f435690",
      "tree": "dd98a96ad71210e6cc9fdf8419b4d4fd0b8643bf",
      "parents": [
        "ed394bcfa79da3dd25cd24d485aa0d063818a977",
        "ca83dd27f6c662bcbb0cea204c4df7ca77a479fd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 01:33:21 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 31 01:33:21 2014 +0000"
      },
      "message": "am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\nautomerge: ca83dd2\n\n* commit \u0027ca83dd27f6c662bcbb0cea204c4df7ca77a479fd\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "aa751488b338e7f806bb20cb69e60fcd2b0ad738",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "0f8f4e681b867dd611d2d916453337cb0770d4da",
        "5987e7ae4491842f9c8d0e8a888105a56273159d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:54:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:54:43 2014 +0000"
      },
      "message": "am 5987e7ae: am ca83dd27: (-s ours) am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00275987e7ae4491842f9c8d0e8a888105a56273159d\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "5987e7ae4491842f9c8d0e8a888105a56273159d",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "f256901b83d393c5fe6d9b1cfb6391faa86cac72",
        "ca83dd27f6c662bcbb0cea204c4df7ca77a479fd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:50:17 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:50:17 2014 +0000"
      },
      "message": "am ca83dd27: (-s ours) am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027ca83dd27f6c662bcbb0cea204c4df7ca77a479fd\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "ca83dd27f6c662bcbb0cea204c4df7ca77a479fd",
      "tree": "95f757e844428af69933cbbe7c745f497784af5b",
      "parents": [
        "b6dcdbf436ffacb52a41ac8ef9b07f99fd64779f",
        "42f785c5d5ae596d781171327c98c541f0517feb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:26:23 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:26:23 2014 +0000"
      },
      "message": "am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u002742f785c5d5ae596d781171327c98c541f0517feb\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "42f785c5d5ae596d781171327c98c541f0517feb",
      "tree": "adf53db0dcfa59697a65031f7c97f90706eb05f2",
      "parents": [
        "6fd1cf0c00ee76802cfff0035011691aac8a1724",
        "4fbe49a83d41a64d44e363ccd691e7bfc41bb6af"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:17:14 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:17:14 2014 +0000"
      },
      "message": "am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00274fbe49a83d41a64d44e363ccd691e7bfc41bb6af\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "4fbe49a83d41a64d44e363ccd691e7bfc41bb6af",
      "tree": "18f8ffafd33e096cefad64bf3170e4b90c456951",
      "parents": [
        "8654365499f8e9956c490e98184abe33978d4e67",
        "96016c2d583ccca9fffd6974cb9473f7effd6cf5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:11:15 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:11:15 2014 +0000"
      },
      "message": "am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u002796016c2d583ccca9fffd6974cb9473f7effd6cf5\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "96016c2d583ccca9fffd6974cb9473f7effd6cf5",
      "tree": "1e08676a39464d8bd88c910bb3a11585dd3229f8",
      "parents": [
        "0d83cf22991c48f4bb5f2afe3d16ae076861f394",
        "9944ff09ac4eb076cab994ef245b0103f60836ba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:55:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:55:43 2014 +0000"
      },
      "message": "am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00279944ff09ac4eb076cab994ef245b0103f60836ba\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "9944ff09ac4eb076cab994ef245b0103f60836ba",
      "tree": "20b6d682440a78d7301b410d15ffc81ce45e81af",
      "parents": [
        "97d917bc1ccc958d8f1051de6a888de9a25dc6bd",
        "70c3507d915baaa5a0ab163eeb0a445030f4f492"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:48:47 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:48:47 2014 +0000"
      },
      "message": "am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u002770c3507d915baaa5a0ab163eeb0a445030f4f492\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "70c3507d915baaa5a0ab163eeb0a445030f4f492",
      "tree": "ad9a132f21ff995adccfd63b56af96b69a497c66",
      "parents": [
        "ab0b3212e0c15132f2dab2beeb39c47d31bb1dab",
        "450b10c97514411ef1d0d887d4e18851fd286f0b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:41:08 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:41:08 2014 +0000"
      },
      "message": "am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027450b10c97514411ef1d0d887d4e18851fd286f0b\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "450b10c97514411ef1d0d887d4e18851fd286f0b",
      "tree": "b586fddb4c97ee094a3a3b266f1833f115aa2b89",
      "parents": [
        "9b51a37fa8ad9d28be791213ceba4fcbec52b14d",
        "d0f9dc7156e531d5cd0615f6e682d2449e08e9a7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:25:15 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:25:15 2014 +0000"
      },
      "message": "am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027d0f9dc7156e531d5cd0615f6e682d2449e08e9a7\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "d0f9dc7156e531d5cd0615f6e682d2449e08e9a7",
      "tree": "b586fddb4c97ee094a3a3b266f1833f115aa2b89",
      "parents": [
        "cb5dc219b78e6eeacb7ee2f5c93e6763db677122",
        "e0a65f3008ac5874106b21d03e19296c8015da41"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:01:01 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:01:01 2014 +0000"
      },
      "message": "am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027e0a65f3008ac5874106b21d03e19296c8015da41\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "e0a65f3008ac5874106b21d03e19296c8015da41",
      "tree": "c7f7949257bb489bb9950949190f0e90af60cf6f",
      "parents": [
        "74abb1ae32fbd3fa4112cc8b8d53882777feb191",
        "f5af3a72f308cd4dff7859e62922ee5a13bd4c15"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 22:52:48 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 22:52:48 2014 +0000"
      },
      "message": "am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027f5af3a72f308cd4dff7859e62922ee5a13bd4c15\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "20f51b1ea04c410a25f214e37bcdb586e2a028cc",
      "tree": "f0925121321ebd3b5bd64715e950a65a3d86b4fe",
      "parents": [
        "b1322c78b035c9f47ebe57a39799d7a0e13bf57f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Oct 30 10:43:19 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Oct 30 15:44:46 2014 -0700"
      },
      "message": "AudioTrack::flush() will no longer flush later data\n\nBug: 17832076\nChange-Id: I4915d782acb8077923e419406b0dcea5b6aab961\n"
    },
    {
      "commit": "f5af3a72f308cd4dff7859e62922ee5a13bd4c15",
      "tree": "a213a936d8f9261d5e2a388f1f5f4ee3e22120b0",
      "parents": [
        "482b18bbfd6c9214157bfab47feae86df48a7178",
        "6d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 22:44:00 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 22:44:00 2014 +0000"
      },
      "message": "am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00276d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "6d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e",
      "tree": "9080cb3987c321a7fe607e509be32e6269da138c",
      "parents": [
        "f106b1993143df44282777253244ce67974c9d4a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 14:46:18 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 15:09:05 2014 -0700"
      },
      "message": "audio policy: validate stream type received from binder calls.\n\nBug: 18001784.\nBug: 18002005.\nChange-Id: If08866a3c21bcbfd8cdbbf8336bcf1faad66f321\n"
    },
    {
      "commit": "b1322c78b035c9f47ebe57a39799d7a0e13bf57f",
      "tree": "eb4177002d445d59b1d20afa5a31f72ac2838d24",
      "parents": [
        "8e05b5f5f45b8d6931ff830969125a42428c6830"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 14:59:13 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 15:04:19 2014 -0700"
      },
      "message": "audio policy: fix commit dea1541f\n\nFix return types in early returns added by\ncommit dea1541f in AudioPolicy binder call methods.\n\nAlso fix former similar mistakes found nearby.\n\nBug: 18001784.\nBug: 18002005.\n\nChange-Id: I088c6029ca04e2c2c2f78e560c9cb6b9576dd88f\n"
    },
    {
      "commit": "8e05b5f5f45b8d6931ff830969125a42428c6830",
      "tree": "aafb77c92888ebee066d61a1736fa3e5cbb61444",
      "parents": [
        "7011ee31d65917a9e15b271942e863f06eee2da1",
        "dea1541fc0042abf05674b19c2f94ca086945dfd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 16:45:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 30 16:45:09 2014 +0000"
      },
      "message": "Merge \"audio policy: validate stream type received from binder calls.\" into lmp-mr1-dev"
    },
    {
      "commit": "7011ee31d65917a9e15b271942e863f06eee2da1",
      "tree": "eeeb40b36da0c065189cbda7760a4619687d8550",
      "parents": [
        "cde2b72229fd6e06ee301238fd2943cdc1c40686",
        "a5d316fd802cfc92954527f27e6f32206a896113"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 29 23:11:36 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 29 23:11:37 2014 +0000"
      },
      "message": "Merge \"NuPlayer: reduce offload pause teardown timeout.\" into lmp-mr1-dev"
    },
    {
      "commit": "a5d316fd802cfc92954527f27e6f32206a896113",
      "tree": "1fa7702b5eb50186fc90a327c59c71ec83a2cc4a",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 29 15:32:17 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 29 15:32:17 2014 -0700"
      },
      "message": "NuPlayer: reduce offload pause teardown timeout.\n\nWaiting 60 seconds to teardown an offloaded path when paused\nis not needed and causes unecessary battery drain.\n10 seconds is enough to avaoid teardown when it would be\nproblematic (seek, pause for notifications, buffering...).\n\nBug: 13505340.\nChange-Id: Ibcaa609b59e86ba2bc49539620bd77504d534c0c\n"
    },
    {
      "commit": "cde2b72229fd6e06ee301238fd2943cdc1c40686",
      "tree": "716014742d05f5c0c1eb28042e12b79ead731da9",
      "parents": [
        "6e8212b2a02685e50d0c093a6f44d9af636261d9",
        "9421174a2f002fef31b330fb04e00105a905dca4"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Oct 29 21:46:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 29 21:46:54 2014 +0000"
      },
      "message": "Merge \"NuPlayer: merge start() and resume().\" into lmp-mr1-dev"
    },
    {
      "commit": "9421174a2f002fef31b330fb04e00105a905dca4",
      "tree": "c98aba03fef5848ac810b6487dd951b93f172953",
      "parents": [
        "b80a2a8871d3af8619bf774a0c9ddbac8d598bf9"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Oct 28 17:09:06 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Oct 28 18:40:45 2014 -0700"
      },
      "message": "NuPlayer: merge start() and resume().\n\nNuPlayerDriver: allow seekTo called in STOPPED_AND_PREPARED state.\n\nBug: 18127606\nChange-Id: I92ff9f7e0a176c434202762d30966d8c4643d1ef\n"
    },
    {
      "commit": "ed394bcfa79da3dd25cd24d485aa0d063818a977",
      "tree": "e6071896ed4c0505b397933e202be7bea0ecc446",
      "parents": [
        "b2c3ad13cb248159910bef6ac51f7e6023e133b9",
        "b6dcdbf436ffacb52a41ac8ef9b07f99fd64779f"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Oct 28 23:27:54 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 28 23:27:54 2014 +0000"
      },
      "message": "Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\"\nautomerge: b6dcdbf  -s ours\n\n* commit \u0027b6dcdbf436ffacb52a41ac8ef9b07f99fd64779f\u0027:\n  Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\"\n"
    },
    {
      "commit": "b2c3ad13cb248159910bef6ac51f7e6023e133b9",
      "tree": "e6071896ed4c0505b397933e202be7bea0ecc446",
      "parents": [
        "bb9211236cf6104d16fc09b58550ce692d9af4e9",
        "620208dc0bbd7a0792702df3ab08800fdad60cec"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Oct 28 23:27:51 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 28 23:27:51 2014 +0000"
      },
      "message": "audio: prevent larger than required sleeps - DO NOT MERGE\nautomerge: 620208d  -s ours\n\n* commit \u0027620208dc0bbd7a0792702df3ab08800fdad60cec\u0027:\n  audio: prevent larger than required sleeps - DO NOT MERGE\n"
    },
    {
      "commit": "bb9211236cf6104d16fc09b58550ce692d9af4e9",
      "tree": "e6071896ed4c0505b397933e202be7bea0ecc446",
      "parents": [
        "52ea677828b23b216484dd34f84da2699ed850e3",
        "2feb18ddfdbd20941ebcc3314780a582da5608e4"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue Oct 28 23:26:28 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 28 23:26:28 2014 +0000"
      },
      "message": "Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\"\nautomerge: 2feb18d  -s ours\n\n* commit \u00272feb18ddfdbd20941ebcc3314780a582da5608e4\u0027:\n  Revert \"audio: prevent larger than required sleeps - DO NOT MERGE\"\n"
    },
    {
      "commit": "52ea677828b23b216484dd34f84da2699ed850e3",
      "tree": "e6071896ed4c0505b397933e202be7bea0ecc446",
      "parents": [
        "0568cd5bf0a93c54a5bca47b48f7cbe799ccafcf",
        "8c0417c173d1fd618ae54e2d721b0ec360ea70cc"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Tue Oct 28 23:25:57 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 28 23:25:57 2014 +0000"
      },
      "message": "audio: prevent larger than required sleeps - DO NOT MERGE\nautomerge: 8c0417c  -s ours\n\n* commit \u00278c0417c173d1fd618ae54e2d721b0ec360ea70cc\u0027:\n  audio: prevent larger than required sleeps - DO NOT MERGE\n"
    },
    {
      "commit": "dea1541fc0042abf05674b19c2f94ca086945dfd",
      "tree": "997d41dea43d2d59bda4f4124a0fd6be372dec76",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 15:46:45 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 15:46:45 2014 -0700"
      },
      "message": "audio policy: validate stream type received from binder calls.\n\nBug: 18001784.\nBug: 18002005.\nChange-Id: I8efa674dceff5a6e10251b1c7a55e9bb2d532395\n"
    },
    {
      "commit": "6e8212b2a02685e50d0c093a6f44d9af636261d9",
      "tree": "f741511b37434a49626b039b94a5e1f82d0f5170",
      "parents": [
        "eac3f36c5d22ca28890fe4258987ded5ac0666dc",
        "fd4c14883b268a0bc5514da135fe6b7d1ce2071b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 28 22:09:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 28 22:09:40 2014 +0000"
      },
      "message": "Merge \"Always use an address for remote submix\" into lmp-mr1-dev"
    },
    {
      "commit": "eac3f36c5d22ca28890fe4258987ded5ac0666dc",
      "tree": "fb06d642c862c41776ee6605f51be9d644deb93b",
      "parents": [
        "aac745f29b0e8b18e9f9aff0d122c7d5d82f218a",
        "d88c3cafb439367f2a245b625e0a74bcd785f099"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 21:42:25 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 28 21:42:26 2014 +0000"
      },
      "message": "Merge \"fix deep buffer logic in NuPlayer.\" into lmp-mr1-dev"
    },
    {
      "commit": "aac745f29b0e8b18e9f9aff0d122c7d5d82f218a",
      "tree": "f0d9b87888202a6d6b48271bd28e9d909742703c",
      "parents": [
        "b80a2a8871d3af8619bf774a0c9ddbac8d598bf9",
        "63f6ffb996a7ffc920012f05c3deca731614373f"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 28 21:22:05 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 28 21:22:05 2014 +0000"
      },
      "message": "Merge \"libmedia: ensure mCaptureThread exit within Visualizer destructor\" into lmp-mr1-dev"
    },
    {
      "commit": "63f6ffb996a7ffc920012f05c3deca731614373f",
      "tree": "9fda797341eadf05c1584122b85ecd8256c85491",
      "parents": [
        "dfc2a8f8a7d5062ecb2af4b940e54c3ce52795e3"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Thu Sep 25 10:33:12 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 28 13:48:33 2014 -0700"
      },
      "message": "libmedia: ensure mCaptureThread exit within Visualizer destructor\n\nIf mCaptureThread doesn\u0027t exit when Visualizer instance gets destroyed,\nrecycled member variables with random value such as danger pointer will\nbe accessed again and causes crash.\n\nThread which is created within Visualizer instance lifecycle should be\nterminated before or within destructor.\n\nCRs-Fixed: 688546\nauthored-by: wjiang@codeaurora.org\ncherry-pick from CAF commit: 4823e3d6b8c60faa4d8fee5d58728eb70e56abf2\n\nBug: 18159501\nChange-Id: Ie0b12ae8a3b9735b6ecbac0353781b8358cad644\n"
    },
    {
      "commit": "1bbc1c93b5db545e503dc27c262eef38685d0726",
      "tree": "8133609e752ea5bfffb6e438268f1e4709eee44c",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Thu Oct 23 17:15:19 2014 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Oct 28 13:20:13 2014 -0700"
      },
      "message": "CameraService: API1: fix picture FOV\n\nFix the wrong assumption that active array size equals to pixel array\nsize.\n\nbug 17918247\n\nChange-Id: Ic308f281fb677332a74e95abb473c5b13063eeca\n"
    },
    {
      "commit": "d88c3cafb439367f2a245b625e0a74bcd785f099",
      "tree": "84f82b2d3b9914d1741aa8199202d1962a82a9ef",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 10:52:11 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 11:46:20 2014 -0700"
      },
      "message": "fix deep buffer logic in NuPlayer.\n\nDeep buffer output should be requested when there is\nno video track, not when there is one.\n\nAlso make sure that the deep buffer flag is restored after\na failure to offload audio decoding.\n\nBug: 18114624.\nChange-Id: If3c04c784bc20d77926993ee475fbf961aeba7ae\n"
    },
    {
      "commit": "b80a2a8871d3af8619bf774a0c9ddbac8d598bf9",
      "tree": "c3922d648914fd6f02d34f16712f76906f6ecdc9",
      "parents": [
        "701b96474dc8afd16046e440975e00be57cc4874"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 27 16:07:59 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 09:14:37 2014 -0700"
      },
      "message": "audio policy: fix output device command after clearing audio patch\n\nMake sure that a valid audio patch is created again on an output stream\nfollowing the disconneciton and reconnection of the same output device.\n\nBug: 18144611.\nChange-Id: I72387ad8e93f8fb2571da2a6c58a6e167ac7fc4d\n"
    },
    {
      "commit": "701b96474dc8afd16046e440975e00be57cc4874",
      "tree": "de03ac586a7439f6dbe0d238cba4b38b7f6a5d74",
      "parents": [
        "df2592beab557663a471da2ac33ca463f7eee722",
        "a32d5435d9585794b72dd12546054f13adb845f2"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Oct 28 03:29:12 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 28 03:29:13 2014 +0000"
      },
      "message": "Merge \"libstagefright: set actual stride info for SW encoder input port\" into lmp-mr1-dev"
    },
    {
      "commit": "fd4c14883b268a0bc5514da135fe6b7d1ce2071b",
      "tree": "29e4594fffdc70dc7d51a3abd7586a556df1e448",
      "parents": [
        "31551f8dd625b8d40961e141d2913b0073f852ab"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Aug 06 16:02:28 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Oct 27 16:03:09 2014 -0700"
      },
      "message": "Always use an address for remote submix\n\nUsage of remote submix device for audio rerouting (e.g. wifi display)\n didn\u0027t mandate the use of addresses. Use \"0\" as the default address\n when none is specificed.\nIn logs, only use hex format for audio devices\n\nBug 16009464\n\nChange-Id: Ibfb1ce6881eba8b7e34420293b8a7077a6e659e6\n"
    },
    {
      "commit": "df2592beab557663a471da2ac33ca463f7eee722",
      "tree": "3cbf80d5599885efcc103c129c799349bb70790d",
      "parents": [
        "31551f8dd625b8d40961e141d2913b0073f852ab"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 24 18:53:44 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Oct 27 22:22:57 2014 +0000"
      },
      "message": "do not hold mNotifyLock when calling MediaPlayer::notify\n\nBug:18120688\nChange-Id: Ia66dcfc3fd2d67d1ceba9808d21e0120cc8691d6\n"
    },
    {
      "commit": "31551f8dd625b8d40961e141d2913b0073f852ab",
      "tree": "4d461207f87281f7a320fd27fa8dd156c65c4eea",
      "parents": [
        "8bfa96c2f7c098550b00b84677088f84e81f4ed4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 10 18:21:56 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 27 12:38:32 2014 -0700"
      },
      "message": "audio policy: fix multiple device volume\n\nWhem multiple devices are selected by a strategy,\napply volume to all these devices when one of them is changed by\nsetStreamVolumeIndex() API.\n\nAlso only consider devices supported by current output profile\nin checkDeviceMuteStrategies() to avoid muting a stream because of\ndevices connected to another output stream.\n\nBug: 17507571.\n\nChange-Id: I83ef9fb7f294214d30f7f890db44c64ece3be387\n"
    },
    {
      "commit": "a32d5435d9585794b72dd12546054f13adb845f2",
      "tree": "131bc4020f517611b9809c2090f214c1df600e37",
      "parents": [
        "8bfa96c2f7c098550b00b84677088f84e81f4ed4"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat Oct 25 01:30:12 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat Oct 25 01:37:38 2014 -0700"
      },
      "message": "libstagefright: set actual stride info for SW encoder input port\n\nThis fixes encoding flexible YUV content using SW encoders.\nAlso skip setting input color format if it is flexible YUV, as it\nhas already been translated to a color format supported by the codec.\n\nBug: 18124320\nChange-Id: I423782936986f4d6cf65ea9ef89ae77a92e30140\n"
    },
    {
      "commit": "8bfa96c2f7c098550b00b84677088f84e81f4ed4",
      "tree": "b2303da60f3377846a09bc7adcc5c2bde6670a57",
      "parents": [
        "b8f096c067f94ed0507d828f5cca2ceab9781c18",
        "0f8f4e681b867dd611d2d916453337cb0770d4da"
      ],
      "author": {
        "name": "Hochi Huang",
        "email": "hochi.huang@mediatek.com",
        "time": "Fri Oct 24 03:25:50 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 24 03:25:50 2014 +0000"
      },
      "message": "am 0f8f4e68:     [FM] Fix  FM App record fail Buganizer ID: 17975676\n\n* commit \u00270f8f4e681b867dd611d2d916453337cb0770d4da\u0027:\n  [FM] Fix  FM App record fail Buganizer ID: 17975676\n"
    },
    {
      "commit": "0f8f4e681b867dd611d2d916453337cb0770d4da",
      "tree": "027cfc10ad08b846cc23557c94510882c65a5813",
      "parents": [
        "511ae0549f889c78a820693fdd7e27ea634c2cd2"
      ],
      "author": {
        "name": "Hochi Huang",
        "email": "hochi.huang@mediatek.com",
        "time": "Wed Oct 22 22:06:15 2014 +0800"
      },
      "committer": {
        "name": "Leo Wang",
        "email": "leozwang@google.com",
        "time": "Fri Oct 24 00:48:18 2014 +0000"
      },
      "message": "    [FM] Fix  FM App record fail Buganizer ID: 17975676\n\n    Review: https://partner-android-review.git.corp.google.com/#/c/185234\n\n    Signed-off-by: Hochi Huang \u003chochi.huang@mediatek.com\u003e\n\nChange-Id: I872ce744d23049e251a46aebc4019be5b25e3612\n"
    },
    {
      "commit": "b8f096c067f94ed0507d828f5cca2ceab9781c18",
      "tree": "d0bdf1434910d8ad4055b666e8636845f6b18966",
      "parents": [
        "ee94675469f67c3fe25428b87fc9a2d468f908c6",
        "511ae0549f889c78a820693fdd7e27ea634c2cd2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 23 22:10:52 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 23 22:10:52 2014 +0000"
      },
      "message": "am 511ae054: am f256901b: Merge \"64 bit fixes for NdkMediaExtractor\" into lmp-dev\n\n* commit \u0027511ae0549f889c78a820693fdd7e27ea634c2cd2\u0027:\n  64 bit fixes for NdkMediaExtractor\n"
    },
    {
      "commit": "ee94675469f67c3fe25428b87fc9a2d468f908c6",
      "tree": "cc132c60d8df2f642c161a22bc8d3217b4960107",
      "parents": [
        "6f907217c7a624c9e304f799d51771aff93c0f92",
        "4d8ae211ae2e2a5ae464931ce41ec5b1d6e6d51f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Oct 23 22:10:51 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 23 22:10:51 2014 +0000"
      },
      "message": "am 4d8ae211: am 661c21da: CameraService: Disconnect: Release mutex while waiting for joins.\n\n* commit \u00274d8ae211ae2e2a5ae464931ce41ec5b1d6e6d51f\u0027:\n  CameraService: Disconnect: Release mutex while waiting for joins.\n"
    },
    {
      "commit": "511ae0549f889c78a820693fdd7e27ea634c2cd2",
      "tree": "18a57143c457e89ae021bac7fa1d52540795e31d",
      "parents": [
        "4d8ae211ae2e2a5ae464931ce41ec5b1d6e6d51f",
        "f256901b83d393c5fe6d9b1cfb6391faa86cac72"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 23 21:52:53 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 23 21:52:53 2014 +0000"
      },
      "message": "am f256901b: Merge \"64 bit fixes for NdkMediaExtractor\" into lmp-dev\n\n* commit \u0027f256901b83d393c5fe6d9b1cfb6391faa86cac72\u0027:\n  64 bit fixes for NdkMediaExtractor\n"
    },
    {
      "commit": "4d8ae211ae2e2a5ae464931ce41ec5b1d6e6d51f",
      "tree": "1970884c99a9aeec091d9572864c3a11e9bf21ef",
      "parents": [
        "2f368e57e58c6bc3ab291d6318b19c6698fc184b",
        "661c21da5592ca48256747ec220efb2e599eeb72"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Oct 23 21:52:52 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 23 21:52:52 2014 +0000"
      },
      "message": "am 661c21da: CameraService: Disconnect: Release mutex while waiting for joins.\n\n* commit \u0027661c21da5592ca48256747ec220efb2e599eeb72\u0027:\n  CameraService: Disconnect: Release mutex while waiting for joins.\n"
    },
    {
      "commit": "f256901b83d393c5fe6d9b1cfb6391faa86cac72",
      "tree": "fc32430a4fc66bcbca240e623c59381d9e12d56a",
      "parents": [
        "661c21da5592ca48256747ec220efb2e599eeb72",
        "58344bc9165a9465a63acc874f3e71251a0d7f50"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 23 21:30:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 23 21:30:58 2014 +0000"
      },
      "message": "Merge \"64 bit fixes for NdkMediaExtractor\" into lmp-dev"
    },
    {
      "commit": "6f907217c7a624c9e304f799d51771aff93c0f92",
      "tree": "b86e9eab9998afb6cbc3095f99539ae193ed6919",
      "parents": [
        "b9b21bc11bfb6e77cc0f9e9a31de02342ab9d653",
        "6456ae745e919085c5024f784aaa2703f9695f98"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Oct 23 19:46:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 23 19:46:57 2014 +0000"
      },
      "message": "Merge \"stagefright: return failure on malformed TS streams\" into lmp-mr1-dev"
    },
    {
      "commit": "58344bc9165a9465a63acc874f3e71251a0d7f50",
      "tree": "ddd73ed0dcedaa3e54e6d773982cb6597139cc8d",
      "parents": [
        "168799c32ce3f9196ae7928986a7ba3770c74b14"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 23 11:36:38 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 23 11:43:39 2014 -0700"
      },
      "message": "64 bit fixes for NdkMediaExtractor\n\nBug: 18094443\nChange-Id: Iae049012966707f5c187c61ed68407f22c662b25\n"
    },
    {
      "commit": "661c21da5592ca48256747ec220efb2e599eeb72",
      "tree": "75a5f011edf8a5773b689abcc836a99a3e10744d",
      "parents": [
        "168799c32ce3f9196ae7928986a7ba3770c74b14"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Oct 22 14:21:12 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Oct 22 14:21:12 2014 -0700"
      },
      "message": "CameraService: Disconnect: Release mutex while waiting for joins.\n\nThe threads shutting down may have callpaths that require taking the\nbinder interface mutex, so waiting to join them with that mutex held\ncan lead to deadlocks.\n\nA specific instance is StreamingProcessor calling dataCallbackTimestamp,\nwhich can immediately lead to a Camera2Client::releaseRecordingFrame call,\nwhich requires the binder interface mutex. If this call happens right when\nshutdown is occurring, and Camera2Client::disconnect is holding the mutex,\ndeadlock ensues.\n\nBug: 17997578\nChange-Id: I71253cd5542b5920ad205976d315110ca0043d94\n"
    },
    {
      "commit": "b9b21bc11bfb6e77cc0f9e9a31de02342ab9d653",
      "tree": "c9150aae583ee04a6120fd37f9784eb3abd78157",
      "parents": [
        "7a337b8f4c49588e350ec47f214c35fadaa9af29",
        "2f368e57e58c6bc3ab291d6318b19c6698fc184b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 20:47:41 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:41 2014 +0000"
      },
      "message": "am 2f368e57: Merge branch \\\u0027lmp-sprout-dev\\\u0027 of https://googleplex-android.googlesource.com/_direct/platform/frameworks/av into lmp-sprout-dev\n\n* commit \u00272f368e57e58c6bc3ab291d6318b19c6698fc184b\u0027:\n"
    },
    {
      "commit": "7a337b8f4c49588e350ec47f214c35fadaa9af29",
      "tree": "c9150aae583ee04a6120fd37f9784eb3abd78157",
      "parents": [
        "c99e2e46256b11cae0a424e3341e1c04a3ee2076",
        "3873c920b830fcea2979a5bf6097bfd5810957f9"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 20:47:41 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:41 2014 +0000"
      },
      "message": "am 3873c920: am 168799c3: Merge \"release camera without holding CameraSource mutex\" into lmp-dev\n\n* commit \u00273873c920b830fcea2979a5bf6097bfd5810957f9\u0027:\n"
    },
    {
      "commit": "c99e2e46256b11cae0a424e3341e1c04a3ee2076",
      "tree": "c9150aae583ee04a6120fd37f9784eb3abd78157",
      "parents": [
        "42aae0c4e722d08828d7316eaa86bb920ea474f2",
        "c3ddddbd4ec1fe2c570a25925db6b396fb83badf"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 20:47:38 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:38 2014 +0000"
      },
      "message": "am c3ddddbd: Merge \"release camera without holding CameraSource mutex\" into lmp-dev automerge: 168799c\n\n* commit \u0027c3ddddbd4ec1fe2c570a25925db6b396fb83badf\u0027:\n  release camera without holding CameraSource mutex\n  move audio sink open/close to NuPlayerRenderer\n  Fix freed memory references\n  audio policy: move intializations to onFirstRef()\n  Fix VideoFrame class layout for 64/32 bit\n  NuPlayer: wait for renderer flush before decoder shutdown\n  Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\n  send available codec buffer count with codec notification\n  mediarecorder: set level if setting default profile\n  stagefright: move math templates into AUtils.h\n  NuPlayer: Fix flush mode decoder error handling\n  Revert \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\"\n  GenericSource: support disconnect before NuCachedSource2 is created\n  mediaplayer: make frame-accurate avsync configurable\n"
    },
    {
      "commit": "42aae0c4e722d08828d7316eaa86bb920ea474f2",
      "tree": "da7d170e1c839e01d3604ed453c4ba35f9d87974",
      "parents": [
        "8274b049020e9c8f0b0a892c24d6308d92dd3b92",
        "f04e8b5e51cfc868e5e58e1ad234095c8b7505ad"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 22 20:47:30 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:30 2014 +0000"
      },
      "message": "am f04e8b5e: am 25842048: Merge \"stagefright: try to free codec instance if MediaCodec.release hangs\" into lmp-dev\n\n* commit \u0027f04e8b5e51cfc868e5e58e1ad234095c8b7505ad\u0027:\n  stagefright: try to free codec instance if MediaCodec.release hangs\n"
    },
    {
      "commit": "8274b049020e9c8f0b0a892c24d6308d92dd3b92",
      "tree": "ce8b571c45be0926836d09fa55e50f8c3c7d4f59",
      "parents": [
        "a4ee6d5fcdb71674c79cc2c211672524606a3d83",
        "cd3fc4e341abc224db6876c5a028cb94606dc4e8"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 22 20:47:28 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:28 2014 +0000"
      },
      "message": "am cd3fc4e3: am 6ce19d24: Merge \"Stagefright: MediaCodec: shutdown allocated codec on error\" into lmp-dev\n\n* commit \u0027cd3fc4e341abc224db6876c5a028cb94606dc4e8\u0027:\n  Stagefright: MediaCodec: shutdown allocated codec on error\n"
    },
    {
      "commit": "a4ee6d5fcdb71674c79cc2c211672524606a3d83",
      "tree": "5db6700ac1e8da42815349f86efd99a3ecb456d0",
      "parents": [
        "9d0d5958969cffae5d4305025bc20d05f32e6ff2",
        "6e52a61ace0055167ab1b995ba997217f7e1822f"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 22 20:47:27 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 20:47:27 2014 +0000"
      },
      "message": "am 6e52a61a: am f5926713: mediaplayer: don\\\u0027t report position past last queued position\n\n* commit \u00276e52a61ace0055167ab1b995ba997217f7e1822f\u0027:\n  mediaplayer: don\u0027t report position past last queued position\n"
    },
    {
      "commit": "9d0d5958969cffae5d4305025bc20d05f32e6ff2",
      "tree": "13d3ef1adc3e281778d2cab53846c337469cfec4",
      "parents": [
        "1f58bb157ded117fe931142e9906b2b6b406b534",
        "fa90e84ed0cb2abdc0e0873a06d10ccf2b3c34f6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 22 17:16:29 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 22 17:16:30 2014 +0000"
      },
      "message": "Merge \"audioflinger: new HW A/V sync ID allocation flow\" into lmp-mr1-dev"
    },
    {
      "commit": "fa90e84ed0cb2abdc0e0873a06d10ccf2b3c34f6",
      "tree": "cfb0730e677246729f44e97465edfac2f0fb45ad",
      "parents": [
        "0cfc8f2500bb76d44ad45a723a570835aeff502b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 17 18:12:31 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 22 10:04:14 2014 -0700"
      },
      "message": "audioflinger: new HW A/V sync ID allocation flow\n\nThe HW A/V sync ID is now allocated by the audio HAL before the\noutput stream is created by a call to global get_parameters() with\nkey AUDIO_PARAMETER_HW_AV_SYNC.\n\nWhen the AudioTrack is created, the HW A/V sync ID is communicated\nto the output stream by stream set_parameters() with key\nAUDIO_PARAMETER_STREAM_HW_AV_SYNC.\n\nBug: 17112525.\nChange-Id: Ia8bc6f3bf9f358aa89f3f56ac554e893a19811ad\n"
    },
    {
      "commit": "1f58bb157ded117fe931142e9906b2b6b406b534",
      "tree": "01e3d17fcc2e98713aa8a0194e92e73855c573aa",
      "parents": [
        "171fa1607e8bc3e94c2c9ff080777fcdf06f60d9",
        "964b73121a634921f000ef3f877a7546f65bb700"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 22 14:53:31 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 14:53:31 2014 +0000"
      },
      "message": "am 964b7312: am 7de5ac1f: audio policy: fix effect handle leak\n\n* commit \u0027964b73121a634921f000ef3f877a7546f65bb700\u0027:\n  audio policy: fix effect handle leak\n"
    },
    {
      "commit": "171fa1607e8bc3e94c2c9ff080777fcdf06f60d9",
      "tree": "0995bec755618fbb050ebe24b6367ef265376e14",
      "parents": [
        "41c4d1a242708aed8d0ad97b24bc4aa06805eb1d",
        "9bbccd13231fbf30e466efedacec5ac03690701b"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 22 01:58:50 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 01:58:50 2014 +0000"
      },
      "message": "am 9bbccd13: am d5923409: mediaplayer: limit scheduling video frames into the future\n\n* commit \u00279bbccd13231fbf30e466efedacec5ac03690701b\u0027:\n  mediaplayer: limit scheduling video frames into the future\n"
    },
    {
      "commit": "41c4d1a242708aed8d0ad97b24bc4aa06805eb1d",
      "tree": "87b45e49f58e41b5a112068b2721063ee3fbe191",
      "parents": [
        "097fc64d8d888be76bb8c7386e9dde0b101a7fa5",
        "da686693896ecf5cd29c3a35979e7cf17e2702b3"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Oct 22 01:58:49 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 01:58:49 2014 +0000"
      },
      "message": "am da686693: am eecb7805: NuPlayer: set anchor time for each audio buffer.\n\n* commit \u0027da686693896ecf5cd29c3a35979e7cf17e2702b3\u0027:\n  NuPlayer: set anchor time for each audio buffer.\n"
    },
    {
      "commit": "2f368e57e58c6bc3ab291d6318b19c6698fc184b",
      "tree": "a31856463080cc988378d937e59c7318c1b815ca",
      "parents": [
        "3873c920b830fcea2979a5bf6097bfd5810957f9",
        "c3ddddbd4ec1fe2c570a25925db6b396fb83badf"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 01:21:05 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 01:21:05 2014 +0000"
      },
      "message": "Merge branch \u0027lmp-sprout-dev\u0027 of https://googleplex-android.googlesource.com/_direct/platform/frameworks/av into lmp-sprout-dev\n"
    },
    {
      "commit": "6456ae745e919085c5024f784aaa2703f9695f98",
      "tree": "f997a24e830da8dea78c5acaecf706fde4b78006",
      "parents": [
        "121969b7e0d958092fae76226dc55fe8547a1da6"
      ],
      "author": {
        "name": "David Yeh",
        "email": "david.yeh@mediatek.com",
        "time": "Wed Sep 03 11:14:48 2014 +0800"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Oct 21 18:17:53 2014 -0700"
      },
      "message": "stagefright: return failure on malformed TS streams\n\nBug: 18075193\nChange-Id: I7bd97dea263e972a8de3429ed000cbd4913164bf\n"
    },
    {
      "commit": "c3ddddbd4ec1fe2c570a25925db6b396fb83badf",
      "tree": "a31856463080cc988378d937e59c7318c1b815ca",
      "parents": [
        "f04e8b5e51cfc868e5e58e1ad234095c8b7505ad",
        "168799c32ce3f9196ae7928986a7ba3770c74b14"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 01:17:28 2014 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 22 01:17:28 2014 +0000"
      },
      "message": "Merge \"release camera without holding CameraSource mutex\" into lmp-dev\nautomerge: 168799c\n\n* commit \u0027168799c32ce3f9196ae7928986a7ba3770c74b14\u0027:\n  release camera without holding CameraSource mutex\n  move audio sink open/close to NuPlayerRenderer\n  Fix freed memory references\n  audio policy: move intializations to onFirstRef()\n  Fix VideoFrame class layout for 64/32 bit\n  NuPlayer: wait for renderer flush before decoder shutdown\n  Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\n  send available codec buffer count with codec notification\n  mediarecorder: set level if setting default profile\n  stagefright: move math templates into AUtils.h\n  NuPlayer: Fix flush mode decoder error handling\n  Revert \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\"\n  GenericSource: support disconnect before NuCachedSource2 is created\n  mediaplayer: make frame-accurate avsync configurable\n"
    },
    {
      "commit": "3873c920b830fcea2979a5bf6097bfd5810957f9",
      "tree": "a31856463080cc988378d937e59c7318c1b815ca",
      "parents": [
        "f04e8b5e51cfc868e5e58e1ad234095c8b7505ad",
        "168799c32ce3f9196ae7928986a7ba3770c74b14"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 22 01:14:31 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 22 01:14:31 2014 +0000"
      },
      "message": "am 168799c3: Merge \"release camera without holding CameraSource mutex\" into lmp-dev\n\n* commit \u0027168799c32ce3f9196ae7928986a7ba3770c74b14\u0027:\n  release camera without holding CameraSource mutex\n  move audio sink open/close to NuPlayerRenderer\n  Fix freed memory references\n  audio policy: move intializations to onFirstRef()\n  Fix VideoFrame class layout for 64/32 bit\n  NuPlayer: wait for renderer flush before decoder shutdown\n  Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\n  send available codec buffer count with codec notification\n  mediarecorder: set level if setting default profile\n  stagefright: move math templates into AUtils.h\n  NuPlayer: Fix flush mode decoder error handling\n  Revert \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\"\n  GenericSource: support disconnect before NuCachedSource2 is created\n  mediaplayer: make frame-accurate avsync configurable\n"
    }
  ],
  "next": "168799c32ce3f9196ae7928986a7ba3770c74b14"
}
