)]}'
{
  "log": [
    {
      "commit": "0822156cfd25c111cd33932ee9a89b3100d0350c",
      "tree": "d85aa84ada30e17fc2c71601a9ffa78bf12b2c18",
      "parents": [
        "874a074ad88117d9fabf178b5b4a1c885dc512f5",
        "955585cca11173b07e2e7db3d636ee97b69b053b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 08 12:07:47 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 08 12:07:48 2012 -0700"
      },
      "message": "Merge \"avcenc: Fix indentation\""
    },
    {
      "commit": "874a074ad88117d9fabf178b5b4a1c885dc512f5",
      "tree": "4bf614aa2a00475b2d2a8fc1364f83c94e27829c",
      "parents": [
        "b7ee9c4436c50cc5ff6e72059bf27c2c16dc1b92",
        "23da4cf305b9bfff07954711a8a2d9ec040865af"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 08 12:07:27 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 08 12:07:28 2012 -0700"
      },
      "message": "Merge \"avcenc: Switch malloc/free callbacks to use pointers instead of ints\""
    },
    {
      "commit": "b7ee9c4436c50cc5ff6e72059bf27c2c16dc1b92",
      "tree": "e46ebf713b523c4f4a69c04291a10d755b09b98d",
      "parents": [
        "ffd99cb795c92caee7f4bd0b26af9ae37b100fc3",
        "5c63a648f943b0ec91c3262ced77d1598ff32093"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 08 12:06:48 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 08 12:06:49 2012 -0700"
      },
      "message": "Merge \"mediacodec: Return an error on getOutputFormat if there is no output format yet\""
    },
    {
      "commit": "ffd99cb795c92caee7f4bd0b26af9ae37b100fc3",
      "tree": "8052661f7b84736d863a553b4c3e0037729363e9",
      "parents": [
        "ffb829430ff20ccd6c13e6ed894f2373b2d93939",
        "a21795c5d1d4ca9a6361e4b2db3e1f053e67b1c9"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Aug 01 16:13:50 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 01 16:13:50 2012 -0700"
      },
      "message": "Merge \"Shutter sound is heard at the end of the recorded video\""
    },
    {
      "commit": "5c63a648f943b0ec91c3262ced77d1598ff32093",
      "tree": "121b6750448db559bd9785d16d3a69cc93b95f68",
      "parents": [
        "ffb829430ff20ccd6c13e6ed894f2373b2d93939"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Jul 13 12:48:19 2012 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Jul 13 14:09:22 2012 +0300"
      },
      "message": "mediacodec: Return an error on getOutputFormat if there is no output format yet\n\nThis avoids crashing if calling the public java method\nMediaCodec.getOutputFormat immediately after MediaCodec.start\n(as the documentation example shows that one should do!).\n\nChange-Id: Icd3dd7ab9ae9e8f2a67cef171ff176735de95f58\n"
    },
    {
      "commit": "955585cca11173b07e2e7db3d636ee97b69b053b",
      "tree": "9ed09e5574969bd2bbc2172554272bdb813cff5f",
      "parents": [
        "ffb829430ff20ccd6c13e6ed894f2373b2d93939"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Apr 13 14:17:14 2012 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Jul 10 14:48:08 2012 +0300"
      },
      "message": "avcenc: Fix indentation\n\nChange-Id: I4fcdf619e3b75387a7909272f3164b8d608b6cc2\n"
    },
    {
      "commit": "a21795c5d1d4ca9a6361e4b2db3e1f053e67b1c9",
      "tree": "8052661f7b84736d863a553b4c3e0037729363e9",
      "parents": [
        "ffb829430ff20ccd6c13e6ed894f2373b2d93939"
      ],
      "author": {
        "name": "Patric Frederiksen",
        "email": "patric.frederiksen@sonymobile.com",
        "time": "Tue Jul 10 13:38:35 2012 +0200"
      },
      "committer": {
        "name": "Henrik Baard",
        "email": "henrik.baard@sonymobile.com",
        "time": "Tue Jul 10 13:41:23 2012 +0200"
      },
      "message": "Shutter sound is heard at the end of the recorded video\n\nOn fast hardware, which is more common, the shutter sound is\nplayed and recorded before video recording is stopped.\n\nBefore we call play shutter sound before calling stop recording.\nWith this fix we call play shutter sound after calling stop recording.\n\nChange-Id: I06a3e65fd2700f1d2457fea5ff0f64500eac436f\n"
    },
    {
      "commit": "23da4cf305b9bfff07954711a8a2d9ec040865af",
      "tree": "c4b49aa2bcd9817e8364d828a9cfc291195922fd",
      "parents": [
        "ffb829430ff20ccd6c13e6ed894f2373b2d93939"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Apr 13 14:15:08 2012 +0300"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Jul 10 14:03:46 2012 +0300"
      },
      "message": "avcenc: Switch malloc/free callbacks to use pointers instead of ints\n\nThere is no reason for casting the pointers to ints. This fixes\nbuilding the code on platforms where pointers are larger than ints,\ne.g. 64 bit platforms.\n\nChange-Id: I910cd207d0908287931c9a96eb270139967e029b\n"
    },
    {
      "commit": "ffb829430ff20ccd6c13e6ed894f2373b2d93939",
      "tree": "6ee3b601745dc065689b8db0d7f3f3171f5e57b3",
      "parents": [
        "dbbd5b860a3a26bea3376410f75f27530d9cd10b",
        "2df63ad6bbf0ad0fd066592b44f2e15123513112"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jul 03 12:11:47 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jul 03 12:11:47 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: I7c52b8e82465f28b32e8ebf6df56c258458f2cd3\n"
    },
    {
      "commit": "2df63ad6bbf0ad0fd066592b44f2e15123513112",
      "tree": "51837c9c8163816bb896cb067e4a4a555f507a8b",
      "parents": [
        "109347d421413303eb1678dd9e2aa9d40acf89d2",
        "4221e2813f7a307936036e62b6a63bbda23005ee"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Jul 02 12:54:56 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Jul 02 12:54:56 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "dbbd5b860a3a26bea3376410f75f27530d9cd10b",
      "tree": "6ee3b601745dc065689b8db0d7f3f3171f5e57b3",
      "parents": [
        "651f9e7c972b58a49066081187161268bcf9237a",
        "109347d421413303eb1678dd9e2aa9d40acf89d2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 02 12:43:14 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 02 12:43:14 2012 -0700"
      },
      "message": "am 109347d4: audioflinger: fix regression in attachAuxEffect().\n\n* commit \u0027109347d421413303eb1678dd9e2aa9d40acf89d2\u0027:\n  audioflinger: fix regression in attachAuxEffect().\n"
    },
    {
      "commit": "109347d421413303eb1678dd9e2aa9d40acf89d2",
      "tree": "51837c9c8163816bb896cb067e4a4a555f507a8b",
      "parents": [
        "717e128691f083a9469a1d0e363ac6ecd5c65d58"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 02 12:31:03 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 02 12:31:03 2012 -0700"
      },
      "message": "audioflinger: fix regression in attachAuxEffect().\n\nCommit 717e1286 introduced a regression in PlaybackThread::Track::attachAuxEffect()\nwhen called with an effect ID of 0 to detach the auxiliary effect.\n\nIt is normal in this case that AudioFlinger::getEffectThread_l() returns 0.\n\nBug 6768757.\n\nChange-Id: I7430bd1aad2f68da38f7c3e4794e7ad657bfc6be\n"
    },
    {
      "commit": "651f9e7c972b58a49066081187161268bcf9237a",
      "tree": "72fc80b6ccf64a55f1ab9be64b3ca292bd34afd7",
      "parents": [
        "91ac74bb27ce99552e4bd428548ed12f7f61ddc5",
        "717e128691f083a9469a1d0e363ac6ecd5c65d58"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 01 09:33:59 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jul 01 09:33:59 2012 -0700"
      },
      "message": "am 717e1286: audioflinger: fix auxiliary effect attachment\n\n* commit \u0027717e128691f083a9469a1d0e363ac6ecd5c65d58\u0027:\n  audioflinger: fix auxiliary effect attachment\n"
    },
    {
      "commit": "717e128691f083a9469a1d0e363ac6ecd5c65d58",
      "tree": "70761520a17703d543262ebe7778f51a360d7923",
      "parents": [
        "33e28dd3c033641f4db9d1b99c7c88d6d08c61f7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 29 16:36:52 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 29 17:03:53 2012 -0700"
      },
      "message": "audioflinger: fix auxiliary effect attachment\n\nAuxiliary effects (Reverb) are global effects and as such follow\nthe default rule which is to attach them to the output thread that\nhandles music streams by default. This causes a problem when several\nthreads are eligible to handle music streams as tracks can be attached\nto either thread based on criteria unknown when teh effect is created.\n\nThe fix consists in moving the auxiliary effect if necessary when an\nAudioTrack is attached to it and this track is not on the same\noutput thread.\n\nBug 6608561.\n\nChange-Id: Ib32c3cabc731b2046aba728be1771982999c6069\n"
    },
    {
      "commit": "91ac74bb27ce99552e4bd428548ed12f7f61ddc5",
      "tree": "6bfbcf0b8cdfa231f5638b2e9eca58c271e48123",
      "parents": [
        "e6cb412b677966c25b424766dc6ceb2787d49caa",
        "4221e2813f7a307936036e62b6a63bbda23005ee"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 25 07:57:15 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 25 07:57:15 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: I1ce46fa6332f684c76c276117c7b406bdd5e9336\n"
    },
    {
      "commit": "4221e2813f7a307936036e62b6a63bbda23005ee",
      "tree": "f6b0d536de41567175259a5a7d98e43144cd99bb",
      "parents": [
        "33e28dd3c033641f4db9d1b99c7c88d6d08c61f7",
        "09e9c89978d636d48dee8bdad9c1444f035ebb4d"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Jun 22 18:21:17 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Jun 22 18:21:17 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "e6cb412b677966c25b424766dc6ceb2787d49caa",
      "tree": "6bfbcf0b8cdfa231f5638b2e9eca58c271e48123",
      "parents": [
        "5ca15ccf7336d5aa5a7b563742757fa37092eb48",
        "33e28dd3c033641f4db9d1b99c7c88d6d08c61f7"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jun 22 15:20:48 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 22 15:20:48 2012 -0700"
      },
      "message": "am 33e28dd3: Merge \"SurfaceMediaSource: keep refs to current buffers\" into jb-dev\n\n* commit \u002733e28dd3c033641f4db9d1b99c7c88d6d08c61f7\u0027:\n  SurfaceMediaSource: keep refs to current buffers\n"
    },
    {
      "commit": "33e28dd3c033641f4db9d1b99c7c88d6d08c61f7",
      "tree": "f6b0d536de41567175259a5a7d98e43144cd99bb",
      "parents": [
        "39a3113539f9bcc86a8efe562780c23ac8731098",
        "2cd25a9056cc150b9fd3ac9b0bca37a1334ffd47"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jun 22 15:18:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 22 15:18:26 2012 -0700"
      },
      "message": "Merge \"SurfaceMediaSource: keep refs to current buffers\" into jb-dev"
    },
    {
      "commit": "2cd25a9056cc150b9fd3ac9b0bca37a1334ffd47",
      "tree": "47ec6f6b47b28af67095707b65bbfef4d7dd0dbe",
      "parents": [
        "eb15716b59020f342df62bce5b293f0603b94861"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jun 22 14:42:00 2012 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jun 22 14:43:59 2012 -0700"
      },
      "message": "SurfaceMediaSource: keep refs to current buffers\n\nThis change fixes a bug in SurfaceMediaSource where it would not keep a\nreference to all of the Gralloc buffers that the video encoder is currently\nusing.\n\nBug: 6655597\nChange-Id: Ifd99976cc7ae57ed724bbf2bbcff357a39497391\n"
    },
    {
      "commit": "5ca15ccf7336d5aa5a7b563742757fa37092eb48",
      "tree": "b08937eba3171d30a27df1c07e38cb5f930baab9",
      "parents": [
        "e77c76dc57f88ec9e6b370dcba8a8c3e0684461d",
        "09e9c89978d636d48dee8bdad9c1444f035ebb4d"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 22 08:16:51 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 22 08:16:51 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: Iea91c1026e7fc3a59815e01e4e4168f875527e7c\n"
    },
    {
      "commit": "09e9c89978d636d48dee8bdad9c1444f035ebb4d",
      "tree": "50b33abb023da5b993b3b79105aabc07abea7284",
      "parents": [
        "215bf587522e5587a4b46344304e6b0beef405b5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 20 12:46:38 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Wed Jun 20 15:45:48 2012 -0700"
      },
      "message": "Revert input buffer count for the SoftAAC* decoders back to 4.\n\nThis improves the netflix bandwidth change responsiveness.\nWith the old count of 32 the audio decoder running at a higher\npriority would starve the video decoder for about 1 sec while\ndraining the input data.\n\nI haven\u0027t been able to break any stream playback using MediaCodec\nusing the lower count, even though I\u0027m sure I had a good reason\nto increase it in the first place (see bug 6478823)\n\nChange-Id: I7fd3e71794b0cc1570ea9d27d1d869ab1e1750c4\nrelated-to-bug: 6685031\n"
    },
    {
      "commit": "e77c76dc57f88ec9e6b370dcba8a8c3e0684461d",
      "tree": "b08937eba3171d30a27df1c07e38cb5f930baab9",
      "parents": [
        "ff8977f3392036b387fc2f65056bcf19f9942c9d",
        "39a3113539f9bcc86a8efe562780c23ac8731098"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 20 14:31:30 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 20 14:31:30 2012 -0700"
      },
      "message": "am 39a31135: Revert input buffer count for the SoftAAC* decoders back to 4.\n\n* commit \u002739a3113539f9bcc86a8efe562780c23ac8731098\u0027:\n  Revert input buffer count for the SoftAAC* decoders back to 4.\n"
    },
    {
      "commit": "39a3113539f9bcc86a8efe562780c23ac8731098",
      "tree": "50b33abb023da5b993b3b79105aabc07abea7284",
      "parents": [
        "eb15716b59020f342df62bce5b293f0603b94861"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 20 12:46:38 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Jun 20 12:46:38 2012 -0700"
      },
      "message": "Revert input buffer count for the SoftAAC* decoders back to 4.\n\nThis improves the netflix bandwidth change responsiveness.\nWith the old count of 32 the audio decoder running at a higher\npriority would starve the video decoder for about 1 sec while\ndraining the input data.\n\nI haven\u0027t been able to break any stream playback using MediaCodec\nusing the lower count, even though I\u0027m sure I had a good reason\nto increase it in the first place (see bug 6478823)\n\nChange-Id: I7fd3e71794b0cc1570ea9d27d1d869ab1e1750c4\nrelated-to-bug: 6685031\n"
    },
    {
      "commit": "ff8977f3392036b387fc2f65056bcf19f9942c9d",
      "tree": "de1ddcbcb5071fbc8fb169c09e93b10114345cfd",
      "parents": [
        "4862d1eaa6b3b2bad040d01fe090e8616685c12b",
        "215bf587522e5587a4b46344304e6b0beef405b5"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jun 19 06:13:22 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jun 19 06:13:22 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: Ic4989b359b302c5d72751cdebae3433064770a29\n"
    },
    {
      "commit": "4862d1eaa6b3b2bad040d01fe090e8616685c12b",
      "tree": "de1ddcbcb5071fbc8fb169c09e93b10114345cfd",
      "parents": [
        "16f07fb7bb4c284cc0b16f55fe5eabd4a4802590",
        "eb15716b59020f342df62bce5b293f0603b94861"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jun 18 10:32:49 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 18 10:32:49 2012 -0700"
      },
      "message": "am eb15716b: Change definition of warmup period\n\n* commit \u0027eb15716b59020f342df62bce5b293f0603b94861\u0027:\n  Change definition of warmup period\n"
    },
    {
      "commit": "16f07fb7bb4c284cc0b16f55fe5eabd4a4802590",
      "tree": "75fc2133fc8bf6c163664d5ca05213be4309e03d",
      "parents": [
        "fbb26f5101d9ef14251d561dba37f87d001fbbf6",
        "972af221ae7253e406e0e1ea853e56a3010ed6b1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jun 18 10:32:13 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 18 10:32:13 2012 -0700"
      },
      "message": "am 972af221: FastMixer compensates for SRC jitter in audio HAL\n\n* commit \u0027972af221ae7253e406e0e1ea853e56a3010ed6b1\u0027:\n  FastMixer compensates for SRC jitter in audio HAL\n"
    },
    {
      "commit": "215bf587522e5587a4b46344304e6b0beef405b5",
      "tree": "d230ab42f45394837dffc52deb8d31c8fef9c1c1",
      "parents": [
        "eb15716b59020f342df62bce5b293f0603b94861",
        "c92a2cc57a7d17103f252629626a0f9c0a6b1ccb"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Sat Jun 16 07:01:55 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Sat Jun 16 07:01:55 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "eb15716b59020f342df62bce5b293f0603b94861",
      "tree": "d230ab42f45394837dffc52deb8d31c8fef9c1c1",
      "parents": [
        "972af221ae7253e406e0e1ea853e56a3010ed6b1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 14:59:07 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 15 14:53:31 2012 -0700"
      },
      "message": "Change definition of warmup period\n\nPreviously, warmup was considered done as soon as any write() took\nmore than 0.5 nominal cycle time.  In practice, this was always the\nfirst write() that turned on power to the output path, and it didn\u0027t\naccurately account for filling the full kernel buffer queue, or for\nbuffering in the HAL sample rate conversion.\n\nNow warmup is considered done when a write() _after_ the first write\ntakes more than 0.5 nominal cycle time.\n\nThis will throttle the initial pull rate after coming out of standby.\nWhen combined with another change to throttle the pull rate for\ndevices with HAL sample rate conversion, it may help reduce some of the\nnotification glitches.  The only downside is that it will increase the\nwarmup time a bit.\n\nBug: 6508317, 6650846, 6607056\nChange-Id: I39f324c5195578170a55308e9601d3a1b41db3e0\n"
    },
    {
      "commit": "972af221ae7253e406e0e1ea853e56a3010ed6b1",
      "tree": "77175ced586c67275d09b73524b935b15eab3090",
      "parents": [
        "fc42e16d96b7e1b18b573f40df1319c56f8ab933"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 17:14:03 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 15 10:21:47 2012 -0700"
      },
      "message": "FastMixer compensates for SRC jitter in audio HAL\n\nForce a sleep if audio HAL write() returns too quickly.\n\nBug: 6661275\nChange-Id: Ie810f5a087b89fb24dab229a0e500af1dee53571\n"
    },
    {
      "commit": "fbb26f5101d9ef14251d561dba37f87d001fbbf6",
      "tree": "2ce468c14b9fb9f036cb2b01aeb50d002358b3ef",
      "parents": [
        "ff0fcb2628613953f454875006bfb78c3fc087d3",
        "fc42e16d96b7e1b18b573f40df1319c56f8ab933"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 15 10:16:34 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 15 10:16:34 2012 -0700"
      },
      "message": "am fc42e16d: Merge \"Fix track selection code in AwesomePlayer\" into jb-dev\n\n* commit \u0027fc42e16d96b7e1b18b573f40df1319c56f8ab933\u0027:\n  Fix track selection code in AwesomePlayer\n"
    },
    {
      "commit": "fc42e16d96b7e1b18b573f40df1319c56f8ab933",
      "tree": "efee1bad35039387d2bd3653c67793b650c83de4",
      "parents": [
        "0a14c4ce1a41bc09eb7855fa531a3af629a69139",
        "8a15dfba686b50f2b8163af247e236d52150321f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 15 10:14:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 15 10:14:04 2012 -0700"
      },
      "message": "Merge \"Fix track selection code in AwesomePlayer\" into jb-dev"
    },
    {
      "commit": "ff0fcb2628613953f454875006bfb78c3fc087d3",
      "tree": "c7646a04449446425a75e857196fc60c4bd2048b",
      "parents": [
        "59b9dffe570aac7c3f3826b64b03ad9cff0c59f0",
        "0a14c4ce1a41bc09eb7855fa531a3af629a69139"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 15 08:23:44 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 15 08:23:44 2012 -0700"
      },
      "message": "am 0a14c4ce: Make CPU frequency statistics optional\n\n* commit \u00270a14c4ce1a41bc09eb7855fa531a3af629a69139\u0027:\n  Make CPU frequency statistics optional\n"
    },
    {
      "commit": "8a15dfba686b50f2b8163af247e236d52150321f",
      "tree": "9f8f10796d2854cb018c6e79b37ae00aa27f3327",
      "parents": [
        "362ebcbf100f7fccd37551c77e67c4faa7241b63"
      ],
      "author": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Fri Jun 15 13:02:45 2012 +0900"
      },
      "committer": {
        "name": "Insun Kang",
        "email": "insun@google.com",
        "time": "Fri Jun 15 13:02:45 2012 +0900"
      },
      "message": "Fix track selection code in AwesomePlayer\n\nChange-Id: I1c5a2f13f562a0ba253a93b4346cbe2c60099ddd\nrelated-to-bug: 6671977\n"
    },
    {
      "commit": "0a14c4ce1a41bc09eb7855fa531a3af629a69139",
      "tree": "dfde5cdadeea7bbbdb8e50477ca35ac4768693f0",
      "parents": [
        "362ebcbf100f7fccd37551c77e67c4faa7241b63"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 14:58:49 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 17:49:31 2012 -0700"
      },
      "message": "Make CPU frequency statistics optional\n\nCertain CPUs with dynamic cluster swapping and hotplug\ndon\u0027t report CPU frequency accurately.  The file descriptors\nused to read the frequency become stale and report bogus data.\nSo make this feature a build time option for debugging only.\nThis will also improve performance of the fast mixer loop.\n\nChange-Id: I602f81ec3281a37992769208be08084ed1469e8c\n"
    },
    {
      "commit": "59b9dffe570aac7c3f3826b64b03ad9cff0c59f0",
      "tree": "d5d52908b9a30cc5513566b690c582a5eed570e6",
      "parents": [
        "be8cf4a280b0aa786ba1aa3dad85d51125e0a86f",
        "362ebcbf100f7fccd37551c77e67c4faa7241b63"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 17:26:44 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 17:26:44 2012 -0700"
      },
      "message": "am 362ebcbf: DO NOT MERGE Remove log spam for fast track denied\n\n* commit \u0027362ebcbf100f7fccd37551c77e67c4faa7241b63\u0027:\n  DO NOT MERGE Remove log spam for fast track denied\n"
    },
    {
      "commit": "362ebcbf100f7fccd37551c77e67c4faa7241b63",
      "tree": "62291e1b6f9940cec2b8e6a67357744cd1ee134f",
      "parents": [
        "7b4de10199f3a1803350e9a65baa671874d9c2f1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu May 24 08:44:00 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 15:34:17 2012 -0700"
      },
      "message": "DO NOT MERGE Remove log spam for fast track denied\n\nBug: 6531054\nChange-Id: Iedf58e810a157aae88b5900da27c81054c437058\n"
    },
    {
      "commit": "be8cf4a280b0aa786ba1aa3dad85d51125e0a86f",
      "tree": "270415282de1713cadb44d83d128b6bbe68d389f",
      "parents": [
        "4ebbabda6584aeb5ad2714e7db1702d00e84dad4",
        "7b4de10199f3a1803350e9a65baa671874d9c2f1"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jun 14 13:10:42 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 13:10:42 2012 -0700"
      },
      "message": "am 7b4de101: Merge \"stagefright: set scaling mode for blank frames\" into jb-dev\n\n* commit \u00277b4de10199f3a1803350e9a65baa671874d9c2f1\u0027:\n  stagefright: set scaling mode for blank frames\n"
    },
    {
      "commit": "7b4de10199f3a1803350e9a65baa671874d9c2f1",
      "tree": "aeca274c77e975cc9c6acd2500dca0172c1185d4",
      "parents": [
        "192cbbad773979a6fe3b5a0c223356de4fc3309c",
        "1d5ac80d0c6d3deabcc9e9b4abc9e3ef536aeb27"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jun 14 13:08:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 14 13:08:08 2012 -0700"
      },
      "message": "Merge \"stagefright: set scaling mode for blank frames\" into jb-dev"
    },
    {
      "commit": "4ebbabda6584aeb5ad2714e7db1702d00e84dad4",
      "tree": "275cd8ce57285b2bdcfa7e7f3668bf5d26de5718",
      "parents": [
        "c3c044ab1b2b5f9bebcff610795b6a1a9b60d01b",
        "192cbbad773979a6fe3b5a0c223356de4fc3309c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 14 12:12:52 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 12:12:52 2012 -0700"
      },
      "message": "am 192cbbad: Fix audio track pause.\n\n* commit \u0027192cbbad773979a6fe3b5a0c223356de4fc3309c\u0027:\n  Fix audio track pause.\n"
    },
    {
      "commit": "1d5ac80d0c6d3deabcc9e9b4abc9e3ef536aeb27",
      "tree": "96e6e894350c7b69bd4bc79f5f1ce129430c2004",
      "parents": [
        "82233b4b5bee06f11618a558ae465abbfdedfd6e"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Jun 13 19:13:16 2012 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Jun 14 11:42:29 2012 -0700"
      },
      "message": "stagefright: set scaling mode for blank frames\n\nThis change sets the ANativeWindow scaling mode before pushing the blank frames\nduring decoder tear down.\n\nBug: 6603254\nChange-Id: Ic64011645e2d3671b4a8d302ac7f39e6fd3affcd\n"
    },
    {
      "commit": "192cbbad773979a6fe3b5a0c223356de4fc3309c",
      "tree": "23bdbff8fd2a2b88a63a54287c6112908b050fb7",
      "parents": [
        "82233b4b5bee06f11618a558ae465abbfdedfd6e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 13 08:38:36 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 14 10:56:59 2012 -0700"
      },
      "message": "Fix audio track pause.\n\nAudioTrack::pause() should signal the control block condition\nto release threads waiting for available buffers in obtainBuffer().\nOtherwise the behavior relies on the timout on the condition\nor the fact that audioflinger will mix a new audio buffer while executing\nthe pause.\n\nBug 6653769.\n\nChange-Id: I5f8f73c471fe306070f30b814f32fd4b4dc1d575\n"
    },
    {
      "commit": "c3c044ab1b2b5f9bebcff610795b6a1a9b60d01b",
      "tree": "0522cc1f71ee6bed7943f89469e4912ef4a0fc49",
      "parents": [
        "ea1d16da8e28b30a58090e6372ce12d40b99c21f",
        "82233b4b5bee06f11618a558ae465abbfdedfd6e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 14 09:54:09 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 09:54:09 2012 -0700"
      },
      "message": "am 82233b4b: Merge \"Better handle invalid duration in Xing/VBRI tags\" into jb-dev\n\n* commit \u002782233b4b5bee06f11618a558ae465abbfdedfd6e\u0027:\n  Better handle invalid duration in Xing/VBRI tags\n"
    },
    {
      "commit": "82233b4b5bee06f11618a558ae465abbfdedfd6e",
      "tree": "3288c514f9b026c748b3f5ecf72fbe7281d55172",
      "parents": [
        "e6adde403480333b613452ae0df442df9da4a5b2",
        "5fd7d3a23316ec0d2320fece85201859b52c2aef"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 14 09:51:49 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 14 09:51:49 2012 -0700"
      },
      "message": "Merge \"Better handle invalid duration in Xing/VBRI tags\" into jb-dev"
    },
    {
      "commit": "ea1d16da8e28b30a58090e6372ce12d40b99c21f",
      "tree": "24624e5005881724a2675a6787e2d82f69cdbd55",
      "parents": [
        "48a0bfa6f731386f2794ff36d6677d56e98fc6ea",
        "e6adde403480333b613452ae0df442df9da4a5b2"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 08:43:58 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 08:43:58 2012 -0700"
      },
      "message": "am e6adde40: Merge \"Shorten dumpsys media.audio_flinger output\" into jb-dev\n\n* commit \u0027e6adde403480333b613452ae0df442df9da4a5b2\u0027:\n  Shorten dumpsys media.audio_flinger output\n"
    },
    {
      "commit": "48a0bfa6f731386f2794ff36d6677d56e98fc6ea",
      "tree": "36deb7b4e31a25a8a4b313de8ffdecd1d8ae9aaa",
      "parents": [
        "cc0df657cdc8316c2b816c562f269be1706f00ea",
        "49dd5cf3469cd755321f8ec10013ad4fcfaf723d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 08:43:56 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 14 08:43:56 2012 -0700"
      },
      "message": "am 49dd5cf3: Merge \"Log track name on obtain/releaseBuffer warnings\" into jb-dev\n\n* commit \u002749dd5cf3469cd755321f8ec10013ad4fcfaf723d\u0027:\n  Log track name on obtain/releaseBuffer warnings\n"
    },
    {
      "commit": "e6adde403480333b613452ae0df442df9da4a5b2",
      "tree": "f32738e98444c0eaa7d696306d6bf5f850524f30",
      "parents": [
        "49dd5cf3469cd755321f8ec10013ad4fcfaf723d",
        "868c0abe9f26852c217bc201b337e72c68f829b8"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 08:41:54 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 14 08:41:54 2012 -0700"
      },
      "message": "Merge \"Shorten dumpsys media.audio_flinger output\" into jb-dev"
    },
    {
      "commit": "49dd5cf3469cd755321f8ec10013ad4fcfaf723d",
      "tree": "2f849ff8d42627300eb0cd221e3bc04716db889e",
      "parents": [
        "e20435de10f63af812da9d4f801b61a8817733a0",
        "0c9d26d187017f7fb028ab52a0fbc6395142faa4"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 14 08:41:38 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 14 08:41:38 2012 -0700"
      },
      "message": "Merge \"Log track name on obtain/releaseBuffer warnings\" into jb-dev"
    },
    {
      "commit": "c92a2cc57a7d17103f252629626a0f9c0a6b1ccb",
      "tree": "5f7a289cf037c56a425b18854084b8cd08660b9c",
      "parents": [
        "e20435de10f63af812da9d4f801b61a8817733a0",
        "6ba1b84527e516e6ab47a72265c63d34ad06e958"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Jun 14 07:01:45 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Thu Jun 14 07:01:45 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "cc0df657cdc8316c2b816c562f269be1706f00ea",
      "tree": "d8bbb1b8a1431846f7adc665d88cbe5f6dd4c654",
      "parents": [
        "8fe9840be2ce6aac8a008fc15cb641f858b5a32e",
        "e20435de10f63af812da9d4f801b61a8817733a0"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 20:51:33 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 13 20:51:33 2012 -0700"
      },
      "message": "am e20435de: Merge \"Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/\" into jb-dev\n\n* commit \u0027e20435de10f63af812da9d4f801b61a8817733a0\u0027:\n  Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/\n"
    },
    {
      "commit": "e20435de10f63af812da9d4f801b61a8817733a0",
      "tree": "5f7a289cf037c56a425b18854084b8cd08660b9c",
      "parents": [
        "cac467b3af9235229522a134d2c57e4fa605ba2f",
        "3d51d5cb53cc630709a0ba78d0e60501a675f2d5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 20:49:34 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 13 20:49:34 2012 -0700"
      },
      "message": "Merge \"Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/\" into jb-dev"
    },
    {
      "commit": "8fe9840be2ce6aac8a008fc15cb641f858b5a32e",
      "tree": "6b92f2c30766f11079bc8de4d4e24611216b6827",
      "parents": [
        "02bd296991e7e8a17939419cf197a6747ea441de",
        "cac467b3af9235229522a134d2c57e4fa605ba2f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 17:01:22 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 13 17:01:22 2012 -0700"
      },
      "message": "am cac467b3: Merge \"Fix one of the potential ANR issues from AwesomePlayer\" into jb-dev\n\n* commit \u0027cac467b3af9235229522a134d2c57e4fa605ba2f\u0027:\n  Fix one of the potential ANR issues from AwesomePlayer\n"
    },
    {
      "commit": "cac467b3af9235229522a134d2c57e4fa605ba2f",
      "tree": "af953cbb391ffdb16c48caaa0ce0f6d05f236807",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90",
        "ce3d3ef78d6512cc272d469e236fba4fca1189b0"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 16:59:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 13 16:59:15 2012 -0700"
      },
      "message": "Merge \"Fix one of the potential ANR issues from AwesomePlayer\" into jb-dev"
    },
    {
      "commit": "5fd7d3a23316ec0d2320fece85201859b52c2aef",
      "tree": "eb812fe337a080a3f3709e2fbbd992813bc5583c",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 13 08:51:00 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 13 16:29:52 2012 -0700"
      },
      "message": "Better handle invalid duration in Xing/VBRI tags\n\nb/6654637\n\nChange-Id: Ie92eddd84ef5914b77dbadaacd80b4de6cd66e1c\n"
    },
    {
      "commit": "3d51d5cb53cc630709a0ba78d0e60501a675f2d5",
      "tree": "c01dc8011b4e0061343c8b60b0da3508c63ae822",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 18:10:35 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jun 13 15:18:29 2012 -0700"
      },
      "message": "Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/\n\nChange-Id: I0a3af3e2abdedebd5934f3d941d01c32cfc75e26\nrelated-to-bug: 6647465\n"
    },
    {
      "commit": "868c0abe9f26852c217bc201b337e72c68f829b8",
      "tree": "1ffcd485ce7c69bc424fc7fafb00412effd9c126",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 14:59:17 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 15:14:16 2012 -0700"
      },
      "message": "Shorten dumpsys media.audio_flinger output\n\nDon\u0027t include in FastMixer if it\u0027s not present.\nThis removes confusing clutter especially for devices\nwith a separate deep buffer output thread, or for the\nduplicating thread and A2DP output thread.\n\nChange-Id: I84933f5555593256f11ba0895ec915c09cf16963\n"
    },
    {
      "commit": "0c9d26d187017f7fb028ab52a0fbc6395142faa4",
      "tree": "35fd2f6babef082b85058fd27a69bda048687295",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu May 31 14:35:01 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 13 15:12:42 2012 -0700"
      },
      "message": "Log track name on obtain/releaseBuffer warnings\n\nThis should help diagnose problems by allowing us to correlate\nthe logs with the dumpsys media.audio_flinger output.\n\nChange-Id: I8c7c592b4f87d13b0f29c66ce7a2f301a0f063c9\n"
    },
    {
      "commit": "6ba1b84527e516e6ab47a72265c63d34ad06e958",
      "tree": "23334bf4494a540de3ee606859106c8166de55ba",
      "parents": [
        "b4ea1ab821d652cb080910d4081f5f1318597a90",
        "e836757109be3e8fa8e187124573c100beec4e6f"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Wed Jun 13 08:37:36 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Wed Jun 13 08:37:36 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "ce3d3ef78d6512cc272d469e236fba4fca1189b0",
      "tree": "dccc705bd4276553fb1f2fe661bde9732fb40d29",
      "parents": [
        "958f463c4cddba6437c86d5bfef68167f767ee66"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 17:18:37 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 18:48:36 2012 -0700"
      },
      "message": "Fix one of the potential ANR issues from AwesomePlayer\n\nChange-Id: I8ac7bbb5fe219f65bdbdd223538fbac0575e2957\nrelated-to-bug: 6565826\n"
    },
    {
      "commit": "02bd296991e7e8a17939419cf197a6747ea441de",
      "tree": "dd72a9f8fc044b802a4ae93415b667e41fb385bf",
      "parents": [
        "92a6141ea0bae283c898a8542604f6b47e226fad",
        "b4ea1ab821d652cb080910d4081f5f1318597a90"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 12 18:40:25 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 18:40:25 2012 -0700"
      },
      "message": "am b4ea1ab8: Merge \"stagefright: fix AudioRecord callback buffer size\" into jb-dev\n\n* commit \u0027b4ea1ab821d652cb080910d4081f5f1318597a90\u0027:\n  stagefright: fix AudioRecord callback buffer size\n"
    },
    {
      "commit": "b4ea1ab821d652cb080910d4081f5f1318597a90",
      "tree": "23334bf4494a540de3ee606859106c8166de55ba",
      "parents": [
        "958f463c4cddba6437c86d5bfef68167f767ee66",
        "e49f2b424318aa8e830e7a1338e5e32ab82992f9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 12 18:33:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 18:33:47 2012 -0700"
      },
      "message": "Merge \"stagefright: fix AudioRecord callback buffer size\" into jb-dev"
    },
    {
      "commit": "92a6141ea0bae283c898a8542604f6b47e226fad",
      "tree": "0b0ceeccd5aa6fb3e2ec989f3e555fe80c70b1c1",
      "parents": [
        "2f2366fb763862b8063e51b6e0fdee9e25387f1a",
        "958f463c4cddba6437c86d5bfef68167f767ee66"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 18:15:18 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 18:15:18 2012 -0700"
      },
      "message": "am 958f463c: Add NOTICE and MODULE_LICENSE_APACHE2 for libstagefright_soft_h264dec and libstagefright_soft_vpxdec\n\n* commit \u0027958f463c4cddba6437c86d5bfef68167f767ee66\u0027:\n  Add NOTICE and MODULE_LICENSE_APACHE2 for libstagefright_soft_h264dec and libstagefright_soft_vpxdec\n"
    },
    {
      "commit": "958f463c4cddba6437c86d5bfef68167f767ee66",
      "tree": "f575c321ae3b78063e75afd6a8a15106391e8a08",
      "parents": [
        "bd961f4c4d51c4fcfc4722d02383eb4263ef0ac5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 17:40:43 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 17:41:54 2012 -0700"
      },
      "message": "Add NOTICE and MODULE_LICENSE_APACHE2 for libstagefright_soft_h264dec and libstagefright_soft_vpxdec\n\nChange-Id: Id4f1ef8dfc21731846a9862b8d12940a92fe99bb\nrelated-to-bug: 6647465\n"
    },
    {
      "commit": "e49f2b424318aa8e830e7a1338e5e32ab82992f9",
      "tree": "7c524902e7e604941ffdb902d212b143c978cef2",
      "parents": [
        "10cf121f7285e23c37264dab3bad7cffefd754b1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 12 17:09:30 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 12 17:09:30 2012 -0700"
      },
      "message": "stagefright: fix AudioRecord callback buffer size\n\nMake sure that the maximum number of frames passed to\nAudioSource by the AudioRecord callback always fits within\nthe maximum buffer size defined by kMaxBufferSize.\n\nAlso make sure that the total AudioRecord buffer size is more\nthan the minimum required.\n\nChange-Id: I26a1f998e0cf75ac88b02e67ec9d8db3c0cca193\n"
    },
    {
      "commit": "2f2366fb763862b8063e51b6e0fdee9e25387f1a",
      "tree": "369285405498126a5172a23581dc5d590b61fa45",
      "parents": [
        "8f1dd6fdc2f788492e5ca77344eac13755c304ff",
        "bd961f4c4d51c4fcfc4722d02383eb4263ef0ac5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 14:22:57 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 14:22:57 2012 -0700"
      },
      "message": "am bd961f4c: Merge \"Add NOTICE and MODULE_LICENSE_APATCH2 to libvideoeditor\" into jb-dev\n\n* commit \u0027bd961f4c4d51c4fcfc4722d02383eb4263ef0ac5\u0027:\n  Add NOTICE and MODULE_LICENSE_APATCH2 to libvideoeditor\n"
    },
    {
      "commit": "bd961f4c4d51c4fcfc4722d02383eb4263ef0ac5",
      "tree": "232c0180443bd455cb7040c41dddc129de45775b",
      "parents": [
        "10cf121f7285e23c37264dab3bad7cffefd754b1",
        "4832fedbfe2c18c469ab198d9ac3c349cb797527"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 14:20:44 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 14:20:44 2012 -0700"
      },
      "message": "Merge \"Add NOTICE and MODULE_LICENSE_APATCH2 to libvideoeditor\" into jb-dev"
    },
    {
      "commit": "4832fedbfe2c18c469ab198d9ac3c349cb797527",
      "tree": "b599363d93d7bb3dee989318a4e1f19786d1950e",
      "parents": [
        "58c8db6b7667db7a3bdb9b4bdd973091a5b0202f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 13:51:12 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 14:10:12 2012 -0700"
      },
      "message": "Add NOTICE and MODULE_LICENSE_APATCH2 to libvideoeditor\n\nChange-Id: I19308c5fb0f39f8e696092186f4386e3dad06894\nrelated-to-bug: 6647465\n"
    },
    {
      "commit": "8f1dd6fdc2f788492e5ca77344eac13755c304ff",
      "tree": "6e0aab98481a2c6ace6a578ed08e4786247f4f83",
      "parents": [
        "c6a957fca84ee2a673a3b7363b481afcf4b7e784",
        "10cf121f7285e23c37264dab3bad7cffefd754b1"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Jun 12 12:46:17 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 12:46:17 2012 -0700"
      },
      "message": "am 10cf121f: Merge \"Update make file\" into jb-dev\n\n* commit \u002710cf121f7285e23c37264dab3bad7cffefd754b1\u0027:\n  Update make file\n"
    },
    {
      "commit": "c6a957fca84ee2a673a3b7363b481afcf4b7e784",
      "tree": "f25fa64509518b3a4bd126dddbe17064a25dd634",
      "parents": [
        "b8d07d4b8dce11cfb293e4b0f2232ec860e9ccd5",
        "b7706712938c55706c87724af7f6d2f2156b8d1b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 12 12:44:45 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 12:44:45 2012 -0700"
      },
      "message": "am b7706712: Merge \"Fix gapless for deep buffers\" into jb-dev\n\n* commit \u0027b7706712938c55706c87724af7f6d2f2156b8d1b\u0027:\n  Fix gapless for deep buffers\n"
    },
    {
      "commit": "b8d07d4b8dce11cfb293e4b0f2232ec860e9ccd5",
      "tree": "cbc7edb6896bd47cff5fbe038d805d569261d6c4",
      "parents": [
        "ddc757cacf0336f028aec11380387cfdf3b3089c",
        "58c8db6b7667db7a3bdb9b4bdd973091a5b0202f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 12 12:43:05 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 12:43:05 2012 -0700"
      },
      "message": "am 58c8db6b: Merge \"Fix gapless playback\" into jb-dev\n\n* commit \u002758c8db6b7667db7a3bdb9b4bdd973091a5b0202f\u0027:\n  Fix gapless playback\n"
    },
    {
      "commit": "ddc757cacf0336f028aec11380387cfdf3b3089c",
      "tree": "eb80377f40482ff71971dc6c883a59c80eeeedce",
      "parents": [
        "57d9b72812d25dff1c33e37b8475a469accd0919",
        "8a61dc02dbbc325dee51f2e9c9f0bbc238759ec5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Jun 12 12:42:11 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 12:42:11 2012 -0700"
      },
      "message": "am 8a61dc02: Merge \"Revert \"Added some informational log messages to track down ANR related issues\"\" into jb-dev\n\n* commit \u00278a61dc02dbbc325dee51f2e9c9f0bbc238759ec5\u0027:\n  Revert \"Added some informational log messages to track down ANR related issues\"\n"
    },
    {
      "commit": "57d9b72812d25dff1c33e37b8475a469accd0919",
      "tree": "13393f925fd6ae5780ccf342cca96a36492ca430",
      "parents": [
        "b5325c8a8fff4d735c24d9a8138e4213ee0833d5",
        "c15d6657a17d7cef91f800f40d11760e2e7340af"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Jun 12 12:41:14 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 12 12:41:14 2012 -0700"
      },
      "message": "am c15d6657: Add audio watchdog thread\n\n* commit \u0027c15d6657a17d7cef91f800f40d11760e2e7340af\u0027:\n  Add audio watchdog thread\n"
    },
    {
      "commit": "10cf121f7285e23c37264dab3bad7cffefd754b1",
      "tree": "c627048a3a4bd71a7d73c5993d52960c6921261b",
      "parents": [
        "b7706712938c55706c87724af7f6d2f2156b8d1b",
        "c68f4a226fc5af54a882b0603d3051793a781037"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Jun 12 12:23:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 12:23:20 2012 -0700"
      },
      "message": "Merge \"Update make file\" into jb-dev"
    },
    {
      "commit": "e836757109be3e8fa8e187124573c100beec4e6f",
      "tree": "2199d3c0332e761cc588c5cb9a59c8a0c763d936",
      "parents": [
        "58c8db6b7667db7a3bdb9b4bdd973091a5b0202f",
        "553b2babf5010e0972d6aa7d11c84383835672d9"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Tue Jun 12 11:21:43 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Tue Jun 12 11:21:43 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "c68f4a226fc5af54a882b0603d3051793a781037",
      "tree": "6d83447e12f8dd67615035ad518b682f77593d45",
      "parents": [
        "8a61dc02dbbc325dee51f2e9c9f0bbc238759ec5"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Jun 12 10:41:14 2012 -0700"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Jun 12 10:41:14 2012 -0700"
      },
      "message": "Update make file\n\nChange-Id: I7dbd128245f584df2689457df0dd12ce888cf8ef\n"
    },
    {
      "commit": "b7706712938c55706c87724af7f6d2f2156b8d1b",
      "tree": "421d7fdd51b19fa274d7db1ddd879e72165d4a6c",
      "parents": [
        "58c8db6b7667db7a3bdb9b4bdd973091a5b0202f",
        "d791e094da5698c787f8db28ca5d5d490c512cf1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 12 07:52:30 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 07:52:30 2012 -0700"
      },
      "message": "Merge \"Fix gapless for deep buffers\" into jb-dev"
    },
    {
      "commit": "d791e094da5698c787f8db28ca5d5d490c512cf1",
      "tree": "59cac1f9eff55108cc81adee71c618e3844cb68e",
      "parents": [
        "67295b543c16ed7c77b67f859d598fe7b4571660"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 11 17:00:59 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 11 17:00:59 2012 -0700"
      },
      "message": "Fix gapless for deep buffers\n\nForward current flags to next output.\nb/6645676\n\nChange-Id: I584f7a67472d99cbd6bc38f3fe84763331d115d1\n"
    },
    {
      "commit": "58c8db6b7667db7a3bdb9b4bdd973091a5b0202f",
      "tree": "2199d3c0332e761cc588c5cb9a59c8a0c763d936",
      "parents": [
        "8a61dc02dbbc325dee51f2e9c9f0bbc238759ec5",
        "67295b543c16ed7c77b67f859d598fe7b4571660"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 11 16:04:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 11 16:04:56 2012 -0700"
      },
      "message": "Merge \"Fix gapless playback\" into jb-dev"
    },
    {
      "commit": "67295b543c16ed7c77b67f859d598fe7b4571660",
      "tree": "ce4810e22cedaec06f3d7ada9f1b5f5e182df506",
      "parents": [
        "c15d6657a17d7cef91f800f40d11760e2e7340af"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 11 14:52:53 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jun 11 15:10:48 2012 -0700"
      },
      "message": "Fix gapless playback\n\nOn some devices the actual framecount per buffer of an AudioTrack\nwill be different than what was requested, which prevented the\ntrack from being reused. Now we create a new AudioTrack with the\nrequested parameters, and then compare it to the track we already\nhave. If they match, we throw away the new track and reuse the\nexisting one.\nb/6644559\n\nChange-Id: Id3e8c4460436f52e59b98ecaeb01c94f02877c1d\n"
    },
    {
      "commit": "b5325c8a8fff4d735c24d9a8138e4213ee0833d5",
      "tree": "b58f6ebbd89a3b25d25fc9095b87f488a2571e79",
      "parents": [
        "7f9b21922e176f0d28a0932b3e402dc2f7edafbd"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed May 23 15:01:54 2012 +0300"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Jun 11 14:26:50 2012 -0700"
      },
      "message": "stagefright aacenc: Move system headers before local headers\n\nThis avoids issues with the encoder\u0027s own definition of __inline,\nwhich conflicts with headers brought in by string.h in glibc.\n\nChange-Id: I9e3fbf8d892529940ea67a46e67a9abe71d9c5fa\n"
    },
    {
      "commit": "8a61dc02dbbc325dee51f2e9c9f0bbc238759ec5",
      "tree": "1b0e4a5dcd07dab1fcc2738ff93aee27ba62d089",
      "parents": [
        "c15d6657a17d7cef91f800f40d11760e2e7340af",
        "01e5b5699fb049bedbb7e156fbf7f5952c39130d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 11 13:35:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 11 13:35:06 2012 -0700"
      },
      "message": "Merge \"Revert \"Added some informational log messages to track down ANR related issues\"\" into jb-dev"
    },
    {
      "commit": "c15d6657a17d7cef91f800f40d11760e2e7340af",
      "tree": "c4346cb0fcde7483e42900aecce64df96250889b",
      "parents": [
        "b7acdfb8068bf408ed859dfdd441b4a8722eb12a"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed May 30 14:52:57 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jun 11 11:39:54 2012 -0700"
      },
      "message": "Add audio watchdog thread\n\nChange-Id: I4ed62087bd6554179abb8258d2da606050e762c0\n"
    },
    {
      "commit": "01e5b5699fb049bedbb7e156fbf7f5952c39130d",
      "tree": "957327f28363797c3de5af0a3837a42cef172aa2",
      "parents": [
        "b7acdfb8068bf408ed859dfdd441b4a8722eb12a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 11 10:49:55 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 11 10:49:55 2012 -0700"
      },
      "message": "Revert \"Added some informational log messages to track down ANR related issues\"\n\nThis reverts commit c558fa89016ba9583049b84dc57e66a913cabde8.\n\nrelated-to-bug: 6565826\n"
    },
    {
      "commit": "7f9b21922e176f0d28a0932b3e402dc2f7edafbd",
      "tree": "6011b5ee492209521ec470bab3c6521fef915dd1",
      "parents": [
        "93eb01fd39e31b7532932f60828abf11a494fb8f",
        "553b2babf5010e0972d6aa7d11c84383835672d9"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 11 09:20:56 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 11 09:20:56 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: Id132825de97a186047a6189a92abde9f5c087a5a\n"
    },
    {
      "commit": "553b2babf5010e0972d6aa7d11c84383835672d9",
      "tree": "ad3dcda5ebcfe84fee6143c6e35e1fe22a7c6f3a",
      "parents": [
        "b7acdfb8068bf408ed859dfdd441b4a8722eb12a",
        "a2d00e1b6634af9867737c74a7eba9dbe234c128"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Jun 11 07:01:48 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Mon Jun 11 07:01:48 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "93eb01fd39e31b7532932f60828abf11a494fb8f",
      "tree": "6011b5ee492209521ec470bab3c6521fef915dd1",
      "parents": [
        "281a5040c92ff652d890b66e3ed9c081da39ee15"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Jan 12 14:45:41 2012 +0200"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jun 08 14:32:01 2012 -0700"
      },
      "message": "stagefright aacenc: Add parentheses in expression with mixed \u0026\u0026 and ||\n\nThis doesn\u0027t maintain the exact behaviour, but seems closer to\nwhat the original author probably intended.\n\nThis avoids a warning.\n\nChange-Id: I191292faa0a25f715f2b7d46ec770827e2ac0b7b\n"
    },
    {
      "commit": "281a5040c92ff652d890b66e3ed9c081da39ee15",
      "tree": "ae234b1e0bc70d38c65d81e37feef2a06ef82a02",
      "parents": [
        "ea5008d8abfdf1479b4efa266cdb7c842d168aa9",
        "b7acdfb8068bf408ed859dfdd441b4a8722eb12a"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 08 12:40:18 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 08 12:40:18 2012 -0700"
      },
      "message": "am b7acdfb8: Merge \"Fix green or corrupted video frames in the exported movies\" into jb-dev\n\n* commit \u0027b7acdfb8068bf408ed859dfdd441b4a8722eb12a\u0027:\n  Fix green or corrupted video frames in the exported movies\n"
    },
    {
      "commit": "b7acdfb8068bf408ed859dfdd441b4a8722eb12a",
      "tree": "ad3dcda5ebcfe84fee6143c6e35e1fe22a7c6f3a",
      "parents": [
        "28ed2f93324988767b5658eba7c1fa781a275183",
        "3e1e78ccd5936111f31a709592f11aa7c677c42d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jun 08 12:37:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 08 12:37:50 2012 -0700"
      },
      "message": "Merge \"Fix green or corrupted video frames in the exported movies\" into jb-dev"
    },
    {
      "commit": "a2d00e1b6634af9867737c74a7eba9dbe234c128",
      "tree": "07ba39f61d41aa6ff2af76dc2c9122a102c92059",
      "parents": [
        "231d20944fee81328985145d40c3becc38f3b43c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 07 10:17:54 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Jun 08 11:40:51 2012 -0700"
      },
      "message": "Reduce underruns in screen off, esp. with EQ\n\nAdd MonoPipe APIs to specify setpoint.\nUse screen state to configure pipe setpoint.\nFix a long-standing bug where pipe sleep time was excessive,\n  which interacted poorly with governor and low clock frequencies.\n  Now it deducts the elapsed time since last write(),\n  which was significant when there was EQ and low clock frequency.\n\nBug: 6618373\nChange-Id: I6f3b0072c2244aeb033ef0795ad164491a164ff5\n"
    },
    {
      "commit": "ea5008d8abfdf1479b4efa266cdb7c842d168aa9",
      "tree": "d963ca5cf87c18f8d14d6c1cce77edb9f56c96ac",
      "parents": [
        "98e2e030231ce99a4796d34d39a7517078d6735e",
        "28ed2f93324988767b5658eba7c1fa781a275183"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 08 10:28:45 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 08 10:28:45 2012 -0700"
      },
      "message": "am 28ed2f93: Reduce underruns in screen off, esp. with EQ\n\n* commit \u002728ed2f93324988767b5658eba7c1fa781a275183\u0027:\n  Reduce underruns in screen off, esp. with EQ\n"
    },
    {
      "commit": "28ed2f93324988767b5658eba7c1fa781a275183",
      "tree": "07ba39f61d41aa6ff2af76dc2c9122a102c92059",
      "parents": [
        "a4f7e0e9a0e92a063f1b3a08988cf46e2cf1fa94"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 07 10:17:54 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jun 08 10:09:22 2012 -0700"
      },
      "message": "Reduce underruns in screen off, esp. with EQ\n\nAdd MonoPipe APIs to specify setpoint.\nUse screen state to configure pipe setpoint.\nFix a long-standing bug where pipe sleep time was excessive,\n  which interacted poorly with governor and low clock frequencies.\n  Now it deducts the elapsed time since last write(),\n  which was significant when there was EQ and low clock frequency.\n\nBug: 6618373\nChange-Id: I6f3b0072c2244aeb033ef0795ad164491a164ff5\n"
    },
    {
      "commit": "231d20944fee81328985145d40c3becc38f3b43c",
      "tree": "007deb0f276a01d2276a953d2a493cf4f7d11d50",
      "parents": [
        "a4f7e0e9a0e92a063f1b3a08988cf46e2cf1fa94",
        "1a51503b6f71c4f934c6f54ec99a4b87a8ddf052"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Jun 08 08:19:13 2012 -0700"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Fri Jun 08 08:19:13 2012 -0700"
      },
      "message": "merge in jb-release history after reset to jb-dev\n"
    },
    {
      "commit": "3e1e78ccd5936111f31a709592f11aa7c677c42d",
      "tree": "caccac9e707c1df4d1f2c18a53635c43c24d2bdc",
      "parents": [
        "67c0a58e05f4c19d4a6f01fe6f06267d57b49305"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Jun 04 19:07:28 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jun 07 19:18:07 2012 -0700"
      },
      "message": "Fix green or corrupted video frames in the exported movies\n\nAt least two use cases are affected: trimming and transition clip generation.\n\nIf the starting time of the transition or the trimming position is not the same as\nthat of any existing video frame, the video frame right before the transition\nstarting position or the trimming position must be encoded as the the first video\nframe for the transtion or the trimmed video, and it is encoded as a key frame.\nThis frame was not saved without the patch.\n\nIn the transcoding phrase, since we could not find such a frame, the existing\ncode did not return an error, and incorrectly used some other frame to serve\nas the reference key frame for the remaining video frames of the transition or\nthe trimmed video. As a result, we may see corrupted or green video frames in\nthe exported movies.\n\nThe fix is to always save the frame right before the trimming position or\nthe transition starting time, so that a key frame will always be encoded, and\nthe right reference frame is used for remaining video frames. In addition,\nchecks are added to prevent from future mistakes to use incorrect reference frames.\n\nPatch was originally contributed by teng.hong@nxp.com\n\nChange-Id: I182784d4c1786224445224634edab3338bf2278f\nrelated-to-bug: 5713461\n"
    },
    {
      "commit": "98e2e030231ce99a4796d34d39a7517078d6735e",
      "tree": "c02b26378703370d444f0f4ba55941ad58074e5b",
      "parents": [
        "d89dea161ff3c3da515c02928cad4a9c73b23312",
        "a4f7e0e9a0e92a063f1b3a08988cf46e2cf1fa94"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 07 17:43:35 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 07 17:43:35 2012 -0700"
      },
      "message": "am a4f7e0e9: audioflinger: fix duplicating thread standby\n\n* commit \u0027a4f7e0e9a0e92a063f1b3a08988cf46e2cf1fa94\u0027:\n  audioflinger: fix duplicating thread standby\n"
    },
    {
      "commit": "a4f7e0e9a0e92a063f1b3a08988cf46e2cf1fa94",
      "tree": "007deb0f276a01d2276a953d2a493cf4f7d11d50",
      "parents": [
        "e35a55fbdff5a695ee35ff43f1466a62fb75662b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 07 17:16:09 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 07 17:16:09 2012 -0700"
      },
      "message": "audioflinger: fix duplicating thread standby\n\nThe code that waits for a track presentation to be complete\nbefore disabling it caused a regression for duplicating threads.\nBecause of the way output tracks activity is managed, the number\nof frames output by the duplicating thread would never\nreach the target set for a track to be considered presented.\nThe track would not be removed from active list and the thread would\nnot go to standby and keep its wakelock held.\n\nBug 6606922.\n\nChange-Id: I4b46b420ac4cbf79a86b6791ae6589d407b01c92\n"
    },
    {
      "commit": "d89dea161ff3c3da515c02928cad4a9c73b23312",
      "tree": "9f856c18e4fa7c2dbaaedfb95b84b8c19b91c8e1",
      "parents": [
        "6a070e7941d3a521680116bfa2d0c99cd90c7502",
        "e35a55fbdff5a695ee35ff43f1466a62fb75662b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 07 11:10:59 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 07 11:10:59 2012 -0700"
      },
      "message": "am e35a55fb: Merge \"Take latency and current time into account for visualization\" into jb-dev\n\n* commit \u0027e35a55fbdff5a695ee35ff43f1466a62fb75662b\u0027:\n  Take latency and current time into account for visualization\n"
    },
    {
      "commit": "e35a55fbdff5a695ee35ff43f1466a62fb75662b",
      "tree": "97d542ca3fcf24a4ab55747fe0bb27e379ad59dd",
      "parents": [
        "9a0d82df8fd681257bc5b29fb5e6c65fcc7cef5a",
        "f06c2ed50e1db871ae9eb2bd15a196064f8c278c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 07 11:08:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 07 11:08:15 2012 -0700"
      },
      "message": "Merge \"Take latency and current time into account for visualization\" into jb-dev"
    },
    {
      "commit": "6a070e7941d3a521680116bfa2d0c99cd90c7502",
      "tree": "da34618df85d59699ad02a4f3e7db0e1227c76ce",
      "parents": [
        "bb866c2bb2c8688378a6cb43ff09d64515ba30e6",
        "9a0d82df8fd681257bc5b29fb5e6c65fcc7cef5a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 07 09:21:05 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 07 09:21:05 2012 -0700"
      },
      "message": "am 9a0d82df: audioflinger: modify fast mixer overrun management\n\n* commit \u00279a0d82df8fd681257bc5b29fb5e6c65fcc7cef5a\u0027:\n  audioflinger: modify fast mixer overrun management\n"
    },
    {
      "commit": "f06c2ed50e1db871ae9eb2bd15a196064f8c278c",
      "tree": "a6e809ffab6281359f5c22166113cb2039579f68",
      "parents": [
        "67c0a58e05f4c19d4a6f01fe6f06267d57b49305"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 06 09:52:31 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 07 09:16:27 2012 -0700"
      },
      "message": "Take latency and current time into account for visualization\n\nBuffer more data, and return the data that is currently being\noutput from the audio output, to ensure that visualizations are\nsmooth and responsive even when the audio output has a large\nlatency and/or large buffers.\nb/6522728\n\nChange-Id: I401637f01be7600b3c594a55c869036c13b206c0\n"
    },
    {
      "commit": "bb866c2bb2c8688378a6cb43ff09d64515ba30e6",
      "tree": "9886f4599019601c5bb5439c9f3745c98cfd2479",
      "parents": [
        "717f9b7392b0fc3ba15b018c923b85e64c0662b5",
        "1a51503b6f71c4f934c6f54ec99a4b87a8ddf052"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 07 07:49:04 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 07 07:49:04 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: I08692b2be6cd851d6dcfc1a56113837cb2cc219e\n"
    },
    {
      "commit": "9a0d82df8fd681257bc5b29fb5e6c65fcc7cef5a",
      "tree": "9e31aa4a1c1a6b52b24c124eab362b4b4a67fb4f",
      "parents": [
        "67c0a58e05f4c19d4a6f01fe6f06267d57b49305"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 05 18:12:11 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 06 09:23:31 2012 -0700"
      },
      "message": "audioflinger: modify fast mixer overrun management\n\nDo not force sleep when an overrun occurs. This was for non\nblocking audio HAL and is unused.\nKeep statistics on overruns.\n\nBug 6605215.\n\nChange-Id: I295455d4562201aa3814c88bdd6e52c9226712af\n"
    }
  ],
  "next": "1a51503b6f71c4f934c6f54ec99a4b87a8ddf052"
}
