)]}'
{
  "log": [
    {
      "commit": "6db20dcb54dad932a3ea2e3a5dca41fce5802eb4",
      "tree": "295ef5012f98e4b9251f28774cfb3f83710ea197",
      "parents": [
        "2f55c2c03b17795e94b325d402ac5b409e3ba0e8",
        "2048c2292c0466b184fb8f67c91f4d0ab9f5c3f3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Mar 08 00:29:56 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 08 00:29:56 2014 +0000"
      },
      "message": "Merge \"AudioTrack: When paused, return cached playback position\" into klp-dev"
    },
    {
      "commit": "2f55c2c03b17795e94b325d402ac5b409e3ba0e8",
      "tree": "a175500b5d2276dd12dfdd332b7f9d45ed021af1",
      "parents": [
        "5874615f26a6ba9cda8ba359e5035b21f6e3818b",
        "dcec903589ac651b9f558454392d286c13f743fb"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 07 20:22:38 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 20:22:38 2014 +0000"
      },
      "message": "Merge \"Simplify AudioTrack stream end and fix race\" into klp-dev"
    },
    {
      "commit": "dcec903589ac651b9f558454392d286c13f743fb",
      "tree": "e436514f1a63d4b26dad1c142912411c23e60578",
      "parents": [
        "5bc83fc352e5682ecafe61d77062c26ac8db4229"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Sep 20 09:28:56 2013 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 07 11:09:51 2014 -0800"
      },
      "message": "Simplify AudioTrack stream end and fix race\n\nBug: 10994052\nChange-Id: Ib2e38e7a600bcffef8cbc68c1722e40fbbc7ea67\n"
    },
    {
      "commit": "5874615f26a6ba9cda8ba359e5035b21f6e3818b",
      "tree": "9b4d68587084bb252d47d565832ee5bd384fbc89",
      "parents": [
        "5bc83fc352e5682ecafe61d77062c26ac8db4229"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Feb 03 14:33:16 2014 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Mar 07 10:48:07 2014 -0800"
      },
      "message": "Allow for larger codec private data\n\nThis change adds support for multibyte sizes in the ESDS. Previously the\nMatroska extractor only supported single byte sizes, so codec private data\nhad to be less than 108 bytes, and would crash if it was bigger.\nb/12584090\n\nChange-Id: I9edfc2f687187d1e98bcfd2fe56576312435df3e\n"
    },
    {
      "commit": "5bc83fc352e5682ecafe61d77062c26ac8db4229",
      "tree": "f50dfaf51745a4de358b02eeaa41426d34f1f139",
      "parents": [
        "49ea13379fb15ddb73183ebafa3a377342ef932f",
        "be1195a6d5e6dd4299da344cf9905dd6a12dc4ef"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Mar 07 18:22:53 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 18:22:53 2014 +0000"
      },
      "message": "Merge \"Fix SIGABRT when playing mp4 file\" into klp-dev"
    },
    {
      "commit": "49ea13379fb15ddb73183ebafa3a377342ef932f",
      "tree": "67f916593db5990acd0ab5bee3d2e5941c98caf8",
      "parents": [
        "e0c3058a1d0953f4c85bfc964926cf5babb7dbac",
        "a1076eb135b74a32e9bdc1aed17aee4374eb41af"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:35:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:35:50 2014 +0000"
      },
      "message": "Merge changes I787e1c05,I72d3a5e1,I0a5cc65f,I75fc2a25,I2c2be08d, ... into klp-dev\n\n* changes:\n  LiveSession: Use the actual, possibly redirected url as base in the M3U\n  M3UParser: Skip query strings when looking for the last slash in a URL\n  ChromiumHTTPDataSource: Keep track of the redirected URL\n  Initial HLS seamless switch implementation.\n  NuPlayer side support for seamless format switch.\n  LiveSession refactor\n  PlaylistFetcher: Add support for block-by-block decryption.\n  LiveSession: Add support for block-by-block fetchFile.\n"
    },
    {
      "commit": "e0c3058a1d0953f4c85bfc964926cf5babb7dbac",
      "tree": "3ddf04eaa4d8bd8c3cd9f87664bcadc71ef3c1a1",
      "parents": [
        "2613347d74c3f35bc6fda5df1c29c1119c22d432",
        "7e50e1c0c10cba1e27cafe581273adcadf93877d"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:33:32 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:33:33 2014 +0000"
      },
      "message": "Merge \"AnotherPacketSource support to get latest buffered MetaData.\" into klp-dev"
    },
    {
      "commit": "2613347d74c3f35bc6fda5df1c29c1119c22d432",
      "tree": "7f97cbfd6f1f9d3183a8b8e0ffbdadae662a6372",
      "parents": [
        "909498b72d740e3151561fd4435ad0a329ec9c6e",
        "933a4d3339ebbcd34a7f97b9e7350ec74b5ec29c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:33:08 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:33:08 2014 +0000"
      },
      "message": "Merge \"Added support to query ACodec whether adaptive playback is enabled.\" into klp-dev"
    },
    {
      "commit": "909498b72d740e3151561fd4435ad0a329ec9c6e",
      "tree": "d9fcf6e8275b790e2ede30a30d4d4dab1afea97b",
      "parents": [
        "2338782d18d9bcc8197c63dbf205332a2a737440",
        "f7e34cfcb9d649989c8e391f23dde782d4931849"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:32:34 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:32:34 2014 +0000"
      },
      "message": "Merge \"stagefright: use CODECS field in EXT-X_STREAM-INF as fallback\" into klp-dev"
    },
    {
      "commit": "2338782d18d9bcc8197c63dbf205332a2a737440",
      "tree": "9c3e2776df597444edfe3f5cfd52818b3f1c50ec",
      "parents": [
        "ad21a81af3e7d6b58002c9dce9c3278b6323e4a9",
        "b2be2f2e41d5502d79636b21cbad23f4f983bbd7"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:32:25 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:32:25 2014 +0000"
      },
      "message": "Merge \"Fixed misplaced bracket for switch-case block.\" into klp-dev"
    },
    {
      "commit": "ad21a81af3e7d6b58002c9dce9c3278b6323e4a9",
      "tree": "aa95e33909367262856ec40abd57d040f2b2db1a",
      "parents": [
        "b74b209862cbcbab6053cf4a43bbc16940aaafd2",
        "e62d20268de87f63083896b5eef083d541078322"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:32:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:32:09 2014 +0000"
      },
      "message": "Merge \"stagefright: Fix issue with tracking media format in packet source\" into klp-dev"
    },
    {
      "commit": "b74b209862cbcbab6053cf4a43bbc16940aaafd2",
      "tree": "8c60c5ec50a62f36d0d8a79c4d4ac816cc4618a7",
      "parents": [
        "a11111f9135c98cf4247bbd1a61d7df3053e549e",
        "6708a45ba1b5eacf583d5e80b2075b68940fe0ab"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Mar 07 02:31:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 02:31:51 2014 +0000"
      },
      "message": "Merge \"stagefright: Fix bugs in playlist fetcher logic\" into klp-dev"
    },
    {
      "commit": "a1076eb135b74a32e9bdc1aed17aee4374eb41af",
      "tree": "f071cede95394ffcdde758cb5dbf8b16be97cb8c",
      "parents": [
        "75d03185ac7be95c700f3f375080989e5de03ef6"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Nov 22 17:57:31 2013 +0200"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 18:11:27 2014 -0800"
      },
      "message": "LiveSession: Use the actual, possibly redirected url as base in the M3U\n\nThis fixes playback of HLS streams where the M3U playlists use\nrelative paths and the main playlist is opened via a redirect.\n\nBug: 13174301\nChange-Id: I787e1c050daddc566be4c8e3f84803d3f91eec46\n"
    },
    {
      "commit": "75d03185ac7be95c700f3f375080989e5de03ef6",
      "tree": "5bb078ad258d93dbb3e024e575fafb142b229ffa",
      "parents": [
        "e2492dc46f5476e3abc617ee21d74f44198591dd"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Nov 22 17:05:05 2013 +0200"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 18:11:27 2014 -0800"
      },
      "message": "M3UParser: Skip query strings when looking for the last slash in a URL\n\nBug: 13174301\nChange-Id: I72d3a5e11fef9bbd75b291bc490c9cab1dce58da\n"
    },
    {
      "commit": "2048c2292c0466b184fb8f67c91f4d0ab9f5c3f3",
      "tree": "126fcbfff298dd8e0f8ddb834c93c8850b8654ac",
      "parents": [
        "a11111f9135c98cf4247bbd1a61d7df3053e549e"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Wed Jan 08 13:59:53 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 06 18:00:39 2014 -0800"
      },
      "message": "AudioTrack: When paused, return cached playback position\n\nAn offload output can be re-used between two audio tracks having\nthe same configuration. A timestamp query for a paused track\nwhile the other is running would return an incorrect time.\nTo fix this, cache the playback position on a pause() and return\nthis time when requested until the track is resumed.\n\nBug: 12826612.\nChange-Id: Ia42b8b8fd2ba8993dfcc9abca72da48d71d78d74\n"
    },
    {
      "commit": "be1195a6d5e6dd4299da344cf9905dd6a12dc4ef",
      "tree": "b7bdb8e6224689ad2a745699d5c16e59df93e02e",
      "parents": [
        "880413f7923ec77467243e15dc34d4af4f8064f9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 25 08:39:56 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Mar 06 17:42:21 2014 -0800"
      },
      "message": "Fix SIGABRT when playing mp4 file\n\nIf the track duration was shorter than the segment duration, the calculated\nencoder padding would be negative, resulting in a crash.\nb/11823061\nhttps://code.google.com/p/android/issues/detail?id\u003d62610\n\nChange-Id: I3989ad88caea38d212b61355c15aec13382c6116\n"
    },
    {
      "commit": "a11111f9135c98cf4247bbd1a61d7df3053e549e",
      "tree": "e0603972793777c7a190dd2a1c3c76336098a064",
      "parents": [
        "ed4d8b28b8ee5a3e4ebc8f73bf4dc86c75a74258",
        "a413dd621966044753a8fa1f57c76d847b6f4bec"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Mar 07 01:40:59 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 01:40:59 2014 +0000"
      },
      "message": "Merge changes Id28b35fd,Ie4e64977,I2950f31e into klp-dev\n\n* changes:\n  DO NOT MERGE: Camera: fix focusArea wrong indexing issue\n  DO NOT MERGE: camera2: Fix race with stream deletion during disconnect.\n  DO NOT MERGE: camera2/3: Add protection for still capture path\n"
    },
    {
      "commit": "ed4d8b28b8ee5a3e4ebc8f73bf4dc86c75a74258",
      "tree": "93a6b8673072ca56e0e42e67859a7943915cd016",
      "parents": [
        "880413f7923ec77467243e15dc34d4af4f8064f9",
        "f590f948e6c0fe3c54008dd7802fd513f127792d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 07 01:09:33 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 07 01:09:34 2014 +0000"
      },
      "message": "Merge \"stagefright: do not offload LD-AAC decoding\" into klp-dev"
    },
    {
      "commit": "e2492dc46f5476e3abc617ee21d74f44198591dd",
      "tree": "f7da98c8c6600cd3db8c2f96219626ce8a2ec63e",
      "parents": [
        "777ee5ed736c8f6c3f7d196ea022f7432bfd23e1"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Nov 22 18:11:58 2013 +0200"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:27:19 2014 -0800"
      },
      "message": "ChromiumHTTPDataSource: Keep track of the redirected URL\n\nThis makes the code actually match an existing comment in\nDrmInitialization, which claimed that mURI was the redirected\nURL and not the original one.\n\nBug: 13174301\nChange-Id: I0a5cc65f520f1482ff91320ae78af84a8a681ee3\n"
    },
    {
      "commit": "777ee5ed736c8f6c3f7d196ea022f7432bfd23e1",
      "tree": "90c59cbca76978fb5fc9961cc19f7a21dd5aa499",
      "parents": [
        "0523da8f16557a85395da86ab76be6d8cb771da0"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Feb 20 13:07:26 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:27:15 2014 -0800"
      },
      "message": "Initial HLS seamless switch implementation.\n\nBug: 11854054\nChange-Id: I75fc2a258111295039ac13cc37e407df25891dd2\n"
    },
    {
      "commit": "0523da8f16557a85395da86ab76be6d8cb771da0",
      "tree": "41e633ee427fcec6193782b8cd1766089d5e20ed",
      "parents": [
        "6c8495c8f1ccc35db972ee7ac0dbb8baf5843548"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Jan 23 16:18:22 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:58 2014 -0800"
      },
      "message": "NuPlayer side support for seamless format switch.\n\nAvoid reinstantiating decoder if seamless format switch is supported.\n\nBug: 11854054\nChange-Id: I2c2be08d6da90cc835ec747d04a76db2313dfc7c\n"
    },
    {
      "commit": "6c8495c8f1ccc35db972ee7ac0dbb8baf5843548",
      "tree": "0c2a6ee4cf3288f7797a8c3fa8e22740123ff124",
      "parents": [
        "2cd94583868b775a548233a4f7cd1d988fc6344f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Feb 14 12:21:50 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:55 2014 -0800"
      },
      "message": "LiveSession refactor\n\nBug: 11854054\nChange-Id: Ia91dce109835e042f72934376d4838b4cc72cb10\n"
    },
    {
      "commit": "2cd94583868b775a548233a4f7cd1d988fc6344f",
      "tree": "3c61506c66f0f6f5140f4cda1dd4822922b052c8",
      "parents": [
        "822a489e595336be447f47f5c2a051e8fdd1cdff"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Feb 06 14:25:25 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:49 2014 -0800"
      },
      "message": "PlaylistFetcher: Add support for block-by-block decryption.\n\nBug: 11854054\nChange-Id: Ifd3f3369275889e716b360087b5b60d01635b578\n"
    },
    {
      "commit": "822a489e595336be447f47f5c2a051e8fdd1cdff",
      "tree": "6cfaa5019c19b8a4cec2fd77857a06c5529b228f",
      "parents": [
        "7e50e1c0c10cba1e27cafe581273adcadf93877d"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Feb 06 14:01:30 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:45 2014 -0800"
      },
      "message": "LiveSession: Add support for block-by-block fetchFile.\n\nBug: 11854054\nChange-Id: I4025ba7fab8fab2e0c720f73894e908fd98a43d8\n"
    },
    {
      "commit": "7e50e1c0c10cba1e27cafe581273adcadf93877d",
      "tree": "fa821ccd7fc24142651b79d757ee0f6fe2243167",
      "parents": [
        "933a4d3339ebbcd34a7f97b9e7350ec74b5ec29c"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Jan 23 14:25:32 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:37 2014 -0800"
      },
      "message": "AnotherPacketSource support to get latest buffered MetaData.\n\nBug: 11854054\nChange-Id: Ib3b6e0984036082bf3c4eb7901a2b29be52fdd29\n"
    },
    {
      "commit": "933a4d3339ebbcd34a7f97b9e7350ec74b5ec29c",
      "tree": "bd6e305a5ba2d5cb84e6d90779a36b9f0dc457f9",
      "parents": [
        "f7e34cfcb9d649989c8e391f23dde782d4931849"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Jan 23 15:26:43 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:30 2014 -0800"
      },
      "message": "Added support to query ACodec whether adaptive playback is enabled.\n\nBug: 11854054\nChange-Id: I6b0308aa8550c643706959277e46dad586c37297\n"
    },
    {
      "commit": "f7e34cfcb9d649989c8e391f23dde782d4931849",
      "tree": "3a836aaa2a4940547dd9f116e6fe85907d62940e",
      "parents": [
        "b2be2f2e41d5502d79636b21cbad23f4f983bbd7"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Jan 23 15:00:53 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:26:01 2014 -0800"
      },
      "message": "stagefright: use CODECS field in EXT-X_STREAM-INF as fallback\n\nUse the CODECS field in EXT-X-STREAM-INF as a viable fallback for identifying\navailable streams in a variant playlist.\n\nBug: 11854054\nChange-Id: I5011809dc7c56220b023eb1a16f2d6a392ddd6f1\n"
    },
    {
      "commit": "b2be2f2e41d5502d79636b21cbad23f4f983bbd7",
      "tree": "2212d77b4622295440e988f0c06cc57439a9bd26",
      "parents": [
        "e62d20268de87f63083896b5eef083d541078322"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Jan 23 14:16:32 2014 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:25:13 2014 -0800"
      },
      "message": "Fixed misplaced bracket for switch-case block.\n\nBug: 11854054\nChange-Id: I66b410e1e19601ad65d8357bda4c0c58e2dc15dc\n"
    },
    {
      "commit": "e62d20268de87f63083896b5eef083d541078322",
      "tree": "fce776fcf4d2eb288e7eae863932ae980c95b128",
      "parents": [
        "6708a45ba1b5eacf583d5e80b2075b68940fe0ab"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Dec 17 14:10:46 2013 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:25:11 2014 -0800"
      },
      "message": "stagefright: Fix issue with tracking media format in packet source\n\nMedia format in AnotherPacketSource is now tracked across discontinuities.\nThis fixes a bug where format was set on queueAccessUnit and cleared on\ndequeueAccessUnit, thereby allowing it to remain cleared.\n\nChange-Id: I20975a630443f4a223a2b4344e8244f34b9560b9\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 12060952\n"
    },
    {
      "commit": "6708a45ba1b5eacf583d5e80b2075b68940fe0ab",
      "tree": "3d5956682c42074b73f380f12191a70e2d4527f3",
      "parents": [
        "880413f7923ec77467243e15dc34d4af4f8064f9"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Dec 16 10:16:32 2013 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Mar 06 16:19:38 2014 -0800"
      },
      "message": "stagefright: Fix bugs in playlist fetcher logic\n\n1. Improve start time: start playback as soon as the target duration\nor 10s was buffered.\n2. Select playlist monitor time based on target duration to avoid\ncontinuously missing the boat.\n3. If \"we miss the boat\" we still must request a safe sequence\nnumber (last - 3)\n\nChange-Id: Ie99c360ac67b152ad9af19e9c6e520016f67e4e3\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 12060952\n"
    },
    {
      "commit": "880413f7923ec77467243e15dc34d4af4f8064f9",
      "tree": "c7171f3ba21757ed6bfd545bfd0967610f18ab4e",
      "parents": [
        "3b7ddf83db2d11c08116a6476c0f11e71bd72ba4",
        "3c836e7882e88de42e0e600627de433b61e78621"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 06 19:21:49 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 06 19:21:49 2014 +0000"
      },
      "message": "Merge \"stagefright: fix offloading HE-AAC sampling rate.\" into klp-dev"
    },
    {
      "commit": "f590f948e6c0fe3c54008dd7802fd513f127792d",
      "tree": "1bd64930d69158418ac7c54c9d9a9b3a16dab973",
      "parents": [
        "3c836e7882e88de42e0e600627de433b61e78621"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 06 11:51:42 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 06 11:16:08 2014 -0800"
      },
      "message": "stagefright: do not offload LD-AAC decoding\n\nFor now, do not offload LD and ELD AAC decoding because there\nis no way to know if it is supported by the audio DSP implementation.\nThe longer term fix will be to have mapMimeToAudioFormat() use the\naudio object type in track metadata to refine the AAC format and the\naudio HAL list supported AAC profiles.\n\nBug: 11697128.\n\nChange-Id: Iaa88ecf3f4ae42ad48c1b42a9b007dd80eb88147\n"
    },
    {
      "commit": "3b7ddf83db2d11c08116a6476c0f11e71bd72ba4",
      "tree": "3e3ef2a9bdadd3c7df3de6ea47921588b90c7a84",
      "parents": [
        "d812fc012298470a1b8120e6d60a24b0b1d48047"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Feb 07 12:05:34 2014 -0800"
      },
      "committer": {
        "name": "Vineeta Srivastava",
        "email": "vsrivastava@google.com",
        "time": "Thu Mar 06 09:22:51 2014 -0800"
      },
      "message": "set AAC MPEG version to MPEG-2\n\nwifi display play spec only allows MPEG-2 AAC.\n\nBug: 12747927\nChange-Id: Ic96d27ce57f5c8e7da55e43b38f629b5c7333817\n"
    },
    {
      "commit": "3c836e7882e88de42e0e600627de433b61e78621",
      "tree": "8ba46424c182f6d66927b3bd90a1ebfe4c30e3ab",
      "parents": [
        "d812fc012298470a1b8120e6d60a24b0b1d48047"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 06 11:16:54 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 18:44:16 2014 -0800"
      },
      "message": "stagefright: fix offloading HE-AAC sampling rate.\n\nFix HE AAC SBR sampling rate reading for explicit\nsignaling.\n\nBug: 11697128.\nChange-Id: Ifec0ab9d48d9293f6774ec1efd9da9445994cb7c\n"
    },
    {
      "commit": "a413dd621966044753a8fa1f57c76d847b6f4bec",
      "tree": "3205bb3eb789cc21cf2b7f5d1344c21d61e86d2b",
      "parents": [
        "6706009fa8294c8cdab1cdab4585f00d42df483e"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Jan 29 08:52:01 2014 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 05 15:10:43 2014 -0800"
      },
      "message": "DO NOT MERGE: Camera: fix focusArea wrong indexing issue\n\nBug: 12304559\nChange-Id: Id28b35fdd9697c1ec3365f617996801965de8bd0\n"
    },
    {
      "commit": "6706009fa8294c8cdab1cdab4585f00d42df483e",
      "tree": "55fcdca48c005adaa2d25cc3e87715345e31e5ce",
      "parents": [
        "81d754306ecd4a587459015da5168270c2a5c167"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Thu Dec 05 11:00:37 2013 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 05 14:31:30 2014 -0800"
      },
      "message": "DO NOT MERGE: camera2: Fix race with stream deletion during disconnect.\n\nBug: 11856804\n\n- Shutdown order in Camera2Client allows a stream to be\n  deleted before the corresponding processing thread has\n  quit.  This can result in updates being called on the\n  processor thread without a valid stream.\n\nChange-Id: Ie4e649771f4321498659211f2a37ed89a6d956c4\n"
    },
    {
      "commit": "81d754306ecd4a587459015da5168270c2a5c167",
      "tree": "40e203771b86181b96aaf6022532e7aadf71e238",
      "parents": [
        "85b3013e06e8fe7802fe6259ecac80261e834332"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Nov 26 15:11:05 2013 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 05 14:29:40 2014 -0800"
      },
      "message": "DO NOT MERGE: camera2/3: Add protection for still capture path\n\nJpeg stream in JpegProcessor could be deleted while process new capture is\nongoing, which unsafe to access a dead consumer endpoint.\nBug: 9316454\nChange-Id: I2950f31ea28d0ba01f08502e2e3ba452bf8bb818\n"
    },
    {
      "commit": "d812fc012298470a1b8120e6d60a24b0b1d48047",
      "tree": "bf3c68ea3a908a0792e766714cd9d54f98ebfb46",
      "parents": [
        "88876fb4eb8365343f2a9ca0e8f53148ca38b845"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Dec 03 09:06:43 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 14:10:41 2014 -0800"
      },
      "message": "Increase kFastTrackMultiplier from 1 to 2\n\nBug: 11967381\nChange-Id: Iedec06280aa745d9df5d661f4916940cede9c191\n"
    },
    {
      "commit": "88876fb4eb8365343f2a9ca0e8f53148ca38b845",
      "tree": "7891ad7f6e93d856f4fc8b5184bf2d8c95a84ead",
      "parents": [
        "145b727b4cce8b1b8d161612f30d12bbdfc8d134"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 27 18:13:39 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 14:07:43 2014 -0800"
      },
      "message": "AudioTrack: fix obtainBuffer timeout calculation\n\nAudioTrack::obtainBuffer() passes a pointer to a timeout\nvariable that has gone out of scope when calling\nClientProxy::obtainBuffer().\n\nSame fix for AudioRecord.\n\nBug: 11968591.\nChange-Id: I5b3d0d86ed2bd8c0412eb2432b1ab519d70efce9\n"
    },
    {
      "commit": "145b727b4cce8b1b8d161612f30d12bbdfc8d134",
      "tree": "96caa4aef35c2d016a89fbf6a8a509fc2aa10906",
      "parents": [
        "281dd4e13309973dbb85bce531f884237e0d8fb0"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Fri Dec 06 11:31:57 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 14:05:27 2014 -0800"
      },
      "message": "libstagefright: Delay release of wakelock in TimedEventQueue\n\nDelay release of wakelock in the TimedEventQueue to\nafter an event has been processed.\nThis ensures AP shutdown does not happen while an event\nis ready but hasn\u0027t been processed yet.\n\nBug: 11976087.\nChange-Id: I9bce83b9ff0f2b4d174a53c95e5b0f135b5ccc70\n"
    },
    {
      "commit": "281dd4e13309973dbb85bce531f884237e0d8fb0",
      "tree": "f58a048f67a81b56c07593f727c92a445b249f4b",
      "parents": [
        "abab1c33caf0982c11713e6d64d60105dcbc8ab7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Dec 20 17:36:01 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 14:03:30 2014 -0800"
      },
      "message": "audioflinger: fix static track end detection\n\nIf a static track is not a fast track,\nprepareTracks_l() must rely on framesReady() to\ndetect end of buffer and remove the track from the active\ntrack list.\nFailing to do so results in the track staying active but\nnot processed by the mixer because in underrun. This leaves the\nmix buffer content uninitialized and causes the effect process\nfunction to accumulate its output onto undefined data.\n\nBug: 12013676.\nChange-Id: I4b0819a9d93141ac3307b8786fc6a451dd585220\n"
    },
    {
      "commit": "abab1c33caf0982c11713e6d64d60105dcbc8ab7",
      "tree": "fed18cdc3a9543b56ffeaf73db55d0d20ee937e9",
      "parents": [
        "d0115d8c4db2f337030dea706bc0a434c4a03ed6"
      ],
      "author": {
        "name": "Gaurav Kumar",
        "email": "gaurav.kumar@broadcom.com",
        "time": "Mon Jan 06 10:57:18 2014 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 13:59:28 2014 -0800"
      },
      "message": "AudioMixer: Remove tracks from enabledTracks after reseting outTemp\n\nIf any track goes through AudioMixer::process__genericNoResampling, and\nits getnextbuffer returns NULL, Then that track is removed by AudioMixer\nfrom enabledTracks.\n\nThus if all tracks getnextbuffer return NULL, Then this function doesn\u0027t\nreset outTemp and last buffer in AudioFlinger\u0027s mMixBuffer will be\nrepeated and noise is observed.\n\nRemove tracks from enabledTracks after reseting outTemp to zero, so that\nprocess__genericNoResampling will reset outTemp and noise won\u0027t appear.\n\nBug: 12450065\n\nChange-Id: I28996d425838728955f01eb1a00acf6e6dc2dea1\nSigned-off-by: Gaurav Kumar \u003cgaurav.kumar@broadcom.com\u003e\nSigned-off-by: Pierre Couillaud \u003cpierre@broadcom.com\u003e\n"
    },
    {
      "commit": "d0115d8c4db2f337030dea706bc0a434c4a03ed6",
      "tree": "239450c60bc4cb8519edeb8985dbc601fe51c652",
      "parents": [
        "7e92abeafb184e8a34213d7149592e95a72601b0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 26 17:16:50 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 12:17:54 2014 -0800"
      },
      "message": "update offloaded audio track sampling rate\n\nAudioPlayer must read the sampling rate from offloaded audio sinks\nwhenever a new time position is computed as the decoder can update\nthe sampling rate on the fly.\n\nBug: 12823955.\n\nChange-Id: I997e5248cfd4017aeceb4e11689324ded2a5bc88\n"
    },
    {
      "commit": "7e92abeafb184e8a34213d7149592e95a72601b0",
      "tree": "09ec6f7fdfdc0b9564660f134bd6a460a4480d85",
      "parents": [
        "85b3013e06e8fe7802fe6259ecac80261e834332"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 22 09:29:56 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Mar 05 12:12:01 2014 -0800"
      },
      "message": "audioflinger: fix offload write buffer offset\n\nFix current audio HAL write buffer offset calculation\nwhich assumes that the frame size is a multiple of 2.\n\u0027\nBug: 12823725.\n\nChange-Id: I0195ed5cfef225a6f114e7dd405a02680bb7254e\n"
    },
    {
      "commit": "85b3013e06e8fe7802fe6259ecac80261e834332",
      "tree": "477c3b2bddfc872ba4f012796f0e3a8d5448f059",
      "parents": [
        "50c3157c5a3e0617be77716beff1ae8801d8a72f"
      ],
      "author": {
        "name": "jpadmana",
        "email": "jayashree.r.padmanaban@intel.com",
        "time": "Thu Nov 14 17:20:52 2013 +0530"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 04 16:10:47 2014 -0800"
      },
      "message": "fix deadlock issues that arise when there are simultaneous\neffect control interface calls to proxy and to\nnon sub-effect wrappers(eg., bundlewrapper) from audioflinger\nAlso, return NO_ERROR when CMD_OFFLOAD succeeds\n\nWhenever there are parallel calls to proxy and non sub-effects wrappers,\nsome of the calls are not completed. This is due to deadlock arsing out\nof Proxy waiting for the subeffect call to return and subeffect waiting\nfor proxy to release lock.\nThe call flow is changed to a cleaner and simple one - Proxy gets the\naeli(effect library info) of subeffects during the EffectGetSubEffects()\ncall. Therby, proxy will manage the sub effects by itself rather than\ngoing through effects factory.\n\nChange-Id: If4b259da5776f151c1e81a78a0239d342046d923\nSigned-off-by: jpadmana \u003cjayashree.r.padmanaban@intel.com\u003e\nBug: 12424044\n"
    },
    {
      "commit": "50c3157c5a3e0617be77716beff1ae8801d8a72f",
      "tree": "7b550f2609351c85fc70658220f14e3a5737288e",
      "parents": [
        "e0cd1051ed9fea0629745c29020516ae62298461"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Tue Dec 03 21:26:02 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 04 16:03:12 2014 -0800"
      },
      "message": "audioflinger: check for condition before waiting\n\nAsyncCallbackThread must check for any condition that\nwas already been satisfied before waiting.\n\nBug: 11824817\nChange-Id: I04683a1f355de4f440106cab47fd916aa39d5e35\n"
    },
    {
      "commit": "e0cd1051ed9fea0629745c29020516ae62298461",
      "tree": "03273a98e8fc21f916bd0de1163913c51171b953",
      "parents": [
        "e010f65e6337267cb15f8894c950a3f64370dd36"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Fri Dec 27 16:09:28 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 04 15:58:25 2014 -0800"
      },
      "message": "audioflinger: update track ready condition\n\nSignal track ready if the track isStopping().\n\nBug: 12423190\nChange-Id: I95e14905df10ebf301e398263478c8ca25d7e2ce\n"
    },
    {
      "commit": "e010f65e6337267cb15f8894c950a3f64370dd36",
      "tree": "e631dc8a6690f18c6b977272404abe1df70cc30c",
      "parents": [
        "a4f24ff9b239300b4bb2098c1413c0a60edc2d7e"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Fri Dec 13 15:40:13 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Mar 04 15:36:20 2014 -0800"
      },
      "message": "audioflinger: Fix for a deadlock in track creation\n\nAudioFlinger enters a deadlock (with itself) on trying to free a\nRecordTrack or Track object that failed initialization. Clear this\nbad object from the caller instead.\n\nBug: 12423233\nChange-Id: I926f2beb922a70f6924e593e2bbf1a5b5df85b16\n"
    },
    {
      "commit": "a4f24ff9b239300b4bb2098c1413c0a60edc2d7e",
      "tree": "1b328f28835885a21e67780129d6764f5b4384a9",
      "parents": [
        "5ea5b020b311a68f513d4a40aca5551abc6a07d8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 27 14:29:13 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 27 14:29:13 2013 -0800"
      },
      "message": "AudioTrack: fix position callback after restore\n\nWhen restoring an AudioTrack, the next position callback point\nshould not be modified and set ahead of current buffer head.\nOtherwise, as frames are dropped, the new position is never reached\nand an application relying on position callbacks to reload the buffer\nwould be stalled.\n\nBug: 11868603.\nChange-Id: I93b2a311642a0c89944b78bcc0482d4ceed98ae4\n"
    },
    {
      "commit": "5ea5b020b311a68f513d4a40aca5551abc6a07d8",
      "tree": "b55283398ed05da2ed07b3ce50e0575483b9a447",
      "parents": [
        "246053380a9f628405a29a055a3f1f4fba13ed5b",
        "4dd0a8a3d66c2853faf2834565b3c5df4f68734d"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 19 01:28:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 19 01:28:28 2013 +0000"
      },
      "message": "Merge \"WA: Queue extra buffers on output port during reconfig if input EOS-ed\" into klp-dev"
    },
    {
      "commit": "246053380a9f628405a29a055a3f1f4fba13ed5b",
      "tree": "842bc2d43976698482d228ae01f3c48c48eac288",
      "parents": [
        "d7e59228caad3867794d847f6bf163c6495e9506",
        "4256c970ad90bc555eccfd585048669bb69bca1c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 15 21:58:45 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 15 21:58:45 2013 +0000"
      },
      "message": "Merge \"Fix metadata access\" into klp-dev"
    },
    {
      "commit": "4256c970ad90bc555eccfd585048669bb69bca1c",
      "tree": "47c357f1d049b7ba2d1421ee81c9134f3ec65328",
      "parents": [
        "4215e6166fca9f87a6e9e848b3dfd4ab0d25c954"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 15 13:49:58 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 15 13:49:58 2013 -0800"
      },
      "message": "Fix metadata access\n\nMetadata string pointers become invalid after setting more metadata,\nso don\u0027t cache them.\nb/11692062\n\nChange-Id: Iaf1afb24cf53f7fa36f49ce759355693494076e5\n"
    },
    {
      "commit": "d7e59228caad3867794d847f6bf163c6495e9506",
      "tree": "f09784ce425a6928c56a932101752b63b21d8f44",
      "parents": [
        "7dae71d606ded1dbc2aa9733c3d98ffac57988f2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 15 12:02:28 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 15 12:11:39 2013 -0800"
      },
      "message": "audioflinger: do not use raw pointer for tracks\n\nCommit 9da3d95 surfaced a problem caused by the use of a raw\npointer to a track in offload thread implementation.\n\nPointers to tracks should always be weak or strong pointers.\n\nBug: 11708529.\nChange-Id: Ic48632532d186c9be8261f73cefdf824b9fbbd2b\n"
    },
    {
      "commit": "7dae71d606ded1dbc2aa9733c3d98ffac57988f2",
      "tree": "44eae87739ae1320383fbeb9dc4e3fbd3dd394d7",
      "parents": [
        "d8a62e25ba6520c2531c7a3d32cc8066e1dab776",
        "22612345ae97648d5b6db43cc1aa30aad77f7bba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 15 15:34:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 15 15:34:12 2013 +0000"
      },
      "message": "Merge \"AwesomePlayer: correct stream type for offload\" into klp-dev"
    },
    {
      "commit": "22612345ae97648d5b6db43cc1aa30aad77f7bba",
      "tree": "73b47a621118d0fa56d27929a9447e90ca27c97d",
      "parents": [
        "4215e6166fca9f87a6e9e848b3dfd4ab0d25c954"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 14 17:28:47 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 14 17:36:42 2013 -0800"
      },
      "message": "AwesomePlayer: correct stream type for offload\n\ncanOffloadStream() function in stagefright utils forces the\nstream type to AUDIO_STREAM_MUSIC when querying the audio policy\nmanager if a particular track is offloadable or not.\nThis causes MP3 ringtones to be offloaded which is not a validated use case.\n\nThe fix consists in using the actual stream type read from the AudioSink.\n\nBug: 11410937.\nChange-Id: I44b8e033a8e785a79cdc291b142f80b5580bdc4d\n"
    },
    {
      "commit": "4dd0a8a3d66c2853faf2834565b3c5df4f68734d",
      "tree": "4cc6ee6dc0c7f72f5ae0facfd84b0342c5f87afe",
      "parents": [
        "4215e6166fca9f87a6e9e848b3dfd4ab0d25c954"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 06 21:04:34 2013 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Nov 14 13:53:56 2013 -0800"
      },
      "message": "WA: Queue extra buffers on output port during reconfig if input EOS-ed\n\nSome codecs may return input buffers before having them processed.\nThis causes a halt if we already signaled an EOS on the input\nport.  For now keep submitting output meta buffers one at a time if\nthe input EOS-ed, but the output not yet.\n\nNormally, we submit an output buffer for each input buffer that is\nwith the component (waiting to be processed).\n\nChange-Id: I8a1251bfb504f40f1e4085a1e220bf9a4d0b05d9\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11433909\n"
    },
    {
      "commit": "d8a62e25ba6520c2531c7a3d32cc8066e1dab776",
      "tree": "dbf4856e2a0f6781f3287fed2534f7e358c6b053",
      "parents": [
        "4215e6166fca9f87a6e9e848b3dfd4ab0d25c954"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Nov 14 10:32:13 2013 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Nov 14 10:32:13 2013 -0800"
      },
      "message": "Camera2: Rework the FPS range vs. FPS single setting detection\n\nGive up on current approach of writing out consistent FPS values\ninto parameters that will be read back by the app.\n\n- Preserve app\u0027s latest set parameters exactly, and compare against\n  them when detecting if a new FPS range or single FPS value has been\n  selected.\n\n- Since get() returns exactly what was set(), it doesn\u0027t matter if the\n  app calls getParameters() before its next setParameters(), in terms\n  of retriggering FPS selection logic. Before, the behavior varied\n  depending on whether the app re-read the parameters.\n\n- As before, if app changes both range and single FPS in a single set\n  call, the range set wins. Otherwise, the value that has changed more\n  recently is used.\n\nBug: 11570973\nChange-Id: I72b5e60c3f60e88d55127dd1bda87e26eaf929c6\n"
    },
    {
      "commit": "4215e6166fca9f87a6e9e848b3dfd4ab0d25c954",
      "tree": "99c2145ba01a8f244329ff6656fe401011410772",
      "parents": [
        "9f357f319205d52c04a2c8b5cc9d518ddcfdea94",
        "9da3d9573a18ffe08365557c706cf52f09118d1c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 14 16:43:19 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 14 16:43:20 2013 +0000"
      },
      "message": "Merge \"audioflinger: fix offload track transition\" into klp-dev"
    },
    {
      "commit": "9f357f319205d52c04a2c8b5cc9d518ddcfdea94",
      "tree": "8e6aaa8a7ef687b4e840e31af72d00308f9e7ccc",
      "parents": [
        "92092b395d59e8943a461d344f617f1dc85375a3",
        "1b9f9b134e732a48198e51f16424f330cbf03143"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 14 16:42:30 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 14 16:42:31 2013 +0000"
      },
      "message": "Merge \"audioflinger: fix offload resume after drain\" into klp-dev"
    },
    {
      "commit": "92092b395d59e8943a461d344f617f1dc85375a3",
      "tree": "342448369839a8b9e50a4fda465a2764459808dc",
      "parents": [
        "069bcc5084c3d8c6f9373a2890d40a0d1a36a94e",
        "f40cde132d14a260f4f7e08ae2bf29d8c55848ae"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 13 23:53:42 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 23:53:42 2013 +0000"
      },
      "message": "Merge \"stagefright: limit default max-input-size for AVC\" into klp-dev"
    },
    {
      "commit": "069bcc5084c3d8c6f9373a2890d40a0d1a36a94e",
      "tree": "ddb9e9609985176e7b826b59583b0f6225c48ea0",
      "parents": [
        "5595f6de606f51ec61fbf40a269b52312507aded",
        "0c3684f5996be3b1226ed229eff39a74ae28a879"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 13 23:52:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 23:52:38 2013 +0000"
      },
      "message": "Merge \"AwesomePlayer: Improve performance on high-fps clips\" into klp-dev"
    },
    {
      "commit": "f40cde132d14a260f4f7e08ae2bf29d8c55848ae",
      "tree": "6ea444dcf701b25937f0017c0f459492c0ac2aa3",
      "parents": [
        "5595f6de606f51ec61fbf40a269b52312507aded"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 13 14:11:41 2013 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Nov 13 14:57:40 2013 -0800"
      },
      "message": "stagefright: limit default max-input-size for AVC\n\nAVC has a compression ratio of at least 2.  Account for this, as\nsome codecs refuse exorbitant max-input-size requests.\n\nChange-Id: Ib68b485879ba33a12a486f2ce18fe100be977699\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11599364\n"
    },
    {
      "commit": "5595f6de606f51ec61fbf40a269b52312507aded",
      "tree": "e76298c16e9a54166661d417012eb996e3e7f73d",
      "parents": [
        "26c8f714361bfb6403a7c457adfb8b55c89a634a",
        "e3067743d6ef2c6c1aac4361b6ed65e6d7bbe3e3"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 13 18:11:54 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 18:11:54 2013 +0000"
      },
      "message": "Merge \"Only initialize sniffers once, don\u0027t hold mutex while sniffing\" into klp-dev"
    },
    {
      "commit": "26c8f714361bfb6403a7c457adfb8b55c89a634a",
      "tree": "e8beee476b7b7d61dcafba12c583aade7ec604e0",
      "parents": [
        "56477eb724972c2fe0441dfa7baaad00b7927add",
        "52668ca838e1869676ff95e7388f93ec1858b1e9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 13 18:06:01 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 18:06:01 2013 +0000"
      },
      "message": "Merge \"Ignore transport stream packets with the \"transport_error_indicator\" bit set\" into klp-dev"
    },
    {
      "commit": "56477eb724972c2fe0441dfa7baaad00b7927add",
      "tree": "a0b05102681021a5774c5b3102e876cb3851e648",
      "parents": [
        "22990fe1ee3531e84dbadb7ff9ffd68d5bbe9060",
        "27ae268af29b25d85f83aa34e92ac8b7f6c87c6f"
      ],
      "author": {
        "name": "Adam Hampson",
        "email": "ahampson@google.com",
        "time": "Wed Nov 13 09:25:33 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 13 09:25:33 2013 -0800"
      },
      "message": "am 27ae268a: am 00cb884f: Merge \"StageFright: Removes hacks for Nvidia MPEG2 decoder\" into jb-mr2-dev\n\n* commit \u002727ae268af29b25d85f83aa34e92ac8b7f6c87c6f\u0027:\n  StageFright: Removes hacks for Nvidia MPEG2 decoder\n"
    },
    {
      "commit": "27ae268af29b25d85f83aa34e92ac8b7f6c87c6f",
      "tree": "bd8c35e884f5cfd73ab77cb04ca421e5fd1b2432",
      "parents": [
        "29d060155e2c3e838fcadf303fcf2d1ecfb78710",
        "00cb884fc870aba4052c8d187a45e4aec50a6b43"
      ],
      "author": {
        "name": "Adam Hampson",
        "email": "ahampson@google.com",
        "time": "Wed Nov 13 09:21:33 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 13 09:21:33 2013 -0800"
      },
      "message": "am 00cb884f: Merge \"StageFright: Removes hacks for Nvidia MPEG2 decoder\" into jb-mr2-dev\n\n* commit \u002700cb884fc870aba4052c8d187a45e4aec50a6b43\u0027:\n  StageFright: Removes hacks for Nvidia MPEG2 decoder\n"
    },
    {
      "commit": "00cb884fc870aba4052c8d187a45e4aec50a6b43",
      "tree": "cfd33b99ae5fe7f53322e02d5e545d7266130600",
      "parents": [
        "6e3ee310d90e30c928c9e29a4a07de4bcbf2855e",
        "34242ac93467fc364bec435bf961283cd3d6ba0b"
      ],
      "author": {
        "name": "Adam Hampson",
        "email": "ahampson@google.com",
        "time": "Wed Nov 13 17:14:31 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 13 17:14:31 2013 +0000"
      },
      "message": "Merge \"StageFright: Removes hacks for Nvidia MPEG2 decoder\" into jb-mr2-dev"
    },
    {
      "commit": "9da3d9573a18ffe08365557c706cf52f09118d1c",
      "tree": "c30511f753f1b49d5519ba5249316b12f33bb29a",
      "parents": [
        "1b9f9b134e732a48198e51f16424f330cbf03143"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 12 19:25:43 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 12 19:32:36 2013 -0800"
      },
      "message": "audioflinger: fix offload track transition\n\nMake sure that when transitioning from one active\noffloaded track to the next we flush DSP content\nif both tracks are not on the same audio session.\nThis happens when switching between two applications\nplaying the same type of content (e.g MP3, stereo, 44.1).\nIn this case, we reuse the same output thread because the track\nformats are compatible.\n\nBug: 11247103.\nChange-Id: I2b9031591149adeb70766da5e0d21ff2933a37e8\n"
    },
    {
      "commit": "1b9f9b134e732a48198e51f16424f330cbf03143",
      "tree": "b51c0fd76cd949c420404ce221eae0ce9fad597e",
      "parents": [
        "22990fe1ee3531e84dbadb7ff9ffd68d5bbe9060"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 12 19:10:17 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 12 19:10:17 2013 -0800"
      },
      "message": "audioflinger: fix offload resume after drain\n\nWhen pausing and resuming during the drain,\nthe drain sequence number shuold not be modified\notherwise the drain callback will be ignored.\nThis causes failure to notify end of stream to audio\nplayer and transition to next song.\n\nBug: 11247103.\nChange-Id: I2a35c5cc3fd6aa667cdd257f9e9cc8715cef5159\n"
    },
    {
      "commit": "0c3684f5996be3b1226ed229eff39a74ae28a879",
      "tree": "a262f7638c7bed641fc956fde7a859866ef145c5",
      "parents": [
        "22990fe1ee3531e84dbadb7ff9ffd68d5bbe9060"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 23 15:19:47 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Nov 12 17:40:38 2013 -0800"
      },
      "message": "AwesomePlayer: Improve performance on high-fps clips\n\n- Immediately retry rendering next frame after frame skip.\n- Schedule next videoEvent based on the timestamp of the\n  next frame.\n\nChange-Id: Ia106382c4c225321b682c1f7c2d126d7eab7d56d\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11159147\n"
    },
    {
      "commit": "52668ca838e1869676ff95e7388f93ec1858b1e9",
      "tree": "a1df92d9d5a0497393aed870ab51e4b423e6b0eb",
      "parents": [
        "e100b813c4d833b48b48b74100ad0b9a82c46954"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 11 13:35:39 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 12 11:28:41 2013 -0800"
      },
      "message": "Ignore transport stream packets with the \"transport_error_indicator\" bit set\n\nwhich indicates that they contain at least one bitstream error that was\nunrecoverable.\n\nChange-Id: I10665fd190194fdd2568175fe00b6063d3fc10a5\nrelated-to-bug: 11537029\n"
    },
    {
      "commit": "22990fe1ee3531e84dbadb7ff9ffd68d5bbe9060",
      "tree": "859fae228d07884d2e2d2b7a6f2338848c46130b",
      "parents": [
        "184dfe4ea5e2ba33951bed2b1366007aee0ce3da",
        "892e1b9ab055075ba9036fb7dd6404e9e0f2677a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 12 18:37:46 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 12 18:37:46 2013 +0000"
      },
      "message": "Merge \"Back to the old way of making sure that no more buffers are submitted\" into klp-dev"
    },
    {
      "commit": "184dfe4ea5e2ba33951bed2b1366007aee0ce3da",
      "tree": "ada678fb9d95fed7b4b25aead2615eaa4f003495",
      "parents": [
        "caee8747b7df3b1119426594d4ba1c0e300ff6db"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Nov 07 15:13:16 2013 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Nov 12 10:24:42 2013 -0800"
      },
      "message": "Camera API2: Add support for partial result quirk\n\n- Camera3Device: Include requestId in partial 3A results\n- FrameProcessorBase: Add support for partial result listeners\n- CameraDeviceClient: Listen and forward partial results to client\n\nBug: 11115603\nChange-Id: If1cc6bbc32932742ac142c058688761ebf6a8024\n"
    },
    {
      "commit": "caee8747b7df3b1119426594d4ba1c0e300ff6db",
      "tree": "72ea1e3c92a17f003907943f1c8929ee136f0c79",
      "parents": [
        "e100b813c4d833b48b48b74100ad0b9a82c46954",
        "89b31a3f670d8bec87bed50aaad9bcd8edec66b6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 12 00:21:51 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 12 00:21:51 2013 +0000"
      },
      "message": "Merge \"configure bitrate and bitrate mode at encoder initialization for VP8/9\" into klp-dev"
    },
    {
      "commit": "e3067743d6ef2c6c1aac4361b6ed65e6d7bbe3e3",
      "tree": "4ea5d1b5c2574b9e5f9f0a50452d1419f39bb1d6",
      "parents": [
        "e100b813c4d833b48b48b74100ad0b9a82c46954"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 06 10:50:17 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 11 23:43:22 2013 +0000"
      },
      "message": "Only initialize sniffers once, don\u0027t hold mutex while sniffing\n\nb/11482896\n\nChange-Id: Ie036554b4c9e7e8863cb07901d414ea457f1b2f1\n(cherry picked from commit 377fce69297a0e5b7c3b266a7602b17146785635)"
    },
    {
      "commit": "e100b813c4d833b48b48b74100ad0b9a82c46954",
      "tree": "9a4688c5998afa5dfd86cb04e01e8b47c3fd702d",
      "parents": [
        "a72911563b0e5b21b196d40249b53975bf8d8f85",
        "9c7f845780d62ea09469a8dac7117cc01adfea5c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Nov 11 16:16:46 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 11 16:16:47 2013 +0000"
      },
      "message": "Merge \"StageFrightRecorder: do not use meta-data mode for software encoders\" into klp-dev"
    },
    {
      "commit": "a72911563b0e5b21b196d40249b53975bf8d8f85",
      "tree": "acf61c41938974ab06b50fa214101b847cf379a5",
      "parents": [
        "51ac2d6451b8614aaad83e5bd29ccb7a3fc4651c",
        "e8332ee38cc9778aa7898bbd75858561ed1e0ba3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 11 00:21:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 11 00:21:16 2013 +0000"
      },
      "message": "Merge \"TimedEventQueue: improve wakelock management\" into klp-dev"
    },
    {
      "commit": "892e1b9ab055075ba9036fb7dd6404e9e0f2677a",
      "tree": "b5ce9c2ca0ac05475a8384fcb85ea9f4af76c54b",
      "parents": [
        "51ac2d6451b8614aaad83e5bd29ccb7a3fc4651c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 08 10:57:34 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 08 10:57:34 2013 -0800"
      },
      "message": "Back to the old way of making sure that no more buffers are submitted\n\nto the component while in executing-\u003eidle state.\n\nChange-Id: Ia207f0a112025ed0e2c4d62f404afbbfa694cbab\nrelated-to-bug: 11557463, 11573543\n"
    },
    {
      "commit": "51ac2d6451b8614aaad83e5bd29ccb7a3fc4651c",
      "tree": "20981323724134cbaaa5031d3745b347e7e47f35",
      "parents": [
        "5572b3afe3e63110ef9e6d228112ca7cbfac866b",
        "ad3b7e8d40bf1c97347f1538d30bba78ca371f67"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 08 16:19:35 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 08 16:19:37 2013 +0000"
      },
      "message": "Merge \"Properly handle executing-\u003eidle in GraphicBufferSource\" into klp-dev"
    },
    {
      "commit": "e8332ee38cc9778aa7898bbd75858561ed1e0ba3",
      "tree": "07dce7442357a537076cc8422d64b28fdd70ec46",
      "parents": [
        "fd6ecdd39bd83ea020f78b425e96310380d66c35"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 04 16:08:15 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Nov 07 16:42:06 2013 -0800"
      },
      "message": "TimedEventQueue: improve wakelock management\n\nDo not acquire a wakelock unless the event is delayed by more\nthan a given time. This prevents from acquiring/releasing\nwakelocks too often which has adverse effects on performance.\n\nBug: 11509471.\nChange-Id: Id06803b393b40c4db5095a6e7ec02339fa581a38\n"
    },
    {
      "commit": "5572b3afe3e63110ef9e6d228112ca7cbfac866b",
      "tree": "71f94c29c1f0bba1905477a23611561e482d3639",
      "parents": [
        "fd6ecdd39bd83ea020f78b425e96310380d66c35"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Nov 07 14:39:03 2013 -0800"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Nov 07 14:39:03 2013 -0800"
      },
      "message": "Replace assert with error message\n\nThe failure happens when vendor code sends EMPTY_BUFFER_DONE\ntwice on the same buffer.  The second time through, we see a slot\nthat has already been emptied, and get very confused.\n\nThis should be handled with an error, not an assertion, so we now\nlog a stern complaint and carry on.\n\nBug 11557463\n\nChange-Id: I76e53ff08924bca81afb6980df8e59a6012ff8fe\n"
    },
    {
      "commit": "ad3b7e8d40bf1c97347f1538d30bba78ca371f67",
      "tree": "4f3b8ec0d04db8a0c8ab26bb8c0ee7addaf3930f",
      "parents": [
        "f8a1169d98a09d1473f289c363353d08301576f6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 07 11:13:27 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 07 13:50:18 2013 -0800"
      },
      "message": "Properly handle executing-\u003eidle in GraphicBufferSource\n\nACodec has initiated the transition from exectuing-\u003eidle and is waiting\nfor the component to return all buffers so they can be freed.\nIt\u0027s counter productive and with some vendors harmful to submit additional\nbuffers to the component from this point on.\n\nChange-Id: I332be254a1faf94902c77b5792a373ab447e44d3\nrelated-to-bug: 11573543\n"
    },
    {
      "commit": "fd6ecdd39bd83ea020f78b425e96310380d66c35",
      "tree": "74b1aaa8fdcbf75681f72fb93b96db4ab48fa34c",
      "parents": [
        "48b6cd98b23b2cf9dee88f075f7575ecb5aaf545"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Oct 11 09:51:09 2013 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Nov 06 18:22:22 2013 -0800"
      },
      "message": "Camera HAL3/API1: Add support for the partial result quirk.\n\n- Camera2Client:\n - Detect partial result quirk\n- Camera3Device:\n - Accumulate all partial results together\n - Fire off 3A-only result once all 3A states are available\n- FrameProcessorBase:\n - Filter out partials, don\u0027t send to listeners\n- FrameProcessor:\n - Skip face detect on partials\n - Make sure to only handle a 3A update for a given frame once\n - Trigger AF notifications when AF mode or trigger changes, to\n   properly detect all AF transitions.\n\nBug: 11115603\nChange-Id: Iea8aa73c568701562a46071f7ea100624251d10b\n"
    },
    {
      "commit": "48b6cd98b23b2cf9dee88f075f7575ecb5aaf545",
      "tree": "9dcac8d6cbf72c9cd29a6d64d9b66295c8c67c3c",
      "parents": [
        "f8a1169d98a09d1473f289c363353d08301576f6",
        "a23f17ac334ff20a11ee63dd177cb1080e44c483"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 06 17:29:58 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 06 17:29:58 2013 +0000"
      },
      "message": "Merge \"audioflinger: fix direct output underrun\" into klp-dev"
    },
    {
      "commit": "a23f17ac334ff20a11ee63dd177cb1080e44c483",
      "tree": "e15dc095de74afc97fc509aa855cedf010df6c1e",
      "parents": [
        "5c7ffaed6f04b844c2e4e2024bfb0203ac2233dd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 05 18:22:08 2013 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 05 18:22:08 2013 -0800"
      },
      "message": "audioflinger: fix direct output underrun\n\nUnderruns on tracks handled by a direct or offloaded\nthreads were not properly reported to the applications\ncausing a failure to automatically recover.\n\nBug: 11535001.\nChange-Id: I7a8696b4d646f78b16710addfe7c108d0dd0038d\n"
    },
    {
      "commit": "89b31a3f670d8bec87bed50aaad9bcd8edec66b6",
      "tree": "281e16d135a6c47364ca3ce8d4a4ed66e89cee9f",
      "parents": [
        "3ff5792adfdbf67662a5f8064315a55690d53944"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 05 12:36:17 2013 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 05 12:36:17 2013 -0800"
      },
      "message": "configure bitrate and bitrate mode at encoder initialization for VP8/9\n\nChange-Id: I0389264db4102cabb0c6fcb4ca223d85cc9e86fb\nrelated-to-bug: 11536167\n"
    },
    {
      "commit": "f8a1169d98a09d1473f289c363353d08301576f6",
      "tree": "cf676491a9c9a6e5201eba1bd77f2335476629d9",
      "parents": [
        "065789f24890b0a9f3614dc175e6f7664af1f2ce",
        "3e518fd5d679abb83b654e473ea0fa5f7f16235f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 04 17:42:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 04 17:42:12 2013 +0000"
      },
      "message": "Merge \"Notify current video size if available\" into klp-dev"
    },
    {
      "commit": "065789f24890b0a9f3614dc175e6f7664af1f2ce",
      "tree": "62a51e41008b374cdbc553153c5ee7c211f57138",
      "parents": [
        "5c7ffaed6f04b844c2e4e2024bfb0203ac2233dd",
        "7fa015217e618265ff5a844cf6961ecc316c81a4"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Nov 01 23:17:47 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 01 23:17:47 2013 +0000"
      },
      "message": "Merge \"Restore NuPlayer error and EOS handling\" into klp-dev"
    },
    {
      "commit": "3e518fd5d679abb83b654e473ea0fa5f7f16235f",
      "tree": "96ca7ab7e49d6f1535bc459bf89d8a1040e5a219",
      "parents": [
        "9cae217050aa1347d4ac5053c305754879e3f97f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 01 10:33:18 2013 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 01 10:33:18 2013 -0700"
      },
      "message": "Notify current video size if available\n\nb/11248101\n\nChange-Id: I0fa3b5592efcf400c86692002267da6825e331ad\n"
    },
    {
      "commit": "5c7ffaed6f04b844c2e4e2024bfb0203ac2233dd",
      "tree": "71dac4a8045e2c0eca9dfbd341936f731ffa0a9b",
      "parents": [
        "3ff5792adfdbf67662a5f8064315a55690d53944",
        "2c3740f01acca69c3e0bcc5e01bb0edc51b6777f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 31 22:29:50 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 31 22:29:50 2013 +0000"
      },
      "message": "Merge \"AudioFlinger: fix duplicating thread standby.\" into klp-dev"
    },
    {
      "commit": "2c3740f01acca69c3e0bcc5e01bb0edc51b6777f",
      "tree": "fafcc00b076ae05c67b4cd0d3cd7de406b418c09",
      "parents": [
        "fd4779740ec3e9e865d5514464df26d015354388"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 30 16:57:06 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 30 16:57:06 2013 -0700"
      },
      "message": "AudioFlinger: fix duplicating thread standby.\n\nCommit fd47797 fixing issue 11247103 introduced a regression\nwhere the duplicating thread does not exit standby state as\nexpected. This in turn prevents the tracks sending audio to\nother threads to complete their activity cycle normally.\n\nThe fix conists in clearing mStandby state also in the specialized\nthreadLoop_write() method of DuplicatingThread subclass.\n\nBug: 11451415.\nChange-Id: Ie8a92c819a56a2834ea25fa70a8b7b2125721775\n"
    },
    {
      "commit": "3ff5792adfdbf67662a5f8064315a55690d53944",
      "tree": "ed42f922d8280b2464a0b5bfdd1b167220f32f32",
      "parents": [
        "c76b9f52cf4e39f6943c53f5b3657dfee65857ac",
        "ff3e31d2b100d8efd969b358b18e4405c49dd10d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Oct 30 21:09:49 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 30 21:09:49 2013 +0000"
      },
      "message": "Merge \"camera: Collect stack traces when bad things happen, print with dumpsys\" into klp-dev"
    },
    {
      "commit": "7fa015217e618265ff5a844cf6961ecc316c81a4",
      "tree": "0891bfc23870221cdb9705e79cbfcef07c79de3d",
      "parents": [
        "c76b9f52cf4e39f6943c53f5b3657dfee65857ac"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Oct 28 14:59:21 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 30 13:43:51 2013 -0700"
      },
      "message": "Restore NuPlayer error and EOS handling\n\nThis was erroneously removed by commit a73c954\n\nChange-Id: I4742339139e770f0181c99d427875897fd60b68e\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11413439\n"
    },
    {
      "commit": "c76b9f52cf4e39f6943c53f5b3657dfee65857ac",
      "tree": "6c90ac6f2aa71224889908c3517c300058ba9ccb",
      "parents": [
        "1c594b637df26499ce1dae2db34f2b3290efd838",
        "f4909f67d8be28e3b0a5e9429479b102773b2ea8"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 30 20:23:17 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 30 20:23:18 2013 +0000"
      },
      "message": "Merge \"AwesomePlayer: ensure STARTED message works after reset\" into klp-dev"
    },
    {
      "commit": "9c7f845780d62ea09469a8dac7117cc01adfea5c",
      "tree": "1c69c580de33cf8dc15a5060447e4d9109181fbe",
      "parents": [
        "1c594b637df26499ce1dae2db34f2b3290efd838"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 30 10:02:12 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Oct 30 11:29:29 2013 -0700"
      },
      "message": "StageFrightRecorder: do not use meta-data mode for software encoders\n\nCamera HAL v1 uses vendor-specific camera-source meta-data mode, but\nsoftware encoders use generic gralloc-source mode, so they are not\ncompatible.\n\nChange-Id: I0d1bab8eada26dcb70c97b1eec83f06d1f331239\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11446505\n"
    },
    {
      "commit": "1c594b637df26499ce1dae2db34f2b3290efd838",
      "tree": "0d231e939a18d3f28f1e19658a7b7ed2e61ed1fb",
      "parents": [
        "fd4779740ec3e9e865d5514464df26d015354388",
        "d72b7c0180ee83fc3754629ed68fc5887a125c4c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 30 01:13:52 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 30 01:13:52 2013 +0000"
      },
      "message": "Merge \"audioflinger: enable effects after registration if needed\" into klp-dev"
    },
    {
      "commit": "ff3e31d2b100d8efd969b358b18e4405c49dd10d",
      "tree": "6d3bcd6772305f06fcf85c498365c8c198a7fbc9",
      "parents": [
        "95c03858e2ab4fb693a2bfe47b3caa806e43c044"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Oct 23 16:40:06 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Oct 29 11:49:05 2013 -0700"
      },
      "message": "camera: Collect stack traces when bad things happen, print with dumpsys\n\nBug: 11324229\nChange-Id: Ic920e170a8f5a389fc139bbf5416c0e3186c7fb6\n"
    },
    {
      "commit": "f4909f67d8be28e3b0a5e9429479b102773b2ea8",
      "tree": "8aefc8fc0eaea4f17e82156d63dd932d62cfd204",
      "parents": [
        "f3a6234ba21640cf2bc893dbcb98fb9b0fa47481"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Oct 28 15:01:15 2013 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Oct 28 16:53:13 2013 -0700"
      },
      "message": "AwesomePlayer: ensure STARTED message works after reset\n\nChange-Id: I06217c07c0b68476cb296fd6151f6a0d8d4e02d0\nSigned-off-by: Lajos Molnar \u003clajos@google.com\u003e\nBug: 11412881\n"
    },
    {
      "commit": "fd4779740ec3e9e865d5514464df26d015354388",
      "tree": "11e6523dd9d2d04b6e0d3ea742968c6988646e2c",
      "parents": [
        "9cae217050aa1347d4ac5053c305754879e3f97f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 25 18:10:40 2013 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 28 14:17:22 2013 -0700"
      },
      "message": "AudioFlinger: more fixes for offload audio lost\n\nmStandby being false was not a reliable indication that\nsomething had been written to audio HAL.\n\nConsidering the last track in mActiveTracks vector as the\nlatest activated track was wrong as this is a SortedVector.\n\nBug: 11247103.\nChange-Id: I397d011c5afcdd779def3fe25aaae7669a472cfc\n"
    },
    {
      "commit": "9cae217050aa1347d4ac5053c305754879e3f97f",
      "tree": "dff82f277cba8f34af39eaeeb00adec01bbda26c",
      "parents": [
        "be567be3f92026f5964c1c9ecce00e30bb7df412"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jan 14 14:12:05 2013 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 25 14:06:03 2013 -0700"
      },
      "message": "Assign blame for playback wakelocks.\n\nSet a work source for the playback wakelock, so that playback is\ncounted against the requesting app instead of the media server.\n\nCherrypicked from master.\n\nb/9464621\n\nChange-Id: I7329f88a288a95a582a78005a1c3d16a5a611e31\n"
    }
  ],
  "next": "be567be3f92026f5964c1c9ecce00e30bb7df412"
}
