)]}'
{
  "log": [
    {
      "commit": "5d6fb5e41f57a71bd5b2902dc8334825de7bdcc0",
      "tree": "78afc8a61fda371dbc9c9bbb53156283ca0143ba",
      "parents": [
        "cae1c0fa3f4d5e2387f05a6055bf356914851c4b"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 24 11:30:21 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 24 17:21:46 2014 -0700"
      },
      "message": "mediaplayer: handle bad input in VideoFrameScheduler\n\nBug: 17626098\nChange-Id: I2ae22ed43b35ff532a47818b118dd328ce2abf63\n"
    },
    {
      "commit": "4923cee4fb3b29538d8f46bceeea7d5128242a71",
      "tree": "31fb36a31d4e20ed63d74664b0db534d24ae6e06",
      "parents": [
        "80ec934ae7d4e3a78af87554fdb77a58f6386ba0"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 24 14:25:19 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 24 14:32:18 2014 -0700"
      },
      "message": "NuPlayerDecoder: release MediaBuffers when decoder is deleted.\n\nBug: 17454455\nChange-Id: Ic984c74826f87f5f3c27756a7e7d52295a529bed\n"
    },
    {
      "commit": "fc55783d0886d5dbaa234f85a4313796d9ef1df4",
      "tree": "49fde06b4444b02eeda2b5a740babcb6a8b6f676",
      "parents": [
        "a4b0894425c0e2a2ebd54b002b6bafa5f1ce0445",
        "e427abf1ea252ff305fc33aacdd2e83cf34891b5"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 24 01:39:53 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 24 01:39:53 2014 +0000"
      },
      "message": "Merge \"NuPlayer will notify SeekComplete only when requested so.\" into lmp-dev"
    },
    {
      "commit": "7e9f7f7a9fb6c5d93fc9163e32936f3ea284caad",
      "tree": "8edc441f5b1370c3e4825eb439c83d8cac802c3b",
      "parents": [
        "3cdd6b8c82f2c71054bdd767782fc78f501f8e62"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 23 10:55:35 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 23 13:53:58 2014 -0700"
      },
      "message": "NuPlayer: change assert to conditional check.\n\nBug: 17491050\nChange-Id: I657866c5342c227d57617eb89955897171eb5976\n"
    },
    {
      "commit": "3cdd6b8c82f2c71054bdd767782fc78f501f8e62",
      "tree": "0453cbc22210497092b25289a72d1a67856198de",
      "parents": [
        "ad5447f659043ce3e4b3719c6c18a254bee1dde2",
        "f5b1db11734358d979a23a1ac4903872186ef60b"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Tue Sep 23 18:31:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 23 18:31:27 2014 +0000"
      },
      "message": "Merge \"NuPlayer: add pause timeout event for offload audio.\" into lmp-dev"
    },
    {
      "commit": "e427abf1ea252ff305fc33aacdd2e83cf34891b5",
      "tree": "4d873112e5203b4c84b308063d34c9b064bc15f9",
      "parents": [
        "0079b331227fc1555d7c5305f33917a570d44890"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Sep 22 15:21:11 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 23 10:05:49 2014 -0700"
      },
      "message": "NuPlayer will notify SeekComplete only when requested so.\n\nBug: 17596535\nChange-Id: I6b744fdcf80f11d521d26c7c8b45f7de70aa0dc3\n"
    },
    {
      "commit": "f5b1db11734358d979a23a1ac4903872186ef60b",
      "tree": "f9ac3f6e20dd86446f591c5c9e196b0f6efeaf97",
      "parents": [
        "4409ba46fab830d81860edba056c3dc6e1c7c003"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Tue Sep 09 10:11:08 2014 -0700"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Mon Sep 22 10:58:01 2014 -0700"
      },
      "message": "NuPlayer: add pause timeout event for offload audio.\n\nBug: 17375249\nChange-Id: Ie59c6b372e9ad2aace3d1e27b9896d79de35d722\n"
    },
    {
      "commit": "57568df014f8629ebc5ca8bce9da796dd187401b",
      "tree": "7a0c23673e56a1f0179a7a3ea0df08ac9aa3692b",
      "parents": [
        "0079b331227fc1555d7c5305f33917a570d44890"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Sep 22 10:16:29 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Sep 22 10:16:29 2014 -0700"
      },
      "message": "NuPlayer: use generation to filter out stale message from renderer.\n\nClean up generation number for decoders.\n\nBug: 17507846\nChange-Id: Ibd2cfe11f89f404882d66c384b5198dc641f5e71\n"
    },
    {
      "commit": "0079b331227fc1555d7c5305f33917a570d44890",
      "tree": "9426b791e1d7e14ee3cba19ab38f09d7da7ade83",
      "parents": [
        "39e07162be0680fd30bec7be50628883aa912ffd",
        "96e92b58b7e9647b4c7c2f54b62a1b357ab06b66"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Sep 22 16:03:02 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 22 16:03:03 2014 +0000"
      },
      "message": "Merge \"MediaBuffer: ABuffer will release MediaBuffer when it\u0027s destructed.\" into lmp-dev"
    },
    {
      "commit": "96e92b58b7e9647b4c7c2f54b62a1b357ab06b66",
      "tree": "35b83c45383cf9753b2f48eea71e66d5331165dc",
      "parents": [
        "086c1e3f41a92aa0025a1da1db5dabbfdffaf129"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Sep 18 17:36:20 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Sep 19 19:20:58 2014 -0700"
      },
      "message": "MediaBuffer: ABuffer will release MediaBuffer when it\u0027s destructed.\n\nBug: 17454455\nChange-Id: Ia423bcc2e1fa39137f114eac44912ed15357bb99\n"
    },
    {
      "commit": "c851b5de495169d7e9528644c2592746021bd968",
      "tree": "4025fe9afe8b6bcf4da98589a398c465598bcca2",
      "parents": [
        "3bde6b1c3387c51479f39846533ead246a920990"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Sep 18 14:14:29 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 19 18:01:40 2014 -0700"
      },
      "message": "mediaplayer: smooth out videoplayback based on framerate\n\nBug: 14659809\nChange-Id: I73f6c7224c51ac06487475f9ed395379111ad71f\n"
    },
    {
      "commit": "3bde6b1c3387c51479f39846533ead246a920990",
      "tree": "61f3bd152cb289dea3528c075ab2d47a7d45b565",
      "parents": [
        "dc43dfa1294470a4413c37e863ef3b621da8681f",
        "705d3290102875409e334e2a80e64221714aa37c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Sat Sep 20 00:41:15 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 20 00:41:15 2014 +0000"
      },
      "message": "Merge \"Make prepare properly report failure again\" into lmp-dev"
    },
    {
      "commit": "705d3290102875409e334e2a80e64221714aa37c",
      "tree": "eedacd1d38c7ee5d162967765d6f4772fb8edde8",
      "parents": [
        "4409ba46fab830d81860edba056c3dc6e1c7c003"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 19 15:14:37 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 19 22:55:08 2014 +0000"
      },
      "message": "Make prepare properly report failure again\n\nBug: 17583084\nBug: 17548451\nChange-Id: I759d28eaafb520c206d54740c2c0a857b534d23c\n"
    },
    {
      "commit": "dc43dfa1294470a4413c37e863ef3b621da8681f",
      "tree": "2d94c188c544dcf3ba67b58cef3e8b9b47f8e122",
      "parents": [
        "4409ba46fab830d81860edba056c3dc6e1c7c003"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed May 07 15:33:04 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 19 14:54:51 2014 -0700"
      },
      "message": "mediaplayer: schedule video frames in VSYNC valleys\n\nBug: 14659809\nChange-Id: Ic340ac61ad4778b493625c79c2cb4f747ff54ede\n"
    },
    {
      "commit": "c0651e858ae4ef4c9a2df2e4506b4093b6666ae9",
      "tree": "d40713191961b4d32299ac3ef68747969659ac01",
      "parents": [
        "6aadfce1d8c972faad7f4437dcd88d8cd3557611",
        "33b51b07ca90cc3b48e86598f7e82f93e440fe02"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Sep 18 22:37:13 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 18 22:37:13 2014 +0000"
      },
      "message": "Merge \"mediaplayer: fix buffer aggregation when video has offloaded audio\" into lmp-dev"
    },
    {
      "commit": "21a1d72bb42710d149532653490154f89330b9dd",
      "tree": "864afd41e0bb8872933d42aefacfe995864e2065",
      "parents": [
        "832666776a681ec3a30ee8fc7d5da9039646147d",
        "09e0c3646362d29c78bc26c8b23b7a753c412e6c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 17 23:31:37 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 17 23:31:38 2014 +0000"
      },
      "message": "Merge \"NuPlayer: update timestamp handling\" into lmp-dev"
    },
    {
      "commit": "832666776a681ec3a30ee8fc7d5da9039646147d",
      "tree": "5db9531f473caf0e8f8cce740a997f1ad282edb2",
      "parents": [
        "a87be62b083fb969aeece99d6c29735ef9a5a373",
        "06ad1528e6dd4c866c085d3cad9235d2752eb3ed"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 17 23:15:59 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 17 23:16:00 2014 +0000"
      },
      "message": "Merge \"NuPlayer: use getTimestamp instead of getPosition\" into lmp-dev"
    },
    {
      "commit": "09e0c3646362d29c78bc26c8b23b7a753c412e6c",
      "tree": "5bb2d57554838f54d1deccf985135cc46acd9439",
      "parents": [
        "06ad1528e6dd4c866c085d3cad9235d2752eb3ed"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 12 15:12:16 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 17 16:04:08 2014 -0700"
      },
      "message": "NuPlayer: update timestamp handling\n\nUse getTimestamp WOULD_BLOCK error return code to clean up\ninitial playback/start timestamp handling.\n\nAccount for pause time and seeks.\nOnly send notification from driver when the media time changes.\n\nBug: 14659809\nBug: 17428188\nChange-Id: I051bb5e2dd4fd5990474f8fb635615ad8d18eb2c\n"
    },
    {
      "commit": "33b51b07ca90cc3b48e86598f7e82f93e440fe02",
      "tree": "6b9f1bdbb55e0da38d6bb578dad67f14404315f2",
      "parents": [
        "cf7863ea8d9137aadf6bfd9756eb07ebd1c81b5c"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Sep 17 16:03:47 2014 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Sep 17 16:03:47 2014 -0700"
      },
      "message": "mediaplayer: fix buffer aggregation when video has offloaded audio\n\nChange conditional test so we don\u0027t accidentally do buffer aggregation\non video buffers.\n\nBug: 17553847\nChange-Id: I746452b2e62db664315732a38f982ce7faf26212\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "06ad1528e6dd4c866c085d3cad9235d2752eb3ed",
      "tree": "4b8411a9c418927b3916d5b5381cc8738a3ccb31",
      "parents": [
        "919b93473ebbba036f3934e92039f038c7f91a54"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Aug 28 07:27:44 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 17 23:01:24 2014 +0000"
      },
      "message": "NuPlayer: use getTimestamp instead of getPosition\n\nBug: 14659809\nBug: 16985287\nChange-Id: I59ec72fbd40a9b8d28fe548ddad082c03000c045"
    },
    {
      "commit": "866e028bbe30b1ba0b9d8903c88bbe8525b81a37",
      "tree": "9e66da521a9ad1b051ea97bf6c6f4f5969bb007b",
      "parents": [
        "999b888f07f4549b1f8490d7153e3b1704684ca2",
        "f0b72b509ab1147a2a0925aced970dd68fd7fa4f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 17 22:08:31 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 17 22:08:31 2014 +0000"
      },
      "message": "Merge \"Add support for ANDROID_LOOP to NuPlayer\" into lmp-dev"
    },
    {
      "commit": "f0b72b509ab1147a2a0925aced970dd68fd7fa4f",
      "tree": "0eae72c913500fc5c4be4e0a32bb32b39f44aebc",
      "parents": [
        "086c1e3f41a92aa0025a1da1db5dabbfdffaf129"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 16 15:43:44 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 17 08:17:46 2014 -0700"
      },
      "message": "Add support for ANDROID_LOOP to NuPlayer\n\nBug: 17518139\nChange-Id: I9355ddd4c998d967013dd8bd32d670a9a83dea31\n"
    },
    {
      "commit": "317a49a4c4bf02944d1e01941c6b9f86179044bb",
      "tree": "b78422e4d56536b2d8c6d24f4f947b4789e92b0c",
      "parents": [
        "90869c2bef1bc47394a9f603ccebb62b2592fd2b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 16 21:32:33 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Sep 16 22:41:39 2014 -0700"
      },
      "message": "mediaplayer: reset flags when pre-reading multiple buffers\n\nBug: 17521470\nChange-Id: I15ee9b1d3dd4ad29f4961a642f7fadafd9fe5b24\n"
    },
    {
      "commit": "919b93473ebbba036f3934e92039f038c7f91a54",
      "tree": "64ef07ea42adcb89bf851fb6ad0bb1f7fb0a0413",
      "parents": [
        "fbbeeeb87c55c3eca94a709f9f8986190f6472a1",
        "6e9f6b498d758848fd934f8217c386dd74ef3833"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Sep 17 02:01:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 17 02:01:57 2014 +0000"
      },
      "message": "Merge \"NuPlayerDriver: restart after eos pause\" into lmp-dev"
    },
    {
      "commit": "6e9f6b498d758848fd934f8217c386dd74ef3833",
      "tree": "6c5f2b249a6fe243d73f825ea4ee2ed14a5d8be3",
      "parents": [
        "086c1e3f41a92aa0025a1da1db5dabbfdffaf129"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 16 17:07:22 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 16 17:09:49 2014 -0700"
      },
      "message": "NuPlayerDriver: restart after eos pause\n\nBug: 17512187\nChange-Id: I204ce83790bf98bc7ffebcb76d5df1e56a6a3f66\n"
    },
    {
      "commit": "fbbeeeb87c55c3eca94a709f9f8986190f6472a1",
      "tree": "b2c63074f2e47b26b556b459eae830a68e9cedeb",
      "parents": [
        "da23ab9b0dfa780175651daf057a02b0aa106dc8",
        "48296b792a8d68358de74141fa80bd5bd84d0307"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Sep 16 22:29:52 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 16 22:29:53 2014 +0000"
      },
      "message": "Merge \"Disconnect HTTP-based data source upon reset\" into lmp-dev"
    },
    {
      "commit": "da23ab9b0dfa780175651daf057a02b0aa106dc8",
      "tree": "51ecf38eb574f4d5d155ca2d4bf0b6f3520c8c96",
      "parents": [
        "086c1e3f41a92aa0025a1da1db5dabbfdffaf129"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 16 11:34:08 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Sep 16 14:05:03 2014 -0700"
      },
      "message": "GenericSource: fix selectTrack parameter\n\nBug: 17512187\nChange-Id: I19a0915fb0fb1b1ae036bf5df85b9c9e7657a7ea\n"
    },
    {
      "commit": "48296b792a8d68358de74141fa80bd5bd84d0307",
      "tree": "56b46f8d4de2e87f8028a09fa2b8203625c01474",
      "parents": [
        "83a23e1e1e45d9e2f5497e214796250f74aad1d4"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Sun Sep 14 14:28:45 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Sep 16 13:26:18 2014 -0700"
      },
      "message": "Disconnect HTTP-based data source upon reset\n\nBug: 17425250\n\nChange-Id: Ieb4c93fd9848489f9dbf35a36474376924fd8eb9\n"
    },
    {
      "commit": "73721170e1a3c9751ef00fd53b6b5eec5f2c5c81",
      "tree": "131795898a7160b594bb60194680d0e0b5e39327",
      "parents": [
        "47e89d7dcb4406b197c13764897fb28ac1e0b09b",
        "14986f6cca08b9ab0407cc2d31f92bfb02b5cb8c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Sep 15 23:37:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 15 23:37:51 2014 +0000"
      },
      "message": "Merge \"mediaplayer: handle surface dis/connection errors\" into lmp-dev"
    },
    {
      "commit": "c7b29572d22dff51b5432a7d211875d528406da6",
      "tree": "4728691c458b193b4b235977e2d6c6edda87700a",
      "parents": [
        "dd5f7dc1a870877c2f0cbe0b595c42b77035f9ec",
        "c5cc2e21602182c7ab4df1d7eba40f18037c1818"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Sep 15 18:26:36 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 15 18:26:37 2014 +0000"
      },
      "message": "Merge \"mediaplayer: optimize buffer queue management\" into lmp-dev"
    },
    {
      "commit": "14986f6cca08b9ab0407cc2d31f92bfb02b5cb8c",
      "tree": "cae6fd7fc8a846471f7d7a90ccbedb79003f70f1",
      "parents": [
        "2a6074c4f7dd6f5b85ea8d858199d4970ff404ac"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Sep 15 11:04:44 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon Sep 15 11:07:08 2014 -0700"
      },
      "message": "mediaplayer: handle surface dis/connection errors\n\nBug: 17408008\nChange-Id: I752d5372086772b79b1300a2d3fabbc4985954a8\n"
    },
    {
      "commit": "c5cc2e21602182c7ab4df1d7eba40f18037c1818",
      "tree": "a04d95cc239e6599713c18686a6bb0ad97d06a3d",
      "parents": [
        "3b54aba0883bdc5924290f44db8beb70da70ea26"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Sep 09 20:08:39 2014 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Sep 12 17:45:49 2014 -0700"
      },
      "message": "mediaplayer: optimize buffer queue management\n\nVarious changes for power consumption including:\n    Restrict the number of messages in flight.\n    Buffer more frames in the GenericSource so reads occur in a burst.\n\nBug: 15094301\nChange-Id: I783481fd91f3fdd445b95e88ab82178f649f1a38\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "ae6fe431d150d561fa27d060f38b5dd7c42820bb",
      "tree": "84448c16e41b59a9cf17c713d4fb08a42ea5b23d",
      "parents": [
        "84de1dc2512aa886638c103ee3e9f5c19f4a4a04",
        "af52c1a1ccab588ae4ed94521f202ed9474eccec"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Sep 12 18:26:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 12 18:26:28 2014 +0000"
      },
      "message": "Merge \"GenericSource: move track packet init from start to prepare\" into lmp-dev"
    },
    {
      "commit": "6851cdc292aa68e3ac38c01fca3036cf06489ca9",
      "tree": "10c72ebcd8e124fa5fe4582ab8c9031bc5834f7e",
      "parents": [
        "5ea3378d49285aaf39a544bcda7a98e331ad370a",
        "54ef1bae010f12dfe6a40ff4452695b1b11ff449"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Sep 11 23:54:48 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 11 23:54:49 2014 +0000"
      },
      "message": "Merge \"StagefrightRecorder: default to codec and fps from camcorder low profile\" into lmp-dev"
    },
    {
      "commit": "af52c1a1ccab588ae4ed94521f202ed9474eccec",
      "tree": "12468c9cff8cb751da73d2c9033d0145fbc0680f",
      "parents": [
        "971873179cf202ad8aa1ddc4ec737795f1e03ce3"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Sep 11 15:38:54 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Sep 11 15:45:08 2014 -0700"
      },
      "message": "GenericSource: move track packet init from start to prepare\n\nBug: 17244704\nChange-Id: I15eba0e4d2a178cc0ba46bbc17be0e6d95e76935\n"
    },
    {
      "commit": "84f5278a36f2816cc38f64307b4a1ad8a6818507",
      "tree": "a70b12822e0c000bef10379a6938889fd59ed933",
      "parents": [
        "7c12b0358b6d3b66e231fe4a67bb55f424b3857e"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Sep 11 10:01:55 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Sep 11 14:02:11 2014 -0700"
      },
      "message": "avoid kWhatReadBuffer message spam in GenericSource\n\nWhen playig WVM video, an extra readBuffer is posted for each\ndequeueAccessUnit, resulting in an unbounded number of messages.\n\nBug: 17472979\nChange-Id: Ice92ccf2454bf7a70856a4a8b535cefffc9e61ac\n"
    },
    {
      "commit": "54ef1bae010f12dfe6a40ff4452695b1b11ff449",
      "tree": "b558274fe2e0db696df99145d37becb520e97a85",
      "parents": [
        "e4c8b32f1123aa639f46d234203ad5c5e7926628"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Sep 08 18:55:34 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Sep 11 12:13:09 2014 -0700"
      },
      "message": "StagefrightRecorder: default to codec and fps from camcorder low profile\n\nBug: 16870964\nChange-Id: I18425af630d3f041a3bcf77fbae3f07856fe8af2\n"
    },
    {
      "commit": "b9b87fe9d9f3d91c05300a22920d7227a3f8eb83",
      "tree": "5014fdcafbd61ed00b1872505e928dfe89b797af",
      "parents": [
        "e4c8b32f1123aa639f46d234203ad5c5e7926628"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 10 13:53:21 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Sep 10 13:54:02 2014 -0700"
      },
      "message": "mediaplayer: release MediaBuffer in stale input buffers\n\nBug: 17454455\nChange-Id: If63a6e42f96851d6c10fdec11360f0dabae9bf50\n"
    },
    {
      "commit": "e4c8b32f1123aa639f46d234203ad5c5e7926628",
      "tree": "b62e1911123c8c341ea621f8ed182314165b303e",
      "parents": [
        "43f2e3cf20c2a99cd3e9b99c8b507143e2954756",
        "71079fc29d93fb49d6022397b6d4168b7fba6e9b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 10 19:41:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 10 19:41:41 2014 +0000"
      },
      "message": "Merge \"NuPlayerDriver: do not set to paused state when receiving playback complete and reset is in progress.\" into lmp-dev"
    },
    {
      "commit": "71079fc29d93fb49d6022397b6d4168b7fba6e9b",
      "tree": "0bd9429e860de402b018ebbc34d236a724531d2f",
      "parents": [
        "8716e3f386f37abd3d759404ca8b3deaf46afde8"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 10 10:06:11 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 10 11:47:43 2014 -0700"
      },
      "message": "NuPlayerDriver: do not set to paused state when receiving playback complete and reset is in progress.\n\nBug: 17453240\nChange-Id: If243e2232779681fc84dc767feaed00f23d8fdb1\n"
    },
    {
      "commit": "178e506350ef41609daaf307f598ef0bc4f82c71",
      "tree": "ee782d0b688545138cfd8e12ea445e54bc436471",
      "parents": [
        "c99d333f59b5559248a5bf3135b7ef85b5f40133"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Sep 09 20:08:39 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Sep 09 20:40:54 2014 -0700"
      },
      "message": "mediaplayer: limit number of outstanding buffer requests\n\nBug: 14679336\nChange-Id: I94a20ada30a9a25065329a85fc884d32d154d029\n"
    },
    {
      "commit": "8716e3f386f37abd3d759404ca8b3deaf46afde8",
      "tree": "994b1c4461e0997b72e1fffecef4346877319bb7",
      "parents": [
        "47a13d45ae3f05ddb778124484a17d4754c82b7a",
        "1008e1c9eb9ec7aeefffa4d9907f890a8eab7668"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 22:08:44 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 09 22:08:45 2014 +0000"
      },
      "message": "Merge \"NuPlayer: make previous decoders obsolete when reset is done.\" into lmp-dev"
    },
    {
      "commit": "47a13d45ae3f05ddb778124484a17d4754c82b7a",
      "tree": "976eff24183b4a3b0b8fefd58bb20337ef359776",
      "parents": [
        "95861b33c7dcfa450f5e10568c0767b07bc50729",
        "cbe165a6f68c90bbdd2b1593387d4072bd80b924"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Sep 09 22:03:13 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 09 22:03:13 2014 +0000"
      },
      "message": "Merge \"[media][nuplayer] Remove debug message EWOULDBLOCK\" into lmp-dev"
    },
    {
      "commit": "cbe165a6f68c90bbdd2b1593387d4072bd80b924",
      "tree": "686e7020f2d3b1e83766e4e1ab23527f643bd523",
      "parents": [
        "8270e1d13a101fa946848871b9903b31ff11981f"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Sep 09 11:46:18 2014 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Sep 09 14:50:53 2014 -0700"
      },
      "message": "[media][nuplayer] Remove debug message EWOULDBLOCK\n\nA debug message that was silent during testing is now spewing messages.\nIt was removed.\n\nBug: 17438882\nChange-Id: I9c61409cac77c7bc1fd1088815823207094606f2\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "1008e1c9eb9ec7aeefffa4d9907f890a8eab7668",
      "tree": "4ab4cb30e6c8d5cdce8f3eeaa69aa589a394bbbf",
      "parents": [
        "8270e1d13a101fa946848871b9903b31ff11981f"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 14:49:08 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 14:49:08 2014 -0700"
      },
      "message": "NuPlayer: make previous decoders obsolete when reset is done.\n\nBug: 17428608\nChange-Id: I724174d65f8e00bfecb51e6f690ae709ed2cf442\n"
    },
    {
      "commit": "95861b33c7dcfa450f5e10568c0767b07bc50729",
      "tree": "7b2a5e79057e732a66fe5952c6dbc1978930eb71",
      "parents": [
        "8270e1d13a101fa946848871b9903b31ff11981f",
        "8592dbbdf5339890db2b14f83bcd6da2ffb023d2"
      ],
      "author": {
        "name": "Rachad",
        "email": "rachad@google.com",
        "time": "Tue Sep 09 21:44:13 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 09 21:44:15 2014 +0000"
      },
      "message": "Merge \" NuPlayer::Renderer::onPause() - Converted CHECK(!mPaused) to a warning.\" into lmp-dev"
    },
    {
      "commit": "8592dbbdf5339890db2b14f83bcd6da2ffb023d2",
      "tree": "ede1d13d4f3eb963032215ecb6999209f666d53a",
      "parents": [
        "9f8551ffa967bd8a4d0a52487a183dcf8b22d91f"
      ],
      "author": {
        "name": "Rachad",
        "email": "rachad@google.com",
        "time": "Tue Sep 09 13:10:28 2014 -0700"
      },
      "committer": {
        "name": "Rachad",
        "email": "rachad@google.com",
        "time": "Tue Sep 09 13:10:28 2014 -0700"
      },
      "message": " NuPlayer::Renderer::onPause() - Converted CHECK(!mPaused) to a warning.\n\n Bug: 17436451\n\nChange-Id: I7e9e0c48bbdd8ab65c5f4a587699a28435bd03f4\n"
    },
    {
      "commit": "2adbeda4f46f88ddb17519d39cc13e183741e071",
      "tree": "07a5d63538a75c460af46058473cbefe54cd76ae",
      "parents": [
        "9f8551ffa967bd8a4d0a52487a183dcf8b22d91f",
        "f702d0415be7d5cb8c1801953b74adc1065c015e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 19:43:15 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 09 19:43:16 2014 +0000"
      },
      "message": "Merge \"NuPlayer: check mSource before deferencing it.\" into lmp-dev"
    },
    {
      "commit": "f702d0415be7d5cb8c1801953b74adc1065c015e",
      "tree": "6915e8e271d8d37f835cdc33c93799f92fb7263e",
      "parents": [
        "62ce207291353a13dd722855102e99684259a517"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 12:08:47 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 09 12:08:47 2014 -0700"
      },
      "message": "NuPlayer: check mSource before deferencing it.\n\nBug: 17428608\nChange-Id: I7b264d1288ed3c495434aedeeeef2fbfc3ca2f16\n"
    },
    {
      "commit": "1a9ac031e9de8b3be1ec2c8d6d00f92bd3d59ea8",
      "tree": "7351d1d441b806114be56d70da4599daf07342ce",
      "parents": [
        "d3a5ff9afff08b3be1b2853868c0f28eefc36f19",
        "9f5264958557c45e942eabab8b32db2544d6c498"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Sep 08 23:00:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 08 23:00:40 2014 +0000"
      },
      "message": "Merge \"[audio][nuplayer] Aggregate buffers to reduce power.\" into lmp-dev"
    },
    {
      "commit": "9f5264958557c45e942eabab8b32db2544d6c498",
      "tree": "c6079f0cdfbdbd4961f5d7e47e5a9618edd7bc5a",
      "parents": [
        "acdae5d7865b604acaadd3be1c45c84ca4bf3952"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Sep 03 15:04:12 2014 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Sep 08 12:26:51 2014 -0700"
      },
      "message": "[audio][nuplayer] Aggregate buffers to reduce power.\n\nCombine audio data from multiple buffers into one.\nThis reduces churn between threads and saves battery power.\n\nOnly use buffer aggregation when offloading the decoder.\nPend buffer if it won\u0027t fit in the bigger buffer.\n\nBug: 15094301\nChange-Id: Iad3dac90b5d6b0fa43432b0e6776652ee2eafaa1\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "43cbe059b21185855465063d3767c2364f446f44",
      "tree": "a7cde3d75ff1c7a9ae969dca2ede9325825214f9",
      "parents": [
        "62ce207291353a13dd722855102e99684259a517",
        "4ec6746804ad8172c8b1c4eb3e6deb19a0920734"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Sep 08 17:45:06 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 08 17:45:07 2014 +0000"
      },
      "message": "Merge \"NuPlayerDriver: put player in paused state when reaching EOS.\" into lmp-dev"
    },
    {
      "commit": "835ae86b49da5e15a501cb12c25458f8b63e38be",
      "tree": "348fabc739c904ec0c3e19dd8e2d7c56b51fb924",
      "parents": [
        "cb16968f593e4d58857c693c8ec6f2d2337f5512",
        "48f36a07d1faa1b8ec0af5d12d3c18fbfcb9eb65"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Sep 08 04:46:12 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 08 04:46:13 2014 +0000"
      },
      "message": "Merge \"Revert \"Revert \"disable AwesomePlayer for Ogg vorbis\"\"\" into lmp-dev"
    },
    {
      "commit": "f17882b310426d243f8cd541f1774c03ccdd4957",
      "tree": "b422c6130951b5513e76082eb2b48c6093b3f8e1",
      "parents": [
        "3c15d9b12394c62b58ab101c958e354f2c2bea19",
        "17f6dd64cd749f4e38e12b672b551047f4cbe9b4"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Sep 05 22:12:51 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 22:12:52 2014 +0000"
      },
      "message": "Merge \"GenericSource: refactor track selection for dedicated looper\" into lmp-dev"
    },
    {
      "commit": "4ec6746804ad8172c8b1c4eb3e6deb19a0920734",
      "tree": "1915c76e8ee1f35c6e57a64dc534ce75d39ef71c",
      "parents": [
        "3c15d9b12394c62b58ab101c958e354f2c2bea19"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Sep 05 14:58:59 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Sep 05 15:09:05 2014 -0700"
      },
      "message": "NuPlayerDriver: put player in paused state when reaching EOS.\n\nBug: 17352759\nChange-Id: I19b183e0a86b712524f79ec7c35e32b5a5b47bc6\n"
    },
    {
      "commit": "ade312d5c933cff798c3febefabc47b00390ee4a",
      "tree": "695e1891f037f8833dacc0ef966f832e7b5adad8",
      "parents": [
        "767fc12e58422eef14aa40a5e7ffefd0b3949b82",
        "7353585789513466d5887986620e8734a325b3eb"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 05 21:49:32 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 21:49:33 2014 +0000"
      },
      "message": "Merge \"NuPlayer: Restrict seek on video texture changes\" into lmp-dev"
    },
    {
      "commit": "767fc12e58422eef14aa40a5e7ffefd0b3949b82",
      "tree": "6e9ee8947d5f95336517cc834f01da507ee824bc",
      "parents": [
        "3ec9c3d2d813149b9f049afc5ea48f1276645f3a",
        "adf34bf9b7925f990259b1b6f4c69b8668f76ead"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 05 20:38:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 20:38:28 2014 +0000"
      },
      "message": "Merge \"NuPlayer: Discard seeks when source and decoders are NULL\" into lmp-dev"
    },
    {
      "commit": "3ec9c3d2d813149b9f049afc5ea48f1276645f3a",
      "tree": "5b3d3bab28845622783fb99f233c9c903bc5251e",
      "parents": [
        "f2a2d0d6731174f5ce2a7b9d6dfd96dd7f1727a4",
        "b86e68f834b7040518b99d1d0245d5f2e5cb9c86"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Sep 05 19:19:47 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 19:19:48 2014 +0000"
      },
      "message": "Merge \"Split CEA-608 Closed caption into 4 tracks CC1~CC4\" into lmp-dev"
    },
    {
      "commit": "7353585789513466d5887986620e8734a325b3eb",
      "tree": "24935a3b0c25df12520f45e89ce95e2688ce0c23",
      "parents": [
        "adf34bf9b7925f990259b1b6f4c69b8668f76ead"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 05 11:42:58 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 05 11:42:58 2014 -0700"
      },
      "message": "NuPlayer: Restrict seek on video texture changes\n\nMediaPlayer::setVideoSurfaceTexture() should generate seek to refresh\ndisplay only if player is started and has video.\n\nBug: 17379148\nBug: 17404923\nChange-Id: I5f55dc40943e4419d08be6fdab964b8a2c5ee519\n"
    },
    {
      "commit": "f2c0ff43e5c6f83775990fd539dad49c14c6037c",
      "tree": "326999a005f45d712efb590e80f9cdd66e00140a",
      "parents": [
        "6a548e9114c4a283a6e08a2d35540f8549f44b82",
        "4f418f9705d6c247b645cbcf255a3f56e665d216"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 05 17:13:31 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 17:13:32 2014 +0000"
      },
      "message": "Merge \"Fix to parse audio_source_t member of audio_attributes_t\" into lmp-dev"
    },
    {
      "commit": "4f418f9705d6c247b645cbcf255a3f56e665d216",
      "tree": "f4563f44841f147eae780f74e01a1af78d565179",
      "parents": [
        "b72726bad6c9253c26c82fea76bdf99e18b8ba6d"
      ],
      "author": {
        "name": "Hyejin Kim",
        "email": "hyejin.kim@lge.com",
        "time": "Fri Sep 05 15:50:03 2014 +0900"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 05 16:49:14 2014 +0000"
      },
      "message": "Fix to parse audio_source_t member of audio_attributes_t\n\nWhen unmarshalling audio_attributes_t typed data,\nit didn\u0027t parse the audio_source_t member between content_type and flags.\n\nBug: 16906307\n\nChange-Id: Ia0d8df9b5c31441d34dc82678bceccd8ce31423d"
    },
    {
      "commit": "adf34bf9b7925f990259b1b6f4c69b8668f76ead",
      "tree": "fc74585a5399a572e44bc8f25717c7d277e6d6be",
      "parents": [
        "6a548e9114c4a283a6e08a2d35540f8549f44b82"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 03 18:22:22 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 04 19:06:56 2014 -0700"
      },
      "message": "NuPlayer: Discard seeks when source and decoders are NULL\n\nProblem occurs when loop mode asynchronously seeks to the\nstart of the source after a MediaPlayer::reset().\n\nBug: 17379148\nChange-Id: I50bfe65a753afffb1d478db54c76067a9c61a0ae\n"
    },
    {
      "commit": "b86e68f834b7040518b99d1d0245d5f2e5cb9c86",
      "tree": "5a908948804024513f7c3ed3d1d8bf07c653bd82",
      "parents": [
        "9007305003e689362749a264af2eafea80eb12a0"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 01 13:46:53 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Sep 03 22:31:15 2014 -0700"
      },
      "message": "Split CEA-608 Closed caption into 4 tracks CC1~CC4\n\nBug: 16463078\n\nChange-Id: Ib3073090934232016e535fbb8fa56cdf9d7ab6eb\n"
    },
    {
      "commit": "17f6dd64cd749f4e38e12b672b551047f4cbe9b4",
      "tree": "22bf342c2961202509d8ac86a1324d3df836c8f6",
      "parents": [
        "b72726bad6c9253c26c82fea76bdf99e18b8ba6d"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Aug 20 17:00:21 2014 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Sep 03 19:54:49 2014 -0700"
      },
      "message": "GenericSource: refactor track selection for dedicated looper\n\n - move getFormatMeta, getSelectedTrack, selectTrack, and seekTo to\n   dedicated looper\n - start \u0026 dequeueAccessUnit posts readBuffer requests instead of reading\n   directly\n - call internal doGetFormatMeta in onPrepareAsync\n\nBug: 16892748\nChange-Id: I5d5e34381f1dfceca655c52a201627b53454ad22\n"
    },
    {
      "commit": "48f36a07d1faa1b8ec0af5d12d3c18fbfcb9eb65",
      "tree": "60272c63915e80b9d49387862469939cbce65790",
      "parents": [
        "da65048e8e6f65ed9b3f23cda3f4554025c76fc4"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 03 23:28:52 2014 +0000"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 03 23:28:52 2014 +0000"
      },
      "message": "Revert \"Revert \"disable AwesomePlayer for Ogg vorbis\"\"\n\nThis reverts commit da65048e8e6f65ed9b3f23cda3f4554025c76fc4.\n\nDeadlock audio issues for NuPlayer have been resolved.\n\nChange-Id: I1853d367dc771a9396a9b2d48ff34e50c78c112c\n"
    },
    {
      "commit": "d3db0bfafc98305f867502c06de3ce415c97d3fb",
      "tree": "c218cc4311feff9bba5db8752834e3820d9befb3",
      "parents": [
        "d71233a846aca7035a851941c1530d04c6a65086",
        "ac428aa54d2489705091dd38372bbaade281a92e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 03 21:23:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 03 21:23:57 2014 +0000"
      },
      "message": "Merge \"NuPlayer: add seek operation when change video texture surface.\" into lmp-dev"
    },
    {
      "commit": "ac428aa54d2489705091dd38372bbaade281a92e",
      "tree": "6ee7541b8fb1259c52d6a8ffd06dd0b0b29665b6",
      "parents": [
        "e4478febd87f6a663bbdf2c22dd829af2a8166a6"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 02 19:01:34 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Sep 03 09:45:34 2014 -0700"
      },
      "message": "NuPlayer: add seek operation when change video texture surface.\n\nBug: 17278770\n\nChange-Id: I9fd5207e1eccb91e64644d2d1da4183d4bf7ac2c\n"
    },
    {
      "commit": "453d633ba6351c8efc2103383ca178a0674bd373",
      "tree": "0b5f828da083078f970739476e99afdc73d7872e",
      "parents": [
        "97d547da43c9c41711d1ed1e3f4fa87c2ee3cb9a",
        "fbe8bef8bcf7aed97f0332908a817b0e6d91b9ba"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Sep 03 01:13:08 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 03 01:13:08 2014 +0000"
      },
      "message": "Merge \"render one video frame after flush even when we\u0027re paused\" into lmp-dev"
    },
    {
      "commit": "fbe8bef8bcf7aed97f0332908a817b0e6d91b9ba",
      "tree": "d3f02346d2fec7129cbb0d99eaa30bd8dc0332ed",
      "parents": [
        "47f64f2ed14839a00b3b148d490dc0394282eb54"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 29 18:34:17 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Sep 03 01:07:21 2014 +0000"
      },
      "message": "render one video frame after flush even when we\u0027re paused\n\nallows the video to get some update when user seeks while paused.\n\nBug: 17140448\n\nChange-Id: I064806bfd566585eeb4150a508422c9775e08f99\n"
    },
    {
      "commit": "e7494680914c384dc6e93ae85f4337b06b300468",
      "tree": "c339ec97ce887432dcde4933af993d833abb175f",
      "parents": [
        "64a385d5d8e42ac96c88fb025212b4023690db39",
        "73ddd210ea572375198cac1d4960df793745fb4b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Sep 02 01:40:36 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 02 01:40:37 2014 +0000"
      },
      "message": "Merge \"NuPlayerRenderer: stop feeding AudioSink when paused.\" into lmp-dev"
    },
    {
      "commit": "64a385d5d8e42ac96c88fb025212b4023690db39",
      "tree": "3ff2aad0146b13517e3d5e8b60d2e5b80acb591d",
      "parents": [
        "c9d62de72b67f069a517f24c13ff9c4e4593f76a",
        "802768790c131f8237364906fd13981a6bb91193"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Sat Aug 30 02:06:51 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 30 02:06:52 2014 +0000"
      },
      "message": "Merge \"GenericSource: set DRM playback status.\" into lmp-dev"
    },
    {
      "commit": "c22c695660ed9edaba0d4cd7c0ab3a794216fe80",
      "tree": "91f6a74ca7fbfaa1c15af96b2ff2f7159542bfe1",
      "parents": [
        "6868628c0df9b8dfa0a1c16be109d907384e3186"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 29 14:47:50 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 29 18:09:10 2014 -0700"
      },
      "message": "MediaCodec: set state to UNINITIALIZED when receiving fatal error.\n\nNuPlayerDecoder: release MediaCodec when handling an error.\n\nBug: 16661923\nChange-Id: I1b6fd7ee5cc1136b3f289135e5360cd3d98f9799\n"
    },
    {
      "commit": "73ddd210ea572375198cac1d4960df793745fb4b",
      "tree": "469cfcdb17aaf53034e996e9a1a85b0fa69030aa",
      "parents": [
        "6868628c0df9b8dfa0a1c16be109d907384e3186"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 29 16:33:49 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 29 18:06:10 2014 -0700"
      },
      "message": "NuPlayerRenderer: stop feeding AudioSink when paused.\n\nNuPlayerDriver: current position is updated only in running state.\n\nBug: 17141882\nChange-Id: Ia88551cc29ef8f0e7ef0600a214feb5633389b6e\n"
    },
    {
      "commit": "802768790c131f8237364906fd13981a6bb91193",
      "tree": "4d7ba73ee57592fe29079c5949fb39083ecb9184",
      "parents": [
        "d42173a44721af1a600b9c8599bc736394fcc724"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Thu Aug 28 15:50:29 2014 -0700"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Fri Aug 29 13:56:42 2014 -0700"
      },
      "message": "GenericSource: set DRM playback status.\n\nBug: 17307158\nChange-Id: I36b801a9b67831b618930cf1241756bb9644b4fd\n"
    },
    {
      "commit": "d362ea179c25dd1998e2edee7994e549d00e7eec",
      "tree": "89534130812789bcdfd14c0c8be61ad39cb46066",
      "parents": [
        "1754351d9199721e7e7943461689e399ef015260",
        "5095d7091874cb9e9c95ecc4fe762076ed05e624"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Aug 27 21:52:39 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 27 21:52:40 2014 +0000"
      },
      "message": "Merge \"AudioPlayback: delay the post of EOS based on pending playout.\" into lmp-dev"
    },
    {
      "commit": "5095d7091874cb9e9c95ecc4fe762076ed05e624",
      "tree": "b87bbb89b260dd514ff911c88ddef2a5244c5aab",
      "parents": [
        "d42173a44721af1a600b9c8599bc736394fcc724"
      ],
      "author": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Aug 27 12:05:48 2014 -0700"
      },
      "committer": {
        "name": "Ronghua Wu",
        "email": "ronghuawu@google.com",
        "time": "Wed Aug 27 14:16:00 2014 -0700"
      },
      "message": "AudioPlayback: delay the post of EOS based on pending playout.\n\nBug: 16840522\nChange-Id: Icdc8888f5a8a77e2e5ebeb8a6934c7d79bd9e71a\n"
    },
    {
      "commit": "5bc5b4fbf16a0331a4f2f1d16585932087ee41c1",
      "tree": "e4a1b03181f8f85d1dcc675d1eacc8c0cf90abb7",
      "parents": [
        "355286ee1e5057c66158fcea785bf1881e069101",
        "9c03a40367c149526c31ddf14a518ba2036195a5"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Aug 27 03:29:59 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 27 03:30:00 2014 +0000"
      },
      "message": "Merge \"NuPlayer: set controlledByApp to true when creating Surface.\" into lmp-dev"
    },
    {
      "commit": "355286ee1e5057c66158fcea785bf1881e069101",
      "tree": "79de55422fc962458cbf6f50917e5596687dfc8c",
      "parents": [
        "5bbffc05432b6a81280872a9c3ed9cac7bec53df",
        "2a79c3274e11b91675a509e16cb3b157df141fac"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Aug 26 22:28:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 26 22:28:35 2014 +0000"
      },
      "message": "Merge \"Fix SoundPool lockup\" into lmp-dev"
    },
    {
      "commit": "9c03a40367c149526c31ddf14a518ba2036195a5",
      "tree": "2bf273ee7aeefbcb2b62925478e311b45b660309",
      "parents": [
        "d42173a44721af1a600b9c8599bc736394fcc724"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Aug 26 15:24:43 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Aug 26 15:24:43 2014 -0700"
      },
      "message": "NuPlayer: set controlledByApp to true when creating Surface.\n\nThis fixes hang when trying to dequeue buffer from native window\nfollowed by a flush.\n\nBug: 16303659\nBug: 17250931\nChange-Id: Ib87ae558b020f5ce82b4192ec63339c93a72a2e9\n"
    },
    {
      "commit": "2a79c3274e11b91675a509e16cb3b157df141fac",
      "tree": "66fcebe5644d8d741acfef4c2d9906e57cd2df69",
      "parents": [
        "d42173a44721af1a600b9c8599bc736394fcc724"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Aug 26 13:57:32 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Aug 26 14:14:42 2014 -0700"
      },
      "message": "Fix SoundPool lockup\n\nNuPlayerDriver needs to update its internal state before calling\nits listener, so that when the listener calls back into NuPlayerDriver,\nNuPlayerDriver has the right state.\n\nBug: 14057920\nChange-Id: I224882c427f5e3c9d4bf96c5d68075e235062401\n"
    },
    {
      "commit": "5bbffc05432b6a81280872a9c3ed9cac7bec53df",
      "tree": "a415d8d99c7ef7e7c7c9928b02c0aa954b420ec3",
      "parents": [
        "d42173a44721af1a600b9c8599bc736394fcc724",
        "afc0a87cc92a474bb14fb2a4093c74d04e4efd1b"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 26 17:38:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 26 17:38:17 2014 +0000"
      },
      "message": "Merge \"do string compare with mime immediately after we get the value\" into lmp-dev"
    },
    {
      "commit": "afc0a87cc92a474bb14fb2a4093c74d04e4efd1b",
      "tree": "2602596fcc9389418dacbb4277637a1363aee2a9",
      "parents": [
        "111333eaab12448f45927464c8aeacbbf9a578a1"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 26 09:56:52 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Aug 26 09:56:52 2014 -0700"
      },
      "message": "do string compare with mime immediately after we get the value\n\nBug: 17210803\nChange-Id: I4d20dd4b95d18251c18a371bd8f89b1320b38879\n"
    },
    {
      "commit": "d42173a44721af1a600b9c8599bc736394fcc724",
      "tree": "3b72f6d9e26052242f7f15496f3caee7462332b5",
      "parents": [
        "8dad3f606a3112e24f0b75f2edc05be299d18c43",
        "da65048e8e6f65ed9b3f23cda3f4554025c76fc4"
      ],
      "author": {
        "name": "Rachad Alao",
        "email": "rachad@google.com",
        "time": "Mon Aug 25 21:49:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 25 21:49:36 2014 +0000"
      },
      "message": "Merge \"Revert \"disable AwesomePlayer for Ogg vorbis\"\" into lmp-dev"
    },
    {
      "commit": "da65048e8e6f65ed9b3f23cda3f4554025c76fc4",
      "tree": "8910f75df98402eda34d2e16ca26aafac05422fb",
      "parents": [
        "9b48f5d780757ffb81709df3633d06b62edaf39f"
      ],
      "author": {
        "name": "Rachad Alao",
        "email": "rachad@google.com",
        "time": "Mon Aug 25 21:46:34 2014 +0000"
      },
      "committer": {
        "name": "Rachad Alao",
        "email": "rachad@google.com",
        "time": "Mon Aug 25 21:46:34 2014 +0000"
      },
      "message": "Revert \"disable AwesomePlayer for Ogg vorbis\"\n\nTemporarily revert commit 9b48f5d780757ffb81709df3633d06b62edaf39f as a workaround for b/17173673\n\nBug: 17173673\nChange-Id: Iec52289e77485a58ce28cc515d6a5b8e7b2d328a\n"
    },
    {
      "commit": "87603c0dd1f4e62e52feffa8d6e960ad21f68893",
      "tree": "ef7602edc3877ac901b6cb502a83d0288eb40868",
      "parents": [
        "848726d845b51da04364bdaf4ec915c85d593c0e"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Aug 20 19:25:30 2014 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Sat Aug 23 08:49:27 2014 -0700"
      },
      "message": "NuPlayer: remember and resubmit CSDs after flush\n\nBug: 17118001\nChange-Id: I09bbefd4c05de0db1c593e8d6d38859358a20ebb\n"
    },
    {
      "commit": "052efa490b595d17d1452ec019979996fe470a05",
      "tree": "481cb29e65c538a2d262918e33ac97bab8ed825c",
      "parents": [
        "43febe72dadc751acff410842e091d4099919fad",
        "13d6faa02087ce3bb0d4a02b8495f1822f211433"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Sat Aug 23 00:05:00 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 23 00:05:01 2014 +0000"
      },
      "message": "Merge \"wait for flush to finish before returning setSurface\" into lmp-dev"
    },
    {
      "commit": "43febe72dadc751acff410842e091d4099919fad",
      "tree": "4bc74f94f0e4881a2c5ce64f9564b6ba40347d84",
      "parents": [
        "d1de9bb33a2f645fb9dc54e7fc69ca45304850a5",
        "2a3cc9a64330dd36e466fe5e1b634146f2d641c1"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 22 22:53:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 22:53:20 2014 +0000"
      },
      "message": "Merge \"add buffering update to GenericSource\" into lmp-dev"
    },
    {
      "commit": "13d6faa02087ce3bb0d4a02b8495f1822f211433",
      "tree": "37cb5be49ca1a1d89433c98d512d7469d0d2e82a",
      "parents": [
        "d1de9bb33a2f645fb9dc54e7fc69ca45304850a5"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 22 15:35:28 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 22 15:42:49 2014 -0700"
      },
      "message": "wait for flush to finish before returning setSurface\n\nBug: 17187598\nChange-Id: I091219e57158a4532044ca49342b57277d6ecb15\n"
    },
    {
      "commit": "d1de9bb33a2f645fb9dc54e7fc69ca45304850a5",
      "tree": "d28fd9f147cc6aac57dacd89ee5516c0791d8564",
      "parents": [
        "7992a5d0f6d995d46bf649dbac45e0e8267f1397",
        "3fb9f68dea5d991288f0ea8037742b50c7df5767"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 22 21:53:39 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 21:53:39 2014 +0000"
      },
      "message": "Merge \"ACodec: handle errors related to native window.\" into lmp-dev"
    },
    {
      "commit": "3fb9f68dea5d991288f0ea8037742b50c7df5767",
      "tree": "763a8fd629b95444c2bd30e3b1eb99d779905d3e",
      "parents": [
        "a8143b2bbaabc3f704b05078ccc930dbc28591b9"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Aug 20 14:30:09 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 22 14:23:02 2014 -0700"
      },
      "message": "ACodec: handle errors related to native window.\n\nBug: 17068327\nBug: 13133027\nChange-Id: I9875e524222a10d1be26be5a84b9633b4aaeb210\n"
    },
    {
      "commit": "7992a5d0f6d995d46bf649dbac45e0e8267f1397",
      "tree": "9918663ab113b867e31c76225407d2748cfd4dbb",
      "parents": [
        "b534f461f6056c84c3ae87e27430f4b934fd3eb1",
        "0560195a71ee26e8546075e56c49ff535fcf1767"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 22 21:20:59 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 21:21:00 2014 +0000"
      },
      "message": "Merge \"NuPlayerDriver: fix current position for stop and pause.\" into lmp-dev"
    },
    {
      "commit": "b534f461f6056c84c3ae87e27430f4b934fd3eb1",
      "tree": "d0fc2ce834f6c5aec73dff2569844b75f7b2e47a",
      "parents": [
        "89c4ab2f4e4fbccf5c67e2671cf252053dbe5d38",
        "d354d8d1b09503c0166c1f3e626cda72a3eeb83c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 22 21:01:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 21:01:41 2014 +0000"
      },
      "message": "Merge \"move cache prefill to GenericSource\u0027s message handler\" into lmp-dev"
    },
    {
      "commit": "2a3cc9a64330dd36e466fe5e1b634146f2d641c1",
      "tree": "39ca1aa496287a49bd09cc4a8f7ac283cb974eb7",
      "parents": [
        "d354d8d1b09503c0166c1f3e626cda72a3eeb83c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Aug 21 17:48:26 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Aug 22 12:21:00 2014 -0700"
      },
      "message": "add buffering update to GenericSource\n\nBug: 17182378\n\nChange-Id: Ib86f3f522d7ea635489edd2b512adb7f4b27e381\n"
    },
    {
      "commit": "0560195a71ee26e8546075e56c49ff535fcf1767",
      "tree": "3a23e27a8507c278919a2b843c97baeab84647dd",
      "parents": [
        "01047680ac57712303e259f485efd9cb97e9a99a"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Aug 20 18:21:11 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Aug 22 11:08:34 2014 -0700"
      },
      "message": "NuPlayerDriver: fix current position for stop and pause.\n\nWhen start() is called after EOS, it means restarting from the beginning of the stream.\nFix racing conditon on accessing some members.\nReport seekTo position before any notifyPosition is called.\n\nBug: 17031731\nBug: 17178928\nChange-Id: I008b827288cf28d39e2a943373fe1e5d7d6c2595\n"
    },
    {
      "commit": "d354d8d1b09503c0166c1f3e626cda72a3eeb83c",
      "tree": "bcb5370e8abc4611587dbef4066c0345a647c068",
      "parents": [
        "111333eaab12448f45927464c8aeacbbf9a578a1"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 20 13:09:58 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Aug 21 18:38:09 2014 -0700"
      },
      "message": "move cache prefill to GenericSource\u0027s message handler\n\nThis allows prepareAsync to be terminated by reset promptly.\n\nIt also makes it easier to do buffer update as GenericSource\ncan access the cache status now.\n\nBug: 16892748\nBug: 17182378\n\nChange-Id: Ia55c04a810fd805041cb2025f6739afa5120b5ed\n"
    },
    {
      "commit": "ef8ae4cbec0c9f49a24625d4316ec9bfde4e75c3",
      "tree": "3f819d91375ba10e4221218119ef3dfa680e9451",
      "parents": [
        "c9ad42d5232e7b6d4c9b5221643ffcb956ea6fe5",
        "a31335a4ec96ba351f25f3b26fa79a78c2723a13"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Aug 22 00:33:24 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 00:33:24 2014 +0000"
      },
      "message": "Merge \"Fix SoundPool and MediaPlayerService buffer overflow\" into lmp-dev"
    },
    {
      "commit": "a31335a4ec96ba351f25f3b26fa79a78c2723a13",
      "tree": "2c1aea6357ac46dcdeecc0b1b5b80a4b6bd05cd3",
      "parents": [
        "2a1bcb8347ad4778a49bb340c3ed28ba27caa7d7"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Aug 20 17:37:59 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Aug 21 16:51:28 2014 -0700"
      },
      "message": "Fix SoundPool and MediaPlayerService buffer overflow\n\nOverflow occurs when SoundPool sample tracks cannot\nfit in the MediaPlayerService AudioCache buffer.\n\nUnnecessary decoding occurred with AwesomePlayer and\nan assert failure occurred with NuPlayer.  NuPlayerRenderer\nis also tweaked to handle the latter case.\n\nBug: 17122639\nChange-Id: I4d25d3e2c0c62e36a91da6bf969edabddc2ebbb0\n"
    },
    {
      "commit": "01047680ac57712303e259f485efd9cb97e9a99a",
      "tree": "052f35d6e82e2dcc833352cec40a54fc3ef7c730",
      "parents": [
        "c10b4689be0d3a0f4ff38c544a6c86c984665d26",
        "15506a6582fb86567c6887c4c426d44be02d12af"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Aug 21 00:49:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 21 00:16:54 2014 +0000"
      },
      "message": "Merge \"NuPlayerDriver: include lapsed time when reporting current position.\" into lmp-dev"
    },
    {
      "commit": "15506a6582fb86567c6887c4c426d44be02d12af",
      "tree": "48471d4edf7dcb4088d3cee5e52f0d83b589f0ef",
      "parents": [
        "e0b5cf7eae5ae16699864eeb8ae36975caa7a26c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Aug 20 15:14:44 2014 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Aug 20 15:58:35 2014 -0700"
      },
      "message": "NuPlayerDriver: include lapsed time when reporting current position.\n\nBug: 17031731\nChange-Id: I01962ee9194bdaa9e8ed1a51abbf365733be3c85\n"
    },
    {
      "commit": "9b48f5d780757ffb81709df3633d06b62edaf39f",
      "tree": "60272c63915e80b9d49387862469939cbce65790",
      "parents": [
        "9f0446d8842b5c6fb3a48c33a447632687ac581e"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 20 13:58:34 2014 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Aug 20 22:00:23 2014 +0000"
      },
      "message": "disable AwesomePlayer for Ogg vorbis\n\nBug: 17108024\n\nChange-Id: I0a970e6476d0f739e65d2200d0f5220dee8d36ef\n"
    }
  ],
  "next": "e0b5cf7eae5ae16699864eeb8ae36975caa7a26c"
}
