)]}'
{
  "commit": "d707fcb3e29707ca4a5935c294ef0b38eb5aba5f",
  "tree": "8f223d9d5656ba34a0fdfe2e7ee4992f7a0bf3e3",
  "parents": [
    "9b93478fef2915a1d0cbb1fe17d2788ef8b5b230"
  ],
  "author": {
    "name": "James Dong",
    "email": "jdong@google.com",
    "time": "Wed Sep 01 18:48:35 2010 -0700"
  },
  "committer": {
    "name": "James Dong",
    "email": "jdong@google.com",
    "time": "Wed Sep 01 20:45:39 2010 -0700"
  },
  "message": "Calculate audio media drift time from AudioSource\n\nThe problem was that the time to receive an output buffer\nfrom an audio encoder is different because the encoder does not\nneed to read from the source for all output buffers. This leads\nto large fluctuation in terms of wall clock duration between two\nneighboring audio sample outputs from the audio encoder. As a\nresult, the media time for the video track after adjustment using\nthe drifting changes wildly sometimes.\n\nThis patch addresses this issue by only updating the media drift\ntime when an audio source input buffer is read. the wall clock\nfor the audio track is also calculated at the same time when\nthe input audio buffer is read at AudioSource.\n\nbug - 2959800\n\nChange-Id: I3174aa182f744784b540f0a7198524d4eee8bd7b\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1af42543c6088b534ca3a94e03f5ba2b9c7cf7dd",
      "old_mode": 33188,
      "old_path": "include/media/stagefright/AudioSource.h",
      "new_id": "a5cec7871e4d2e02bc7096bddd9d65953986a680",
      "new_mode": 33188,
      "new_path": "include/media/stagefright/AudioSource.h"
    },
    {
      "type": "modify",
      "old_id": "2412f6a8010b1e3286ed9bbcb938fb3198b374f5",
      "old_mode": 33188,
      "old_path": "include/media/stagefright/MPEG4Writer.h",
      "new_id": "9716e98e875dd910c6be47f1f6249f205e950644",
      "new_mode": 33188,
      "new_path": "include/media/stagefright/MPEG4Writer.h"
    },
    {
      "type": "modify",
      "old_id": "43354c2dd15be15c69c956ab80451b2959692257",
      "old_mode": 33188,
      "old_path": "include/media/stagefright/MetaData.h",
      "new_id": "3b31e6814889623248aa8b06c85b7afe40f213cb",
      "new_mode": 33188,
      "new_path": "include/media/stagefright/MetaData.h"
    },
    {
      "type": "modify",
      "old_id": "bcae91316d7bd615e724bead00bbfc5827e87907",
      "old_mode": 33188,
      "old_path": "media/libstagefright/AudioSource.cpp",
      "new_id": "c2f79e8e6f5168875ae782f6264c87a025c71f44",
      "new_mode": 33188,
      "new_path": "media/libstagefright/AudioSource.cpp"
    },
    {
      "type": "modify",
      "old_id": "a15b84e93ed7ed1a8029c8f9d4742766cc9cf647",
      "old_mode": 33188,
      "old_path": "media/libstagefright/MPEG4Writer.cpp",
      "new_id": "af2b4c4b0830d975fad5f28917429e7a92524724",
      "new_mode": 33188,
      "new_path": "media/libstagefright/MPEG4Writer.cpp"
    },
    {
      "type": "modify",
      "old_id": "052c3542ddd71924f0b6013fa25dd82a4e052ef1",
      "old_mode": 33188,
      "old_path": "media/libstagefright/codecs/aacenc/AACEncoder.cpp",
      "new_id": "c05e3e598aaae0f125c3ce02bd9ac34ea330c9aa",
      "new_mode": 33188,
      "new_path": "media/libstagefright/codecs/aacenc/AACEncoder.cpp"
    },
    {
      "type": "modify",
      "old_id": "c8754262dd84d214a33af4906f366f9935eeda9b",
      "old_mode": 33188,
      "old_path": "media/libstagefright/codecs/amrnb/enc/AMRNBEncoder.cpp",
      "new_id": "dab139001ab35cc65c79d316b157201341ff8640",
      "new_mode": 33188,
      "new_path": "media/libstagefright/codecs/amrnb/enc/AMRNBEncoder.cpp"
    },
    {
      "type": "modify",
      "old_id": "93304d063b5dca5e903a514b7b609098e8db108f",
      "old_mode": 33188,
      "old_path": "media/libstagefright/codecs/amrwbenc/AMRWBEncoder.cpp",
      "new_id": "b62eb5b92f860a10102a22cc7960dd492e6465a3",
      "new_mode": 33188,
      "new_path": "media/libstagefright/codecs/amrwbenc/AMRWBEncoder.cpp"
    }
  ]
}
