)]}'
{
  "log": [
    {
      "commit": "aa68b49a53a874a1813e65752663f19d18149e2c",
      "tree": "b906d41ef13bdcb8ca79b6aee5d7458fcc273e33",
      "parents": [
        "154898f4e6e3f898eacfd699a45f611b0c1b7c9a",
        "b9ad87ca9a18e28436e8634e95d9715b32b07faf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 05 11:43:45 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 05 11:43:45 2010 -0700"
      },
      "message": "am eec3fca6: am 7629e8dd: Merge \"Fix issue 2876124.\" into gingerbread\n\nMerge commit \u0027eec3fca6277296f354ee2b1af0f4b3dceddb3067\u0027\n\n* commit \u0027eec3fca6277296f354ee2b1af0f4b3dceddb3067\u0027:\n  Fix issue 2876124.\n"
    },
    {
      "commit": "154898f4e6e3f898eacfd699a45f611b0c1b7c9a",
      "tree": "e3dbd92a2e9d80c67c2fc6f4aa55d1ba5f29bc3c",
      "parents": [
        "e91a2dfd00b1a707cb4c5eac7ee2c8de4edeb36c",
        "0cc18781fb331f4f90070ed5c76db068d3ce3c64"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Wed Aug 04 14:23:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 04 14:23:54 2010 -0700"
      },
      "message": "Merge \"Adding parseSizesList, getSupportedPreviewSizes to CameraParameters.\""
    },
    {
      "commit": "0cc18781fb331f4f90070ed5c76db068d3ce3c64",
      "tree": "4110b4fa252552d71bb1b0afc08a045f79974c15",
      "parents": [
        "e41f9ba4869a96f004c731d8d17939ae607143b9"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Wed Aug 04 14:04:07 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Wed Aug 04 14:04:07 2010 -0700"
      },
      "message": "Adding parseSizesList, getSupportedPreviewSizes to CameraParameters.\n\nMoved functionality to parse string of sizes from getSupportedPictureSizes\nto parseSizesList.\nAdded getSupportedPreviewSizes which returns a list of supported preview sizes.\n\nChange-Id: I435317427c1ee9623caef435f93e95d4476b7285\n"
    },
    {
      "commit": "e91a2dfd00b1a707cb4c5eac7ee2c8de4edeb36c",
      "tree": "5be3669063d0b87cbf638c45b44b9d60b9a5ecd5",
      "parents": [
        "e41f9ba4869a96f004c731d8d17939ae607143b9",
        "438344fba74ddd6b931ac733fa48643f27b63de3"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Aug 04 13:02:06 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 04 13:02:06 2010 -0700"
      },
      "message": "Merge changes I085cb3cf,Ied1cddc6\n\n* changes:\n  MTP: Add support for syncing MTP playlists\n  MTP: Fix some thread safety issues in MTP server start/stop sequence.\n"
    },
    {
      "commit": "e41f9ba4869a96f004c731d8d17939ae607143b9",
      "tree": "014a73260d60c41d6a07e3128663d95fda5435af",
      "parents": [
        "216e5df78e958a3349ba4785fb79c688e1ad39a5",
        "c0330ab7213be992099c83aa27c603707363a58d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Aug 04 11:12:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 04 11:12:40 2010 -0700"
      },
      "message": "am d152c1c7: am d194f3d6: Merge \"Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails if the camera is locked by someone else.\" into gingerbread\n\nMerge commit \u0027d152c1c7534a80b84f6b389efa8a410ea359b3eb\u0027\n\n* commit \u0027d152c1c7534a80b84f6b389efa8a410ea359b3eb\u0027:\n  Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails\n"
    },
    {
      "commit": "216e5df78e958a3349ba4785fb79c688e1ad39a5",
      "tree": "1861f9ffec6c6d8bdf7d216c44a8e88e778c2fc8",
      "parents": [
        "a7c61b8be205ce8db81ebbd15cd42abd649cbf4d",
        "b7a661266b69bec40ec116d6890c6559b01eae42"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Aug 04 11:12:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 04 11:12:03 2010 -0700"
      },
      "message": "am 246aad12: am 3d84280c: Merge \"File writer has a designated writer thread now\" into gingerbread\n\nMerge commit \u0027246aad12cf2becda5111d03fd1dd8f39712686f2\u0027\n\n* commit \u0027246aad12cf2becda5111d03fd1dd8f39712686f2\u0027:\n  File writer has a designated writer thread now\n"
    },
    {
      "commit": "b9ad87ca9a18e28436e8634e95d9715b32b07faf",
      "tree": "eadcbb991b13055cdee86dc3b482b8e8dce098d1",
      "parents": [
        "c0330ab7213be992099c83aa27c603707363a58d",
        "610959a52fe22a88e50d158f5f5f492fee4f1921"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 04 10:07:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 04 10:07:24 2010 -0700"
      },
      "message": "am 7629e8dd: Merge \"Fix issue 2876124.\" into gingerbread\n\nMerge commit \u00277629e8dd1426a8a8e38a82e13eb51d1c6af24f36\u0027 into gingerbread-plus-aosp\n\n* commit \u00277629e8dd1426a8a8e38a82e13eb51d1c6af24f36\u0027:\n  Fix issue 2876124.\n"
    },
    {
      "commit": "610959a52fe22a88e50d158f5f5f492fee4f1921",
      "tree": "eadcbb991b13055cdee86dc3b482b8e8dce098d1",
      "parents": [
        "48f6ce0e17297c575dcbb25671a7bee80ba13061",
        "3b26844e60f8487388e7e62709faf0dada86e7e1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 04 10:03:36 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 04 10:03:36 2010 -0700"
      },
      "message": "Merge \"Fix issue 2876124.\" into gingerbread"
    },
    {
      "commit": "3b26844e60f8487388e7e62709faf0dada86e7e1",
      "tree": "2a6ed3d8b121bfb1dd5bd443ae46e268dfbfd438",
      "parents": [
        "a5740924c0a71871f2697139effd43b137750597"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 03 07:49:49 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 04 05:38:56 2010 -0700"
      },
      "message": "Fix issue 2876124.\n\nAllow calls to MediaPlayer::notify() in idle state to signal errors from JNI.\n\nChange-Id: I1515fe69766f0a926b76e15c4971317da2acd6a0\n"
    },
    {
      "commit": "c0330ab7213be992099c83aa27c603707363a58d",
      "tree": "b504aa0ba02ef80fd83ba7dba5e27eea72a10aeb",
      "parents": [
        "b7a661266b69bec40ec116d6890c6559b01eae42",
        "48f6ce0e17297c575dcbb25671a7bee80ba13061"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:57:26 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 03 15:57:26 2010 -0700"
      },
      "message": "am d194f3d6: Merge \"Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails if the camera is locked by someone else.\" into gingerbread\n\nMerge commit \u0027d194f3d68188a0993617ba8cc29d8abd381b6069\u0027 into gingerbread-plus-aosp\n\n* commit \u0027d194f3d68188a0993617ba8cc29d8abd381b6069\u0027:\n  Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails\n"
    },
    {
      "commit": "a7c61b8be205ce8db81ebbd15cd42abd649cbf4d",
      "tree": "233dc99d8999d7e7aa3cd95769649257ed46d100",
      "parents": [
        "f95ce6452d87316b8f5df6692537bd039377f349",
        "471bb46ae345ac0ba346ed465334d987b810d656"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:52:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 03 15:52:48 2010 -0700"
      },
      "message": "am 51a260d8: am 23796e3b: Merge \"Add lost frame handling in AudioSource\" into gingerbread\n\nMerge commit \u002751a260d8c6e9a5c6b6c2cf808554ae013c1a7bef\u0027\n\n* commit \u002751a260d8c6e9a5c6b6c2cf808554ae013c1a7bef\u0027:\n  Add lost frame handling in AudioSource\n"
    },
    {
      "commit": "48f6ce0e17297c575dcbb25671a7bee80ba13061",
      "tree": "b504aa0ba02ef80fd83ba7dba5e27eea72a10aeb",
      "parents": [
        "26ab7ab7f543a03b65735a41de8496c54d3e490e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:29:20 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:29:20 2010 -0700"
      },
      "message": "Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails\nif the camera is locked by someone else.\n\nbug - 2827892\n\nChange-Id: I217d4a00f04ebd57b557d3faef28787c14f23ea0\n"
    },
    {
      "commit": "438344fba74ddd6b931ac733fa48643f27b63de3",
      "tree": "3dd0ed5763a0c332506d9f6684a2f0eefe38cc08",
      "parents": [
        "fd150a8e03cdd8462eafd68f4a4231aa52f0e5a1"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Aug 03 15:30:09 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Aug 03 15:36:22 2010 -0400"
      },
      "message": "MTP: Add support for syncing MTP playlists\n\nMTP playlists now correspond to playlists in the media provider\n(like those created by the Music app).\n\nChange-Id: I085cb3cff003037ad62f0e297fb0cfd3047cb3a2\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "b7a661266b69bec40ec116d6890c6559b01eae42",
      "tree": "769f80090d1ddb44bf7873043d6b2574b7983b6c",
      "parents": [
        "471bb46ae345ac0ba346ed465334d987b810d656",
        "26ab7ab7f543a03b65735a41de8496c54d3e490e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 10:37:32 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 03 10:37:32 2010 -0700"
      },
      "message": "am 3d84280c: Merge \"File writer has a designated writer thread now\" into gingerbread\n\nMerge commit \u00273d84280ccc31d12765e2efe03e2dd3ade1acfc33\u0027 into gingerbread-plus-aosp\n\n* commit \u00273d84280ccc31d12765e2efe03e2dd3ade1acfc33\u0027:\n  File writer has a designated writer thread now\n"
    },
    {
      "commit": "26ab7ab7f543a03b65735a41de8496c54d3e490e",
      "tree": "769f80090d1ddb44bf7873043d6b2574b7983b6c",
      "parents": [
        "a5740924c0a71871f2697139effd43b137750597",
        "1c9747a4653aec1395c2bd6896c9b87cb5447837"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 10:35:55 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 03 10:35:55 2010 -0700"
      },
      "message": "Merge \"File writer has a designated writer thread now\" into gingerbread"
    },
    {
      "commit": "471bb46ae345ac0ba346ed465334d987b810d656",
      "tree": "b12b930a75b06deeb67e4ee53ebc1773d7935ce0",
      "parents": [
        "5501b48b787cafb1c2782f3df08bd3620cf1b31f",
        "a5740924c0a71871f2697139effd43b137750597"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Aug 02 18:15:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 02 18:15:48 2010 -0700"
      },
      "message": "am 23796e3b: Merge \"Add lost frame handling in AudioSource\" into gingerbread\n\nMerge commit \u002723796e3b622c6be4feb15d4d57e58645acfa431b\u0027 into gingerbread-plus-aosp\n\n* commit \u002723796e3b622c6be4feb15d4d57e58645acfa431b\u0027:\n  Add lost frame handling in AudioSource\n"
    },
    {
      "commit": "a5740924c0a71871f2697139effd43b137750597",
      "tree": "b12b930a75b06deeb67e4ee53ebc1773d7935ce0",
      "parents": [
        "901335c2f0ce73a78277d90eb77807dcd1d65c95",
        "46292fb347d72a314d985e34e5e3743d846cb9b6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Aug 02 18:13:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 18:13:54 2010 -0700"
      },
      "message": "Merge \"Add lost frame handling in AudioSource\" into gingerbread"
    },
    {
      "commit": "1c9747a4653aec1395c2bd6896c9b87cb5447837",
      "tree": "b92985a7f54cc988d6485862088c5a440f744fb5",
      "parents": [
        "901335c2f0ce73a78277d90eb77807dcd1d65c95"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 17:41:22 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Aug 02 18:08:02 2010 -0700"
      },
      "message": "File writer has a designated writer thread now\n\n+ This reduces the file I/O block time for audio/video track processing\n- Since the file writer is buffering some output samples, the memory\n  usage would go up, depending on how many output samples are buffered.\n\nChange-Id: I780cc5b26f4b53a5efbd643fcf9505dfc19cd4cd\n"
    },
    {
      "commit": "f95ce6452d87316b8f5df6692537bd039377f349",
      "tree": "fc1d592d782178318a034d565ef087e74e159614",
      "parents": [
        "fd150a8e03cdd8462eafd68f4a4231aa52f0e5a1"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 14:42:46 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 14:42:46 2010 -0700"
      },
      "message": "Allowing useStillCameraForTimeLapse to be set through MediaRecorder.java\n\nThis will allow apps to make the decision of whether to use still image mode or\nvideo mode for time lapse capture.\n\n- setTimeLapseParameters now takes in a useStillCameraForTimeLapse parameter.\n- Added support in StagefrightRecorder for passing through this parameter.\n\nChange-Id: Iafbcb76f9a7903118ea5eb822c81008619630f03\n"
    },
    {
      "commit": "fd150a8e03cdd8462eafd68f4a4231aa52f0e5a1",
      "tree": "d6d94acda3747bfe7d5d84bd5ae23c057a274da3",
      "parents": [
        "a7d4b0be8ad61e61cfa55fbfca93b73fab0b9ca1"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 11:30:06 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 11:30:06 2010 -0700"
      },
      "message": "including limits.h to fix simulator build.\n\nChange-Id: I473a62ab8282e4e89e48ee6d7e99aec6ed37076a\n"
    },
    {
      "commit": "a7d4b0be8ad61e61cfa55fbfca93b73fab0b9ca1",
      "tree": "93ddc580dccd7dcb817323efb6b1d26ef617be2e",
      "parents": [
        "343af4ef512869695456a91519e73ed3c3d82101",
        "40e2f3f9b41f44bdb59f7708a421b87f169a6ede"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 10:12:20 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 10:12:20 2010 -0700"
      },
      "message": "Merge \"Implementing getSupportedPictureSizes\""
    },
    {
      "commit": "40e2f3f9b41f44bdb59f7708a421b87f169a6ede",
      "tree": "da4d690100f6bc6c0319f551e5833ce7c08cd760",
      "parents": [
        "99b4de92430fe42f9d1493c8a4c3d27de89d3549"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Jul 30 18:30:55 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Mon Aug 02 09:49:07 2010 -0700"
      },
      "message": "Implementing getSupportedPictureSizes\n\nGo through all the supported picture sizes and choose the smallest one with\nboth dimensions higher than the passed in video width and height.\n\nChange-Id: I4e9fe7a6384a0feeb9e069239ec68c70fb5f3033\n"
    },
    {
      "commit": "343af4ef512869695456a91519e73ed3c3d82101",
      "tree": "5545225fc812b6f6ad0aee784238a80f0a80667b",
      "parents": [
        "9c04c4cc038f924d9cb98798e1c07fe6017e85d0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Aug 02 10:52:20 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Aug 02 10:52:20 2010 -0400"
      },
      "message": "MTP: Implement GetNumObjects\n\nChange-Id: Iccc3a445f9a1eab7bb76eddd567c6a3a8f155b2b\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "9c04c4cc038f924d9cb98798e1c07fe6017e85d0",
      "tree": "9cf6d88d73c6c16ca7712820c5586a77de1c1d17",
      "parents": [
        "99b4de92430fe42f9d1493c8a4c3d27de89d3549"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Aug 02 10:37:41 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Aug 02 10:37:41 2010 -0400"
      },
      "message": "Clean up MtpDatabase API.\n\nReturn MTP response codes instead of booleans for success or failure.\nRemove some unused code.\n\nChange-Id: I82ce80a4d7779233264e3caf139ebd0cece12f5c\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "99b4de92430fe42f9d1493c8a4c3d27de89d3549",
      "tree": "bb5f2173d414cddcb6f2d6c3d8868aae498c1ee5",
      "parents": [
        "484c146281e39a04e32f4f13775210ab2a248c57"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Jul 30 13:40:14 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Fri Jul 30 17:51:59 2010 -0700"
      },
      "message": "Adding getSupportedPictureSizes which returns a Vector of supported Sizes.\n\nAlso added a struct \u0027Size\u0027 containing a width and a height field.\nModified parse_size to optionally set an end pointer pointing to the\ncharacter after the found size.\n\nChange-Id: I51a56bbf2cb7c91d7b80a28e6bd6a559f40a1333\n"
    },
    {
      "commit": "484c146281e39a04e32f4f13775210ab2a248c57",
      "tree": "1e9d11ac87b28a1daa8c347084019c351227de57",
      "parents": [
        "30e3eb619f02cf36e6d1d31be528d6be552bb3e2",
        "5501b48b787cafb1c2782f3df08bd3620cf1b31f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:54:26 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 14:54:26 2010 -0700"
      },
      "message": "am 7600f934: am f0aa24d9: Merge \"Added damr box for AMR (NB and WB) sample entry\" into gingerbread\n\nMerge commit \u00277600f934015cff4d678b0f4e8df0eb93749be7bb\u0027\n\n* commit \u00277600f934015cff4d678b0f4e8df0eb93749be7bb\u0027:\n  Added damr box for AMR (NB and WB) sample entry\n"
    },
    {
      "commit": "5501b48b787cafb1c2782f3df08bd3620cf1b31f",
      "tree": "7d2b4dcf1bf6094b847b1c0971943a43e28a02fe",
      "parents": [
        "6e5ea76da60c253dee7f07ecf3503ad43a0aff92",
        "901335c2f0ce73a78277d90eb77807dcd1d65c95"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:52:05 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 14:52:05 2010 -0700"
      },
      "message": "am f0aa24d9: Merge \"Added damr box for AMR (NB and WB) sample entry\" into gingerbread\n\nMerge commit \u0027f0aa24d91d23195f811e317c4cc4ddbe06db8974\u0027 into gingerbread-plus-aosp\n\n* commit \u0027f0aa24d91d23195f811e317c4cc4ddbe06db8974\u0027:\n  Added damr box for AMR (NB and WB) sample entry\n"
    },
    {
      "commit": "901335c2f0ce73a78277d90eb77807dcd1d65c95",
      "tree": "7d2b4dcf1bf6094b847b1c0971943a43e28a02fe",
      "parents": [
        "489d78dcde35ef7ecaed5fac5b777fabfcd0525b",
        "5aff464f67322cd13dc8ed165806971cfff2e4d5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:49:23 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 14:49:23 2010 -0700"
      },
      "message": "Merge \"Added damr box for AMR (NB and WB) sample entry\" into gingerbread"
    },
    {
      "commit": "46292fb347d72a314d985e34e5e3743d846cb9b6",
      "tree": "a949b30281f740309113e150132aa4eae6bd10e4",
      "parents": [
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 29 18:06:08 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:35:37 2010 -0700"
      },
      "message": "Add lost frame handling in AudioSource\n\n- Also collect stats on lost audio frames instead of time spent on reading\n\nChange-Id: I6380b143e4fbdcd894491aaae523331e90d0f04f\n"
    },
    {
      "commit": "30e3eb619f02cf36e6d1d31be528d6be552bb3e2",
      "tree": "dea281b68cbb9b22f33b764fe7f46650b27223d9",
      "parents": [
        "3768ac8b7a7713c2dd1b7cdc70ddf760003d5e53",
        "6e5ea76da60c253dee7f07ecf3503ad43a0aff92"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:33:05 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 14:33:05 2010 -0700"
      },
      "message": "am e915b0ef: am d973a533: Merge \"Lower the lower bound for max file duration check\" into gingerbread\n\nMerge commit \u0027e915b0ef5d574022dfeffc9b2b61e21c1433c89c\u0027\n\n* commit \u0027e915b0ef5d574022dfeffc9b2b61e21c1433c89c\u0027:\n  Lower the lower bound for max file duration check\n"
    },
    {
      "commit": "6e5ea76da60c253dee7f07ecf3503ad43a0aff92",
      "tree": "a0a617a80f6eb19cb4f406dbdf3b26b5803f4b8a",
      "parents": [
        "6b54348cfb7b8575c1221f79a1bd512136675df0",
        "489d78dcde35ef7ecaed5fac5b777fabfcd0525b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:30:31 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 14:30:31 2010 -0700"
      },
      "message": "am d973a533: Merge \"Lower the lower bound for max file duration check\" into gingerbread\n\nMerge commit \u0027d973a533da16a1fbf13aa1b58ddf60d7d7c9b4ec\u0027 into gingerbread-plus-aosp\n\n* commit \u0027d973a533da16a1fbf13aa1b58ddf60d7d7c9b4ec\u0027:\n  Lower the lower bound for max file duration check\n"
    },
    {
      "commit": "489d78dcde35ef7ecaed5fac5b777fabfcd0525b",
      "tree": "a0a617a80f6eb19cb4f406dbdf3b26b5803f4b8a",
      "parents": [
        "9da2070b6d6d20550de7da61478c325f0928d020",
        "e4fc55de48241c5fb4c4b9d652fd2d4cd0b71138"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:28:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 14:28:26 2010 -0700"
      },
      "message": "Merge \"Lower the lower bound for max file duration check\" into gingerbread"
    },
    {
      "commit": "5aff464f67322cd13dc8ed165806971cfff2e4d5",
      "tree": "e3305ab43aebe9cb2dc6d9c62d8e9b0bcc554d7f",
      "parents": [
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 13:48:46 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 13:55:18 2010 -0700"
      },
      "message": "Added damr box for AMR (NB and WB) sample entry\n\n- Some players, like QT, sometimes are picky about the missing sample entry\n\nChange-Id: Ia32d78e48ac9fd8af8285dbc67f0d69142ba98b4\n"
    },
    {
      "commit": "e4fc55de48241c5fb4c4b9d652fd2d4cd0b71138",
      "tree": "25ec9aaddfc632f3ccb86b889a1a647da4c6d1d1",
      "parents": [
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 12:41:59 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 12:41:59 2010 -0700"
      },
      "message": "Lower the lower bound for max file duration check\n\n- This fixed a CTS test where 200 ms is being used\n\nChange-Id: Ib598b7b94be54e98a96703c58c5f244bc379cf7d\n"
    },
    {
      "commit": "3768ac8b7a7713c2dd1b7cdc70ddf760003d5e53",
      "tree": "724fcd5e396f08b9f50ca318cff643cdb8b8d407",
      "parents": [
        "d904b49e5ac83cb3000a01eb97771731aa1fbe43",
        "6b54348cfb7b8575c1221f79a1bd512136675df0"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:15:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 12:15:42 2010 -0700"
      },
      "message": "am 6a5ed6aa: am 154a3200: resolved conflicts for merge of 27eecb70 to gingerbread\n\nMerge commit \u00276a5ed6aa9dc2c8af096aaf1c5f9c932f08b619a7\u0027\n\n* commit \u00276a5ed6aa9dc2c8af096aaf1c5f9c932f08b619a7\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "6b54348cfb7b8575c1221f79a1bd512136675df0",
      "tree": "f1548891fab33ca03923f70cf25a2ffeab50be82",
      "parents": [
        "db0e4136c3d09c9df4ddf8258ee5c98c053ffba4",
        "9da2070b6d6d20550de7da61478c325f0928d020"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:13:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 12:13:43 2010 -0700"
      },
      "message": "am 154a3200: resolved conflicts for merge of 27eecb70 to gingerbread\n\nMerge commit \u0027154a320069a316491c25b716f2aeea8c51a758e8\u0027 into gingerbread-plus-aosp\n\n* commit \u0027154a320069a316491c25b716f2aeea8c51a758e8\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "9da2070b6d6d20550de7da61478c325f0928d020",
      "tree": "f1548891fab33ca03923f70cf25a2ffeab50be82",
      "parents": [
        "3be9523784cc4038f601e510faee595117cdacb3",
        "efe6039f71e9bac2138003b3287e94a7ab7e5c55"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "message": "resolved conflicts for merge of 27eecb70 to gingerbread\n\nChange-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1\n"
    },
    {
      "commit": "d904b49e5ac83cb3000a01eb97771731aa1fbe43",
      "tree": "724fcd5e396f08b9f50ca318cff643cdb8b8d407",
      "parents": [
        "bc286dce1af6670824fba4167e0750b631168d72",
        "db0e4136c3d09c9df4ddf8258ee5c98c053ffba4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:58:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 09:58:09 2010 -0700"
      },
      "message": "am e67332f8: am 92e847ed: Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n\nMerge commit \u0027e67332f879b3f97baaac2252b53ac64686aebdbb\u0027\n\n* commit \u0027e67332f879b3f97baaac2252b53ac64686aebdbb\u0027:\n  Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n"
    },
    {
      "commit": "db0e4136c3d09c9df4ddf8258ee5c98c053ffba4",
      "tree": "f1548891fab33ca03923f70cf25a2ffeab50be82",
      "parents": [
        "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06",
        "3be9523784cc4038f601e510faee595117cdacb3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:52:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 09:52:40 2010 -0700"
      },
      "message": "am 92e847ed: Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n\nMerge commit \u002792e847ed8e455dca3b2d33d92999e3960404d9af\u0027 into gingerbread-plus-aosp\n\n* commit \u002792e847ed8e455dca3b2d33d92999e3960404d9af\u0027:\n  Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n"
    },
    {
      "commit": "3be9523784cc4038f601e510faee595117cdacb3",
      "tree": "bab6f83881aab994b68acc959ed83485d35d1f2b",
      "parents": [
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "message": "Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n\nModified types of some arguments and returned values of the Equalizer class from int to short\nto match those defined by OpenSL ES SLEqualizerItf interface.\n\nAlso fixed a problem with set properties in equalizer engine implementation.\n\nChange-Id: I75894bad0cb67b01c18ca5e22f9687e75ee491b8\n"
    },
    {
      "commit": "bc286dce1af6670824fba4167e0750b631168d72",
      "tree": "f6d30ddc5cee2a6562bb510d7bacf20806b9f9bb",
      "parents": [
        "c4e47d1e81c4e4403663cb911e98dbf3ada9942c",
        "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:54:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 17:54:42 2010 -0700"
      },
      "message": "am 0c51c98f: am 4506c62a: fix inaccurate copyrights\n\nMerge commit \u00270c51c98fd9edf0bdc8f2c567470fc332b5ae3adf\u0027\n\n* commit \u00270c51c98fd9edf0bdc8f2c567470fc332b5ae3adf\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06",
      "tree": "7c3ae3eecc16c50c794aff141a89b14942117364",
      "parents": [
        "0895d83cb62d269468e64a00e9e89fa7697f2f84",
        "01cff464978aa0f749f42650180b45ea56cb17de"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 17:52:09 2010 -0700"
      },
      "message": "am 4506c62a: fix inaccurate copyrights\n\nMerge commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027 into gingerbread-plus-aosp\n\n* commit \u00274506c62abd5767d6d42a97e8e87793a1b3bcb625\u0027:\n  fix inaccurate copyrights\n"
    },
    {
      "commit": "efe6039f71e9bac2138003b3287e94a7ab7e5c55",
      "tree": "7c7545aef44e4ee356f61b0379210f61b2a83691",
      "parents": [
        "3cc219dfc67b866e10828f0c17641668d47c1cd8",
        "68335fdd6e9c1d622384612605d6952503cb7fd0"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 17:45:56 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 17:45:56 2010 -0700"
      },
      "message": "Merge branch \u0027froyo\u0027 of git://android.git.kernel.org/platform/frameworks/base into HEAD\n"
    },
    {
      "commit": "68335fdd6e9c1d622384612605d6952503cb7fd0",
      "tree": "94e9982f93be7339bde4d8b9336f9968f5509efd",
      "parents": [
        "e32283b15bbd60179424bdc740a4e4932da4c61e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:41:35 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "01cff464978aa0f749f42650180b45ea56cb17de",
      "tree": "a31c8e61281d0bbcbec93d0ab05368f73ab85994",
      "parents": [
        "ccaa41429d2afc47f0fb828a0146a1b1936188fe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "c4e47d1e81c4e4403663cb911e98dbf3ada9942c",
      "tree": "137b5991ba9f4ebaf4e64a6f44479414f61ee207",
      "parents": [
        "db205a1d75c1e9a7d0dbd8fa011335249ad6f4ac"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Jul 27 22:21:44 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Jul 29 12:18:58 2010 -0700"
      },
      "message": "Support for video size to be different from captured picture size.\n\nAdding support to allow video size to be different than the supported\npicture sizes. A picture size larger than the demanded video size is\nchosen. Captured pictures are then cropped to the size of the desired\nvideo size. Cropping is done from the the center portion of the picture.\n\nChange-Id: I6bcbe16f94b6ecbcf28b7f46826a81b4b6b8cbc3\n"
    },
    {
      "commit": "db205a1d75c1e9a7d0dbd8fa011335249ad6f4ac",
      "tree": "f9f88a1c59d5028e9b5fd5fa3a3c8fb959334c30",
      "parents": [
        "ac36fde15b7bc14ba27cdb21a0aeb5d7356c47f4"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Jul 27 22:13:04 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Jul 29 12:15:57 2010 -0700"
      },
      "message": "Adding YUVImage and YUVCanvas.\n\nYUVImage is a container class to hold YUV data and provide\nvarious utilities, e.g. to set/get pixel values for different\nYUV formats, fast copying routines, etc.\nCurrently supported YUV420 Planar and YUV420 Semi Planar.\n\nYUVCanvas holds a reference to a YUVImage on which it can do various\ndrawing operations.\n\nChange-Id: I052a57b7fbc834efe1626914f76c04c091996cac\n"
    },
    {
      "commit": "ac36fde15b7bc14ba27cdb21a0aeb5d7356c47f4",
      "tree": "1fe0072de8a571b964f024ebbeed185b68d1a99b",
      "parents": [
        "e679114b6c7e087a59c2b2c3b55603c43da4ef38",
        "0895d83cb62d269468e64a00e9e89fa7697f2f84"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 11:15:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 11:15:09 2010 -0700"
      },
      "message": "am 42556025: am 6dea6f4e: am 16263d9f: Squashed commit of the following:\n\nMerge commit \u0027425560259c6d41e7f413fdd0f517dc47f350c533\u0027\n\n* commit \u0027425560259c6d41e7f413fdd0f517dc47f350c533\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "0895d83cb62d269468e64a00e9e89fa7697f2f84",
      "tree": "af12a11401e2ca3ab56b74032922ab1df8cdb835",
      "parents": [
        "24fd262e7c16d391ce1c5a8835a83677d099445f",
        "5caff27f4683d5e444f327a5beec15d9b8c7f252"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 11:11:46 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 11:11:46 2010 -0700"
      },
      "message": "am 6dea6f4e: am 16263d9f: Squashed commit of the following:\n\nMerge commit \u00276dea6f4e71b53e421564d783c227cbe0a2469183\u0027 into gingerbread-plus-aosp\n\n* commit \u00276dea6f4e71b53e421564d783c227cbe0a2469183\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "5caff27f4683d5e444f327a5beec15d9b8c7f252",
      "tree": "af12a11401e2ca3ab56b74032922ab1df8cdb835",
      "parents": [
        "60e182437228312cc28469a5b0dfde77ac848e1a",
        "3cc219dfc67b866e10828f0c17641668d47c1cd8"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 11:07:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 11:07:49 2010 -0700"
      },
      "message": "am 16263d9f: Squashed commit of the following:\n\nMerge commit \u002716263d9f8cc01392c2f3678b381ce897647c8c81\u0027 into gingerbread\n\n* commit \u002716263d9f8cc01392c2f3678b381ce897647c8c81\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "3cc219dfc67b866e10828f0c17641668d47c1cd8",
      "tree": "991c1defd88ebf571e0e9e7ede4753bc19ed143d",
      "parents": [
        "e32283b15bbd60179424bdc740a4e4932da4c61e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 20 09:44:34 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 09:45:06 2010 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 4abf16bb04dc9695fedf4007a84f903074312ccd\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Jul 20 09:21:17 2010 -0700\n\n    Support a single format change at the beginning of audio playback. This way the AAC+ decoder may change its output format from what is originally encoded in the audio stream and we\u0027ll still play it back correctly.\n\n    Change-Id: Icc790122744745e9a88099788d4818ca1e265a82\n    related-to-bug: 2826841\n\ncommit 09c74da63e6ad5cb5dafb70f62696d75d2978967\nAuthor: James Dong \u003cjdong@google.com\u003e\nDate:   Sun Jul 18 17:57:01 2010 -0700\n\n    Fix MPEG4Extractor to extract sampling frequency correctly when SBR is enabled.\n\n    Change-Id: I883c81dad3ea465e71cb5590e89d763671a90ff8\n\ncommit f672bf2a782dc7d5fb6325d611a7fe17045dfe9a\nAuthor: James Dong \u003cjdong@google.com\u003e\nDate:   Thu Jul 8 20:56:13 2010 -0700\n\n    Enable the support for decoding audio with AAC+ and eAAC+ features\n\n    bug - 282684\n\n    Change-Id: I73c8377af3cc4edd3ee7cea86dc3b1c369fbd78b\n\nChange-Id: I012f1179e933b6d1345d2368f357576c722485f7\n"
    },
    {
      "commit": "e679114b6c7e087a59c2b2c3b55603c43da4ef38",
      "tree": "27eabc001f4ab0bd0d8c3827ae773982f9536343",
      "parents": [
        "cc759794489c2c39aaef229fba4ace32e394bb81",
        "24fd262e7c16d391ce1c5a8835a83677d099445f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 07:46:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 07:46:03 2010 -0700"
      },
      "message": "am ba676a00: am a54d7d3d: Fixed underrun in audioflinger mixer.\n\nMerge commit \u0027ba676a00c1b9ba59b30fe805b83d03d1768fffbd\u0027\n\n* commit \u0027ba676a00c1b9ba59b30fe805b83d03d1768fffbd\u0027:\n  Fixed underrun in audioflinger mixer.\n"
    },
    {
      "commit": "24fd262e7c16d391ce1c5a8835a83677d099445f",
      "tree": "a530ccd1f62a8a46aeaa433ee92fed6666c3d6ea",
      "parents": [
        "248ae8439dbdd14672dbfc02b63193098392c995",
        "60e182437228312cc28469a5b0dfde77ac848e1a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 07:43:10 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 07:43:10 2010 -0700"
      },
      "message": "am a54d7d3d: Fixed underrun in audioflinger mixer.\n\nMerge commit \u0027a54d7d3d7dd691334189aab20d23c65710092869\u0027 into gingerbread-plus-aosp\n\n* commit \u0027a54d7d3d7dd691334189aab20d23c65710092869\u0027:\n  Fixed underrun in audioflinger mixer.\n"
    },
    {
      "commit": "60e182437228312cc28469a5b0dfde77ac848e1a",
      "tree": "a530ccd1f62a8a46aeaa433ee92fed6666c3d6ea",
      "parents": [
        "39e94f8f723d445447fdee0822291e664b631f60"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 06:50:24 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 06:50:24 2010 -0700"
      },
      "message": "Fixed underrun in audioflinger mixer.\n\nWhen all audio tracks have been disabled and the mixer is running idle before the output stream is placed in standby,\nthe mixer sometimes fails to write to the output stream on time to avoid underrun.\n\nThis is because the sleep period used to wait before the next write to output stream is too close to the actual buffer duration.\nIn fact this sleep time is not critical as if we write too early to the output stream, the kernel driver will wait for free buffers\nfrom the audio DSP DMA and we will sleep anyways.\n\nThe fix consists in dividing the calculated wait period by 2 to increase the margin.\n\nChange-Id: I5730887dc2ccce2a511bc858494a6f7da6b392a0\n"
    },
    {
      "commit": "cc759794489c2c39aaef229fba4ace32e394bb81",
      "tree": "602b6377b8b4571c927d054fde8510e8bb119dd3",
      "parents": [
        "6fd53c964e4d5cbcdc71bbac612b6bef7695298b",
        "248ae8439dbdd14672dbfc02b63193098392c995"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 05:22:10 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 05:22:10 2010 -0700"
      },
      "message": "am 45dc4f82: am 493941b8: Allow creation of an audio effect on a session with no audio tracks.\n\nMerge commit \u002745dc4f82a00e52b12389b22a7cfbbee5609e8e28\u0027\n\n* commit \u002745dc4f82a00e52b12389b22a7cfbbee5609e8e28\u0027:\n  Allow creation of an audio effect on a session with no audio tracks.\n"
    },
    {
      "commit": "248ae8439dbdd14672dbfc02b63193098392c995",
      "tree": "99147be3db86a4bacc908e61498a9ada95ce725c",
      "parents": [
        "dedadf414873a5ddff87ba5da447e4169a0cfb3b",
        "39e94f8f723d445447fdee0822291e664b631f60"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 03:35:52 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 03:35:52 2010 -0700"
      },
      "message": "am 493941b8: Allow creation of an audio effect on a session with no audio tracks.\n\nMerge commit \u0027493941b8d8a12ee843d9823c0177f8005a7be54f\u0027 into gingerbread-plus-aosp\n\n* commit \u0027493941b8d8a12ee843d9823c0177f8005a7be54f\u0027:\n  Allow creation of an audio effect on a session with no audio tracks.\n"
    },
    {
      "commit": "39e94f8f723d445447fdee0822291e664b631f60",
      "tree": "99147be3db86a4bacc908e61498a9ada95ce725c",
      "parents": [
        "1b58c743e6748272e98cd04d3c0f63e371a44329"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 01:32:47 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 02:34:40 2010 -0700"
      },
      "message": "Allow creation of an audio effect on a session with no audio tracks.\n\nThis is necessary to allow creating and enabling an effect attached to a particular player\nsession before the playback is started. As a matter of fact, the implementation of the mediaplayer\ndoes not create the AudioTrack before playback starts.\n\nChange-Id: I1266e8885f9d756acc949303321aaac0fbf83e34\n"
    },
    {
      "commit": "6fd53c964e4d5cbcdc71bbac612b6bef7695298b",
      "tree": "e0600d6ff19c7cb92870334dbae6d26852acadb8",
      "parents": [
        "2c59bd383b4665fce878940c472af48f2597866d",
        "dedadf414873a5ddff87ba5da447e4169a0cfb3b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 28 16:36:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 16:36:08 2010 -0700"
      },
      "message": "am 9362ea76: am 9f2a91bc: Merge \"fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\" into gingerbread\n\nMerge commit \u00279362ea760f565389f5accce7e17476d05510ed59\u0027\n\n* commit \u00279362ea760f565389f5accce7e17476d05510ed59\u0027:\n  fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\n"
    },
    {
      "commit": "dedadf414873a5ddff87ba5da447e4169a0cfb3b",
      "tree": "a5e8e6c7832300ea64389fa66a251f6ef39a1bcf",
      "parents": [
        "3e81ba8a7ead9b670f8f553ebcb2b51de74f51ad",
        "1b58c743e6748272e98cd04d3c0f63e371a44329"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 28 16:33:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 16:33:23 2010 -0700"
      },
      "message": "am 9f2a91bc: Merge \"fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\" into gingerbread\n\nMerge commit \u00279f2a91bc2b01c2cc60f73a0bae673225fdddec09\u0027 into gingerbread-plus-aosp\n\n* commit \u00279f2a91bc2b01c2cc60f73a0bae673225fdddec09\u0027:\n  fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\n"
    },
    {
      "commit": "1b58c743e6748272e98cd04d3c0f63e371a44329",
      "tree": "a5e8e6c7832300ea64389fa66a251f6ef39a1bcf",
      "parents": [
        "ff4a7fa411401910e6e5ac88aeb6e0080a8cc8b1",
        "be1ad8d186d0db6e0a3c8885c95a354cbbfc52af"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 28 16:30:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 16:30:56 2010 -0700"
      },
      "message": "Merge \"fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\" into gingerbread"
    },
    {
      "commit": "2c59bd383b4665fce878940c472af48f2597866d",
      "tree": "bf465e8a48f74072b46a52addbb316cb5dae98cc",
      "parents": [
        "6a372681547650d21e3b6264799cdbb4af881d09",
        "3e81ba8a7ead9b670f8f553ebcb2b51de74f51ad"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 15:33:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 15:33:56 2010 -0700"
      },
      "message": "am 8ddb8f81: am bc1daf01: Merge \"Eliminate the linear cost associated with mSampleSizes.size()\" into gingerbread\n\nMerge commit \u00278ddb8f81902045ec8a53ec14b8fb936fd42517e0\u0027\n\n* commit \u00278ddb8f81902045ec8a53ec14b8fb936fd42517e0\u0027:\n  Eliminate the linear cost associated with mSampleSizes.size()\n"
    },
    {
      "commit": "3e81ba8a7ead9b670f8f553ebcb2b51de74f51ad",
      "tree": "807f4f3fc4a792446a9d2905ae30bbcafa8e803a",
      "parents": [
        "40f0e35c1dfef812084a68f5ccb4083b572718aa",
        "ff4a7fa411401910e6e5ac88aeb6e0080a8cc8b1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 15:31:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 15:31:09 2010 -0700"
      },
      "message": "am bc1daf01: Merge \"Eliminate the linear cost associated with mSampleSizes.size()\" into gingerbread\n\nMerge commit \u0027bc1daf016020ce022ceb971f09e862da5ee82b1d\u0027 into gingerbread-plus-aosp\n\n* commit \u0027bc1daf016020ce022ceb971f09e862da5ee82b1d\u0027:\n  Eliminate the linear cost associated with mSampleSizes.size()\n"
    },
    {
      "commit": "ff4a7fa411401910e6e5ac88aeb6e0080a8cc8b1",
      "tree": "807f4f3fc4a792446a9d2905ae30bbcafa8e803a",
      "parents": [
        "8644c14618d30d9e57a69df40ed939986ebf02c4"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 13:18:14 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 15:21:59 2010 -0700"
      },
      "message": "Eliminate the linear cost associated with mSampleSizes.size()\n\n- The linear cost associated with mSampleSizes.size() call causes the\n  CPU load to increase overtime as more and more audio/video samples\n  are recorded.\n\n- Other Lists used in the MP4 file writer may have similar issues, but\n  the size() call is not made for each output audio/video output sample,\n  or the size of the list is bounded (not linear to the total number\n  of audio/video output samples). As for now, we can live with the small\n  cost (tested with 30 minutes long recording).\n\nChange-Id: I23bd93ea4256cb0be0c1649760e39e6809eb4946\n"
    },
    {
      "commit": "6a372681547650d21e3b6264799cdbb4af881d09",
      "tree": "e2ad3e5b0562d6b0e7a4059eb5cc979d3e5c5998",
      "parents": [
        "3722abe1a6ae53034b9dee6b12e8513804622fd5",
        "40f0e35c1dfef812084a68f5ccb4083b572718aa"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:21:37 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 12:21:37 2010 -0700"
      },
      "message": "am 84665f6d: am 7e397842: Reduce memory usage by the MP4 file writer - Don\\\u0027t store timestamp for each output sample - Don\\\u0027t store timestamp for statistical data collection if the collection of statistical data is not requested\n\nMerge commit \u002784665f6dc2d0b5dfa6a46463677c51f2b670e511\u0027\n\n* commit \u002784665f6dc2d0b5dfa6a46463677c51f2b670e511\u0027:\n  Reduce memory usage by the MP4 file writer\n"
    },
    {
      "commit": "40f0e35c1dfef812084a68f5ccb4083b572718aa",
      "tree": "24e5c93b81a6bb707e85494d4d2c61b362af85c1",
      "parents": [
        "e8b0071c1656e64bd941debd5dad2ac8b63bbafc",
        "8644c14618d30d9e57a69df40ed939986ebf02c4"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:19:33 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 12:19:33 2010 -0700"
      },
      "message": "am 7e397842: Reduce memory usage by the MP4 file writer - Don\\\u0027t store timestamp for each output sample - Don\\\u0027t store timestamp for statistical data collection if the collection of statistical data is not requested\n\nMerge commit \u00277e397842d53a4242a019daa4b234910273121c30\u0027 into gingerbread-plus-aosp\n\n* commit \u00277e397842d53a4242a019daa4b234910273121c30\u0027:\n  Reduce memory usage by the MP4 file writer\n"
    },
    {
      "commit": "3722abe1a6ae53034b9dee6b12e8513804622fd5",
      "tree": "976d1a36aa3b20c864dab16448a82c70a2ca33ee",
      "parents": [
        "ed0de3c123aaa86147993721d4794648a65aab75",
        "e8b0071c1656e64bd941debd5dad2ac8b63bbafc"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:02:59 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 12:02:59 2010 -0700"
      },
      "message": "am cb51115c: am 5587bb7e: Merge \"Interleave the audio and video by default - default interleave duration is set to 1 second\" into gingerbread\n\nMerge commit \u0027cb51115cca81ba47d00aa344f6ed16d1056b056b\u0027\n\n* commit \u0027cb51115cca81ba47d00aa344f6ed16d1056b056b\u0027:\n  Interleave the audio and video by default\n"
    },
    {
      "commit": "8644c14618d30d9e57a69df40ed939986ebf02c4",
      "tree": "24e5c93b81a6bb707e85494d4d2c61b362af85c1",
      "parents": [
        "995cef30f64d4b579a76e15c0b622cd79c461dd8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 10:24:39 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:02:57 2010 -0700"
      },
      "message": "Reduce memory usage by the MP4 file writer\n- Don\u0027t store timestamp for each output sample\n- Don\u0027t store timestamp for statistical data collection if the collection of statistical data is not requested\n\nTODO:\n1. Reduce CPU load by elimnating the list cost associated with List.size() call.\n\nChange-Id: I590bc17176596a65952c982574b82ee3b15b7d1c\n"
    },
    {
      "commit": "e8b0071c1656e64bd941debd5dad2ac8b63bbafc",
      "tree": "c7213938c8a4c05b829a2b46f6ba0041567c6fdb",
      "parents": [
        "e99819aa8cc397d02255b59b91c6e6850afee3a7",
        "995cef30f64d4b579a76e15c0b622cd79c461dd8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:00:58 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 12:00:58 2010 -0700"
      },
      "message": "am 5587bb7e: Merge \"Interleave the audio and video by default - default interleave duration is set to 1 second\" into gingerbread\n\nMerge commit \u00275587bb7e375c17c1320918e6f473625af1f5e5ac\u0027 into gingerbread-plus-aosp\n\n* commit \u00275587bb7e375c17c1320918e6f473625af1f5e5ac\u0027:\n  Interleave the audio and video by default\n"
    },
    {
      "commit": "995cef30f64d4b579a76e15c0b622cd79c461dd8",
      "tree": "c7213938c8a4c05b829a2b46f6ba0041567c6fdb",
      "parents": [
        "25f4395b932fa9859a6e91ba77c5d20d009da64a",
        "f01528f435e6b1f02d118fcd8305a148c27a89f1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 11:58:12 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 11:58:12 2010 -0700"
      },
      "message": "Merge \"Interleave the audio and video by default - default interleave duration is set to 1 second\" into gingerbread"
    },
    {
      "commit": "f01528f435e6b1f02d118fcd8305a148c27a89f1",
      "tree": "82d72c57f4f99358d361242029396ef133bd2062",
      "parents": [
        "542db5d438988360d491a5add1040a2df9aa90c9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 10:08:03 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 10:08:03 2010 -0700"
      },
      "message": "Interleave the audio and video by default\n- default interleave duration is set to 1 second\n\nThis can dramatically reduce the memory usage\nby the MP4 file writer.\n\nChange-Id: Ia3ff202cabfcd2d3f183065d31e4596617c2dded\n"
    },
    {
      "commit": "ed0de3c123aaa86147993721d4794648a65aab75",
      "tree": "c60dc3ffbc36f10adfe01d864e22f1d5b87443d4",
      "parents": [
        "da90dff17b6ce79d0a7d8ab2dbe2aa69cd1c11aa",
        "e99819aa8cc397d02255b59b91c6e6850afee3a7"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 07:53:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 07:53:24 2010 -0700"
      },
      "message": "am 6fa88882: am 62d83a0c: Merge \"Audio effects: modified command() parameter types.\" into gingerbread\n\nMerge commit \u00276fa8888254deb4961dc64c6ac03dc103c9cd8bcf\u0027\n\n* commit \u00276fa8888254deb4961dc64c6ac03dc103c9cd8bcf\u0027:\n  Audio effects: modified command() parameter types.\n"
    },
    {
      "commit": "e99819aa8cc397d02255b59b91c6e6850afee3a7",
      "tree": "01098a211d6c782708b840c28ebd396a6eb72a7b",
      "parents": [
        "184f8deb44ab3b21ddaaf845f39721ba1d18ab5d",
        "25f4395b932fa9859a6e91ba77c5d20d009da64a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 07:51:02 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 07:51:02 2010 -0700"
      },
      "message": "am 62d83a0c: Merge \"Audio effects: modified command() parameter types.\" into gingerbread\n\nMerge commit \u002762d83a0c894b72d9abda1340d278d2aeec11e0fb\u0027 into gingerbread-plus-aosp\n\n* commit \u002762d83a0c894b72d9abda1340d278d2aeec11e0fb\u0027:\n  Audio effects: modified command() parameter types.\n"
    },
    {
      "commit": "25f4395b932fa9859a6e91ba77c5d20d009da64a",
      "tree": "01098a211d6c782708b840c28ebd396a6eb72a7b",
      "parents": [
        "23e1de74359f4bb1763aef0adfebe073122b032c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:40:18 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 05:49:21 2010 -0700"
      },
      "message": "Audio effects: modified command() parameter types.\n\nThe type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command()\nfunction have been modified from int to uint32_t. This is more consistent with their role.\n\nChange-Id: I84d289fc262d6753747910f06f485597dfee6591\n"
    },
    {
      "commit": "be1ad8d186d0db6e0a3c8885c95a354cbbfc52af",
      "tree": "e1f9f9723f7c2d3027efb665482a4530f383adcf",
      "parents": [
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 27 20:11:35 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jul 27 20:11:35 2010 -0700"
      },
      "message": "fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\n\nthis situation happened when the last buffer needed to be resized\n(or allocated, the first time). the assumption was that the buffer\nwas in use by SF itself as the current buffer (obviously, this\nassumption made no sense when the buffer had never been allocated, btw).\n\nthe system would wait until some other buffer became the \"front\" buffer.\n\nwe fix this problem by entirely removing the requirement that the\nbuffer being resized cannot be the front buffer. instead, we just\nallocate a new buffer and replace the front buffer by the new one.\n\nthe downside is that this uses more memory (an extra buffer) for a\nbrief amount of time while the old buffer is being reallocated and\nbefore it has actually been replaced.\n\nChange-Id: I022e4621209474ceb1c671b23deb4188eaaa7285\n"
    },
    {
      "commit": "da90dff17b6ce79d0a7d8ab2dbe2aa69cd1c11aa",
      "tree": "ab459d596dad501fcc4b484bb45f80133efb2779",
      "parents": [
        "f43c641bf3f8bcb5748f4ae504d434896edc94f5"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 27 11:52:45 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 27 12:38:33 2010 -0400"
      },
      "message": "MTP host: Reduce buffer size for readObject so we don\u0027t clog our pipe.\n\nChange-Id: I24d2b1551af5843e48c0a63b84925b3a6451e36a\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "f43c641bf3f8bcb5748f4ae504d434896edc94f5",
      "tree": "be126fd1687b07b475cabcdc68c29ff2d3091bb0",
      "parents": [
        "9e77e155b05e419a34e0fd116ee50f0fc092e67a"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 27 11:50:34 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 27 12:38:29 2010 -0400"
      },
      "message": "MTP: Turn off excessive logging\n\nChange-Id: Ib0dd8cb99efa324d0b4e742bffeb913d6122ace2\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "9e77e155b05e419a34e0fd116ee50f0fc092e67a",
      "tree": "2e1a99949a5076641ba453bf75cc5e458d2225fd",
      "parents": [
        "a9d01c6de17ca72d67a88673d5c9ee22047c862a",
        "184f8deb44ab3b21ddaaf845f39721ba1d18ab5d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 27 02:41:41 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 27 02:41:41 2010 -0700"
      },
      "message": "resolved conflicts for merge of d306cc81 to master\n\nChange-Id: Ib593b7719a837de12605e8c75904634843298ba1\n"
    },
    {
      "commit": "184f8deb44ab3b21ddaaf845f39721ba1d18ab5d",
      "tree": "f7c8a84104ae81d565a867208d606fd3887d47fe",
      "parents": [
        "f12da407f72875d78d7927a4ef82fb46b6c78203",
        "23e1de74359f4bb1763aef0adfebe073122b032c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 27 01:54:30 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 27 01:54:30 2010 -0700"
      },
      "message": "am ca57d1cc: Audio Effects: added methods to effects java classes to store and load current effect settings in a single call.\n\nMerge commit \u0027ca57d1cc89d65dfbd59c749c5736574cd08c7bd3\u0027 into gingerbread-plus-aosp\n\n* commit \u0027ca57d1cc89d65dfbd59c749c5736574cd08c7bd3\u0027:\n  Audio Effects: added methods to effects java classes to store and load current effect settings in\n"
    },
    {
      "commit": "23e1de74359f4bb1763aef0adfebe073122b032c",
      "tree": "f7c8a84104ae81d565a867208d606fd3887d47fe",
      "parents": [
        "8b4179f44917ec4845ade406a49a713cd568fe8a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:19:11 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 27 00:41:31 2010 -0700"
      },
      "message": "Audio Effects: added methods to effects java classes to store and load current effect settings in\na single call.\n\nAddional changes:\n- Fixed simulator build\n- Use effect interface UUIDs from OpenSL ES includes when available\n- Added cleanspec rules to remove now obsolete test effect libraries\n- Fixed bug in AudioEffect JNI setParameter function.\n\nChange-Id: Ic25ddb135e2cec5a68c181d727321f5ac7a1ab6b\n"
    },
    {
      "commit": "a9d01c6de17ca72d67a88673d5c9ee22047c862a",
      "tree": "971643d824450b0cfeaf07ee31f7acf694b1d3f3",
      "parents": [
        "421736c058acde628f5692bf30f58d81fb4ed40c",
        "0cf89f2e622aa53f31fa5762ca4bc805bb509ed3"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 17:50:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 26 17:50:13 2010 -0700"
      },
      "message": "Merge \"MTP host: Add support for reading files from an MTP device via ParcelFileDescriptor\""
    },
    {
      "commit": "421736c058acde628f5692bf30f58d81fb4ed40c",
      "tree": "e378e83905dd79d4ec31bd0e20b1b6ecf1caae5f",
      "parents": [
        "be19df10b6f3df507a8d8598cda1d13a84cd0b09",
        "2b6c4a26499693ae3638e3df6d4255b13e34ee29"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 17:49:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 26 17:49:28 2010 -0700"
      },
      "message": "Merge \"MTP: Don\u0027t request thumbnails for folder objects in MtpCursor\""
    },
    {
      "commit": "be19df10b6f3df507a8d8598cda1d13a84cd0b09",
      "tree": "b0fdbfef167fb96c919b35cc7da31ed467d485c9",
      "parents": [
        "49c16aaec0d314bcf320e088e4bc68d0585c040a",
        "80a82ea7eb05c0b807a3b0a76e1b7137ea059189"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 17:49:04 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 26 17:49:04 2010 -0700"
      },
      "message": "Merge \"MTP: Add hard coded support to recognize a couple MTP music players for testing purposes.\""
    },
    {
      "commit": "0cf89f2e622aa53f31fa5762ca4bc805bb509ed3",
      "tree": "e0983afa92472593e764f81d8e42b5d118a3a697",
      "parents": [
        "2b6c4a26499693ae3638e3df6d4255b13e34ee29"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:40:45 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:40:45 2010 -0400"
      },
      "message": "MTP host: Add support for reading files from an MTP device via ParcelFileDescriptor\n\nAlso added some support for sending files to the device that hasn\u0027t been debugged yet.\nAdd locking to MtpDevice to prevent it from attempting multiple transactions simultaneously.\n\nChange-Id: I2b995ba0af086cc6920bd6b8c869f540ad78560a\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2b6c4a26499693ae3638e3df6d4255b13e34ee29",
      "tree": "b77206b8eb780f9fb058de492e9b06d68c60546e",
      "parents": [
        "80a82ea7eb05c0b807a3b0a76e1b7137ea059189"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:35:21 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:36:32 2010 -0400"
      },
      "message": "MTP: Don\u0027t request thumbnails for folder objects in MtpCursor\n\nChange-Id: I75a0a834ab746bed0a35883539c8dbc104789157\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "80a82ea7eb05c0b807a3b0a76e1b7137ea059189",
      "tree": "a9060ef0852aaebbdbbff70db226b9ddea3d35d3",
      "parents": [
        "29a322f63759edab81c50630d9f20769a06c827e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:33:02 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 26 20:33:02 2010 -0400"
      },
      "message": "MTP: Add hard coded support to recognize a couple MTP music players for testing purposes.\n\nChange-Id: I2d09d78e83d13cfb3edff02372a6fc34b1e4d8b1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "49c16aaec0d314bcf320e088e4bc68d0585c040a",
      "tree": "b29d2e870f53ebd5d2c46d659c9b5501a9837826",
      "parents": [
        "dc619be998a8e727008677ea222bc1e032453785",
        "f12da407f72875d78d7927a4ef82fb46b6c78203"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 12:30:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 26 12:30:49 2010 -0700"
      },
      "message": "am e80c30c6: am 00de7218: Merge \"Fixed bug in vlm effect bunde wrapper effect init function.\" into gingerbread\n\nMerge commit \u0027e80c30c6b557fab2f5fc7a87c51018f5a8074338\u0027\n\n* commit \u0027e80c30c6b557fab2f5fc7a87c51018f5a8074338\u0027:\n  Fixed bug in vlm effect bunde wrapper effect init function.\n"
    },
    {
      "commit": "dc619be998a8e727008677ea222bc1e032453785",
      "tree": "67e68a3c7f40576ceda25c569f98c7ba20788113",
      "parents": [
        "29a322f63759edab81c50630d9f20769a06c827e",
        "38ef1a1a098c4e9154de99b772bb6f48c8998241"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 12:30:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 26 12:30:23 2010 -0700"
      },
      "message": "am df5c3b50: am 739bf285: Merge \"LVM release 1.04.\" into gingerbread\n\nMerge commit \u0027df5c3b5024276af8b44d00bb28ce620ab31e2365\u0027\n\n* commit \u0027df5c3b5024276af8b44d00bb28ce620ab31e2365\u0027:\n  LVM release 1.04.\n"
    },
    {
      "commit": "f12da407f72875d78d7927a4ef82fb46b6c78203",
      "tree": "13662a6378d09363adb73330863a260e77fbd12f",
      "parents": [
        "38ef1a1a098c4e9154de99b772bb6f48c8998241",
        "8b4179f44917ec4845ade406a49a713cd568fe8a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 12:25:37 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 26 12:25:37 2010 -0700"
      },
      "message": "am 00de7218: Merge \"Fixed bug in vlm effect bunde wrapper effect init function.\" into gingerbread\n\nMerge commit \u002700de721859ca291d0e212a6970f0bd8b3a2f8428\u0027 into gingerbread-plus-aosp\n\n* commit \u002700de721859ca291d0e212a6970f0bd8b3a2f8428\u0027:\n  Fixed bug in vlm effect bunde wrapper effect init function.\n"
    },
    {
      "commit": "38ef1a1a098c4e9154de99b772bb6f48c8998241",
      "tree": "e4fe4f3e6fb5b986b42c3625469f54c8937b3eca",
      "parents": [
        "9cde3ce3bd58a3276a927c11ece3e3d27db74a9b",
        "09d5ca3766d4bab91cdaad7206716a5747ebad77"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 12:25:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 26 12:25:24 2010 -0700"
      },
      "message": "am 739bf285: Merge \"LVM release 1.04.\" into gingerbread\n\nMerge commit \u0027739bf285be7a154b92e74b069dff7dc8f7ffc2f3\u0027 into gingerbread-plus-aosp\n\n* commit \u0027739bf285be7a154b92e74b069dff7dc8f7ffc2f3\u0027:\n  LVM release 1.04.\n"
    },
    {
      "commit": "29a322f63759edab81c50630d9f20769a06c827e",
      "tree": "85de1c7d72ef9e64215bb43a043984b02765fdb9",
      "parents": [
        "6a970b49033688f0422fc613568d30148b6b301a",
        "9cde3ce3bd58a3276a927c11ece3e3d27db74a9b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Jul 26 10:26:46 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 26 10:26:46 2010 -0700"
      },
      "message": "am bd01583d: resolved conflicts for merge of b237bdb6 to gingerbread-plus-aosp\n\nMerge commit \u0027bd01583d6e936e93141d6b77aec9d8c99684d7a4\u0027\n\n* commit \u0027bd01583d6e936e93141d6b77aec9d8c99684d7a4\u0027:\n  move native services under services/\n"
    },
    {
      "commit": "9cde3ce3bd58a3276a927c11ece3e3d27db74a9b",
      "tree": "be90f2d23071ae29c91a55d659e815fdc0ca332f",
      "parents": [
        "4566a03cf66db85c16a39d9bff93992fc99b8fe4",
        "ccaa41429d2afc47f0fb828a0146a1b1936188fe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Jul 26 10:22:58 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Jul 26 10:22:58 2010 -0700"
      },
      "message": "resolved conflicts for merge of b237bdb6 to gingerbread-plus-aosp\n\nChange-Id: Ibd9f488a0331c472a852054af5db06f8e7d35e76\n"
    },
    {
      "commit": "8b4179f44917ec4845ade406a49a713cd568fe8a",
      "tree": "13662a6378d09363adb73330863a260e77fbd12f",
      "parents": [
        "09d5ca3766d4bab91cdaad7206716a5747ebad77",
        "010ae0dd9eab40a49a840388230d8bb2f97c530e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 10:09:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 26 10:09:54 2010 -0700"
      },
      "message": "Merge \"Fixed bug in vlm effect bunde wrapper effect init function.\" into gingerbread"
    },
    {
      "commit": "09d5ca3766d4bab91cdaad7206716a5747ebad77",
      "tree": "e4fe4f3e6fb5b986b42c3625469f54c8937b3eca",
      "parents": [
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 09:01:44 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:57:36 2010 -0700"
      },
      "message": "LVM release 1.04.\n\nRemaining warnings in the code have been removed\nCore components support seamless insertion in the audio stream at playtime (Enabling / Disabling the effect).\n\nChange-Id: Icae7085305fad663faeb5a94cb673b41cec5a9f1\n"
    },
    {
      "commit": "010ae0dd9eab40a49a840388230d8bb2f97c530e",
      "tree": "b544e3dff585bc48925f4ff667553de49dd7f0e6",
      "parents": [
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:03:37 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 26 01:07:38 2010 -0700"
      },
      "message": "Fixed bug in vlm effect bunde wrapper effect init function.\n\nThe status in the command reply field was not initialized by Effect_command() for\nEFFECT_CMD_INIT causing unpredictable failures when initializing an effect.\n\nChange-Id: I7dccb094c9244fad4ed9aea3062a395db295e082\n"
    },
    {
      "commit": "6a970b49033688f0422fc613568d30148b6b301a",
      "tree": "85de1c7d72ef9e64215bb43a043984b02765fdb9",
      "parents": [
        "e4e0a6994d39c4a7cba09c5fff442b2dca1df8f8",
        "4566a03cf66db85c16a39d9bff93992fc99b8fe4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 01:06:12 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 23 01:06:12 2010 -0700"
      },
      "message": "am 08f2b10c: am 021697ad: Audio effects: lvm bundle wrapper update after first integration tests.\n\nMerge commit \u002708f2b10c4b2e7fc1c666cc1d896e227289206b24\u0027\n\n* commit \u002708f2b10c4b2e7fc1c666cc1d896e227289206b24\u0027:\n  Audio effects: lvm bundle wrapper update after first integration tests.\n"
    },
    {
      "commit": "4566a03cf66db85c16a39d9bff93992fc99b8fe4",
      "tree": "be90f2d23071ae29c91a55d659e815fdc0ca332f",
      "parents": [
        "00fba4994e33d1b8384ff8bc2221c2de933f387e",
        "163fbcf84010b98e0374110454d85b804bc8d13b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 01:03:06 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 23 01:03:06 2010 -0700"
      },
      "message": "am 021697ad: Audio effects: lvm bundle wrapper update after first integration tests.\n\nMerge commit \u0027021697ad3d4ef981d0deae1fa223ed06f30df738\u0027 into gingerbread-plus-aosp\n\n* commit \u0027021697ad3d4ef981d0deae1fa223ed06f30df738\u0027:\n  Audio effects: lvm bundle wrapper update after first integration tests.\n"
    },
    {
      "commit": "163fbcf84010b98e0374110454d85b804bc8d13b",
      "tree": "be90f2d23071ae29c91a55d659e815fdc0ca332f",
      "parents": [
        "542db5d438988360d491a5add1040a2df9aa90c9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:54:58 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 23 00:54:58 2010 -0700"
      },
      "message": "Audio effects: lvm bundle wrapper update after first integration tests.\n\nChange-Id: I20cb55282833bd6e3a160e0dae1cc1fcb6b1ca30\n"
    },
    {
      "commit": "e4e0a6994d39c4a7cba09c5fff442b2dca1df8f8",
      "tree": "545e3cbc6bbd5c6b78a5adb2d00eeb5b16abb6a4",
      "parents": [
        "55cb2b8319e6b36e88658de121c534e95cd240b4"
      ],
      "author": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Tue Jul 20 21:33:31 2010 -0700"
      },
      "committer": {
        "name": "Nipun Kwatra",
        "email": "nkwatra@google.com",
        "time": "Thu Jul 22 17:02:12 2010 -0700"
      },
      "message": "Allowing setting of time lapse parameters through MediaRecorder.java\n\nadded setTimeLapseParameters() to MediaRecorder.java and SetParameter support\nin StagefrightRecorder to allow enabling time lapse and setting the corresponding\nparameters.\n\nChange-Id: I509040aa71f8d3fc37337b0894a81d9c0fd7a40a\n"
    },
    {
      "commit": "55cb2b8319e6b36e88658de121c534e95cd240b4",
      "tree": "c6d266f434dacf09eeb964d05090088f78f4d3d2",
      "parents": [
        "f661058d77d1484e5911d1962f8e1e8466240687",
        "00fba4994e33d1b8384ff8bc2221c2de933f387e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 22 16:28:26 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 22 16:28:26 2010 -0700"
      },
      "message": "am 9bc4dc11: am 53d4e0d5: Allows the authoring engine to skip frame.\n\nMerge commit \u00279bc4dc114fce58606a81d65d4cb31348cc7c1bae\u0027\n\n* commit \u00279bc4dc114fce58606a81d65d4cb31348cc7c1bae\u0027:\n  Allows the authoring engine to skip frame.\n"
    },
    {
      "commit": "00fba4994e33d1b8384ff8bc2221c2de933f387e",
      "tree": "2780e2456a9b540e245fa3e3c8e62d60c284b8dc",
      "parents": [
        "3922fe0860f1662f9066f553314b6955702d4956",
        "542db5d438988360d491a5add1040a2df9aa90c9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 22 16:25:17 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 22 16:25:17 2010 -0700"
      },
      "message": "am 53d4e0d5: Allows the authoring engine to skip frame.\n\nMerge commit \u002753d4e0d58e2d5c18f6e026c705af833b9bdd7aba\u0027 into gingerbread-plus-aosp\n\n* commit \u002753d4e0d58e2d5c18f6e026c705af833b9bdd7aba\u0027:\n  Allows the authoring engine to skip frame.\n"
    }
  ],
  "next": "ccaa41429d2afc47f0fb828a0146a1b1936188fe"
}
