)]}'
{
  "log": [
    {
      "commit": "b57c30000ec5ffbe01c2ab728a58725396e28686",
      "tree": "0b0dd42cc99b8fcc52a4ba136da37f6026b634c0",
      "parents": [
        "a507ddf115c065b28d5e3c0eb369642ee3a20eb0"
      ],
      "author": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Fri May 31 22:35:41 2013 -0700"
      },
      "committer": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Fri May 31 22:35:41 2013 -0700"
      },
      "message": "av: camera: use legacy cam param flag and add samsung cam params\n\nChange-Id: I50cb49c02dace8a4bff855e3de032d79bf0d2531\n"
    },
    {
      "commit": "06b203e48d0449b76890dedaa7f978ebbc20ec39",
      "tree": "1525b70d9bcb05ee94b062603966a219f42a1d6e",
      "parents": [
        "0aa15bc1d473d17e01c1db5294d3810d17296198"
      ],
      "author": {
        "name": "Pawit Pornkitprasan",
        "email": "p.pawit@gmail.com",
        "time": "Wed Apr 24 11:37:19 2013 +0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun May 26 21:52:36 2013 -0700"
      },
      "message": "OMXCodec: Re-implement requires-flush-before-shutdown quirk\n\nSupport is already there, but is not in the codec quirk reading list.\nRe-implement it as required by Broadcom\u0027s OMX\n\nChange-Id: I1beac06af8118dcf0c248b631bc8e6dbbab2c1d5\n"
    },
    {
      "commit": "30fd2a331f7b35c14e7cd696216967891cc8ebce",
      "tree": "19eff7317a6601888d6b905fa25cd45c42d1d112",
      "parents": [
        "f71e669f517963661e1d7286ce91e36edf3a7f86"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Thu Feb 21 20:06:04 2013 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun May 26 21:52:22 2013 -0700"
      },
      "message": "libstagefright: Squashed audio fixes from CodeAurora\n\nlibstagefright: Return seek position until seek has been processed\n\nIf it so happens that the client to TunnelPlayer (e.g. AwesomePlayer)\nqueries for the current time before data from the new seek position\nis given to the compressed driver, we need to return the seek position\n\nChange-Id: If709e61f67cc8e81d34c14d19145dc61ecd82c2b\nCRs-Fixed: 454825\n\nlibstagefright: Use 64 bit offsets only when needed.\n\nFor enabling \u003e2GB recording, 64 bit offsets are\nneeded for file writing. So, this feature was turned\non by default. This in turn increased the file size.\nWith this change, by default this feature will be\noff and turned on only when required.\n\n- Use 64 bit offsets for resolutions \u003e\u003d 720p.\n- Limit maximum file size for recording to 4GB.\n- Set max file size only if no value is set from the client.\n- Fix MPEG4Extractor to use 64 bit offsets\n\nCRs-Fixed: 273144, 285785, 288319\n(cherry picked from commit 04476a3fb89dfbb025f7852dd4d62cae72385f1a)\n\nChange-Id: I00af2c7cddbbf86c566fe4bb989fe728ca06dd19\n\nlibstagefright: TunnelPlayer sync fix\n\n- Allow close on the AudioSink to be called from\n  the extractor thread and the application thread.\n- This fixes a race condition where an onPauseTimeout\n  event scheduled from the main thread closes the\n  audio sink while the extractor thread was about\n  to issue write() on audio HAL. (note: on HAL, not audio sink)\n\nChange-Id: I22a5c655dfcb40f3cbda3765dc23ad8e6f99c9bb\nCRs-Fixed: 443205\n\nFrameworks/av: Fix to prevent deadlock in AudioEffects\n\n-Write is blocked waiting for effect chain lock and this causes\ndecoder thread to wait indefintely.\n-Sometimes it is observed that effectschain is locked before\nmLPAEffectChain is initialized and but unlocking is skipped if\nmLPAEffectChain is initialized in between.Due to this LPA\nsilence and framework reboot issues are observed as\napplyEffectsOn() cannot acquire lock to progress further.\n-Use flag to check if all effects have been locked and unlock\naccordingly to prevent the deadlock scenario.\n\n(cherry picked from commit 011db22abf565dfbe7f9d0a5c7af7564587b3b48)\n\nChange-Id: I82cfdab045ecf077f0ba0185fc693fc623fa10db\nCRs-Fixed: 435661, 435664, 435680, 430309\n\naudio: Use tunnel player only for music stream\n\n- Check stream type before creating tunnel player to\n  use tunnel player only for STREAM_MUSIC\n\nChange-Id: I6e4b58524e61441ad2e09499bd9187c6dd56cd3d\n\nframework/av: Fix for audio recording test through CTS\n\n- Issue: Failure in stop is observed with the audio recording test\nthrough CTS.\nTestScenario: When the audio record test is initiated in the CTS\nconsole, the recording session is force closed with a notification\nFile Size limit exceeded. Further, the stop fails with the same\nmessage(notification of the File size exceeded error).\n\n- Cause: The calculation of nTotalBytesEstimate for the recording\nsession exceeds the limit 95 percent of mMaxFileSizeLimitBytes.\nAs a result of size deficit, the recording is stopped at the\nbeginning of the recording session notifying\nMEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED.\n\n- Fix: The factor size used in the calculation of nTotalBytesEstimate\nhas been updated properly for 64bit file offset setting. The\nsetParam64BitFileOffset in StagefrightRecorder::prepare() is executed\nbased on two additional validations so that the factor size is updated\nappropriately.\n\nChange-Id: I4749ce8f9735ccc9e1d9e49718c36470837ab27f\nCRs-Fixed: 396057\n\naudioflinger: apply volume on direct track when track is active\n\nDuring back to back tunnel playback, we encounter a race condition\nwhere setVolume can be called when the track is not updated to\nactive state. Fix to apply the volume on direct track only when the\ntrack is in active state.\n\nChange-Id: I70c289fbf8a9266bae0bd01b04be9f43ad32c70d\nCRs-Fixed: 464148\n\nLPAPlayer: Update condition to ignore seek\n\n- Reject seek if the new seek time is greater than the current\n  position and within an empirical limit (default 60ms).\n- This limit must be measured for each target.\n\nChange-Id: I86b44679fb5fe442bb5adb510c62514f6be3d304\nCRs-Fixed: 453067\n\naudioflinger: for DirectAudioTrak, call startOutput before stream is active\n\nFor LPA and Tunnel playback, when resume is done in paused state, before\nstarting actual playback, volume should be set through AudioPolicy command\nthread.\n\nChange-Id: I7ee1098058c01a35a3e7181d3b291304abf3cac1\nCRs-Fixed: 464348\n"
    },
    {
      "commit": "f71e669f517963661e1d7286ce91e36edf3a7f86",
      "tree": "03ad1567b62e2ccda24dc883cd41a427f6897c29",
      "parents": [
        "cff7870e0c4c8dc23a765d7f5a6eef651f36d622"
      ],
      "author": {
        "name": "Steve Kondik",
        "email": "shade@chemlab.org",
        "time": "Mon Apr 08 02:24:19 2013 -0700"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun May 26 21:52:12 2013 -0700"
      },
      "message": "Silence error when DASH player isn\u0027t present\n\nChange-Id: I9e5c22af1a5cf916b0efaec7ca1c5f48f6d0c82a\n"
    },
    {
      "commit": "cff7870e0c4c8dc23a765d7f5a6eef651f36d622",
      "tree": "64fd8ae5e34563f85cf5168d6b9d9bb7ad29bcd8",
      "parents": [
        "e7405686b60f8738463f5e59e00da8a7c2f8be52"
      ],
      "author": {
        "name": "David Daynard",
        "email": "nardholio@gmail.com",
        "time": "Tue Mar 12 18:35:09 2013 -0400"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun May 26 21:52:06 2013 -0700"
      },
      "message": "MediaScanner: Ignore dirs with .noscanandnomtp\n\nCompletely ignore directories with .noscanandnomtp files\nin them. Placing a .nomedia file will still scan a\ndirectory but exclude it from the media database. This\nis so the file may still be presented for MTP purposes.\n\nPlacing .noscanandnomtp completely prevents the scan,\nwhich saves considerable processing power and battery\nlife on systems with numerous media files, but prevents\nthem from being seen over MTP.\n\nChange-Id: Ibff2a9f2525255a2ac34132eeee36734962fbdd7\n"
    },
    {
      "commit": "84f109bca45509828f14867f65faa3e7b9e65e43",
      "tree": "f6272d3a4cf438ec9918cc2cdedde260d1812287",
      "parents": [
        "2430257fb7fe62d01e9c083f122b62b5187759b6"
      ],
      "author": {
        "name": "Mingming Yin",
        "email": "mingming@codeaurora.org",
        "time": "Thu Dec 27 17:43:05 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun Mar 24 23:53:54 2013 -0700"
      },
      "message": "qcom-fm: audio: add support for FM feature\n\nChange-Id: Idd5c7a0364710d54809ef5d4c7b2404b22dc4cf6\n\nConflicts:\n\n\tinclude/media/IAudioFlinger.h\n\tmedia/libmediaplayerservice/StagefrightRecorder.cpp\n\tmedia/libstagefright/Android.mk\n"
    },
    {
      "commit": "2430257fb7fe62d01e9c083f122b62b5187759b6",
      "tree": "1c5f142ae3554773c8863f287e451376cfadce76",
      "parents": [
        "efa4ad6b45c8f98cf94d8693b816dcf4e6684ae9"
      ],
      "author": {
        "name": "Giulio Cervera",
        "email": "giulio.cervera@cyanogenmod.org",
        "time": "Thu Feb 14 12:19:49 2013 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun Mar 24 23:53:46 2013 -0700"
      },
      "message": "fmradio: use caf naming\n\nChange-Id: I9e0fefa3f2dabe991c6be63ab13a18ca38c37f71\n"
    },
    {
      "commit": "efa4ad6b45c8f98cf94d8693b816dcf4e6684ae9",
      "tree": "68112d0bc03416307e95420fc0e36c33783aedd3",
      "parents": [
        "200179149e3c5c618e5d3250a8f318014600e564"
      ],
      "author": {
        "name": "Stefan Ekenberg",
        "email": "stefan.ekenberg@stericsson.com",
        "time": "Mon Aug 20 12:00:26 2012 +0200"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun Mar 24 23:53:24 2013 -0700"
      },
      "message": "FM Radio: Add support for FM Radio in Android\n\nCreating interface and framework for using FM Radio\nRX and TX from different vendors.\n\nChange-Id: I1a71aed01bfffdddfabf1cdfbfa3707cb1ed016b\nSigned-off-by: Benn Porscke \u003cbenn.porscke@stericsson.com\u003e\n"
    },
    {
      "commit": "200179149e3c5c618e5d3250a8f318014600e564",
      "tree": "b0fc398148b401ddac852bf11904255066c6b029",
      "parents": [
        "932e38d173dcefe09286111e6ca64707d7f8af70"
      ],
      "author": {
        "name": "Ravishankar Sarawadi",
        "email": "crsaraw@codeaurora.org",
        "time": "Wed Feb 27 18:47:54 2013 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sun Mar 24 12:34:33 2013 -0700"
      },
      "message": "audio: Subsystem Restart changes\n\n - Handle new ADSP status parameter\n   - media/libmedia: Add new ADSP status audio parameter\n   - framework/av: Add handling of new key-pair value in\n     Audio Flinger\n\n - Handle Tunnel mode SubSys Restart\n   - framework/av: Post SSR event to Audio Flinger\n   - media/libmedia: Post SSR event to AudioTrack\n   - media/libmediaplayerservice: Post SSR event to\n     MediaPlayerService\n   - media/libstagefright: Post SSR event to TunnelPlayer\n\nChange-Id: I8c8385af45be91caf7d7160ab2e0236d6591b159\n"
    },
    {
      "commit": "0e69fea7806056e9e6bd5bdd9da95710d74f5672",
      "tree": "ffc6668b5afe3fa1a5beb1d203997ff5e05b9747",
      "parents": [
        "ec3f9bb5d289bd42633c2a8ecfb57292ed27fc1c"
      ],
      "author": {
        "name": "codeworkx",
        "email": "codeworkx@cyanogenmod.org",
        "time": "Mon Jan 14 20:43:57 2013 +0000"
      },
      "committer": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Sat Mar 02 22:27:58 2013 -0800"
      },
      "message": "libmedia: implement samsungs isSeparatedStream, built audioparameter\n\nChange-Id: I96ec5b79c08e37c9bca59470addb5a9f7869eaea\n"
    },
    {
      "commit": "ec3f9bb5d289bd42633c2a8ecfb57292ed27fc1c",
      "tree": "55b3cb00472efa844a3fa97a9007729f81189268",
      "parents": [
        "b57a545711839629e64d8b40e08fa1fdba401b11"
      ],
      "author": {
        "name": "Adam77Root",
        "email": "adam77root@gmail.com",
        "time": "Sat Jan 05 19:13:51 2013 +0100"
      },
      "committer": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Sat Mar 02 22:27:47 2013 -0800"
      },
      "message": "stagefright: add support for samsung proprietary omx\n\nChange-Id: I79b7b4dd8a2ba71d7c95f067d13620260a2e0f63\n"
    },
    {
      "commit": "b57a545711839629e64d8b40e08fa1fdba401b11",
      "tree": "ca83abb554d2ef0dd5862b7ac82bffe895574944",
      "parents": [
        "f32d5707d4971ca7755712ad95a5b6155099560b"
      ],
      "author": {
        "name": "Andrew Dodd",
        "email": "atd7@cornell.edu",
        "time": "Thu Jan 03 23:16:44 2013 -0500"
      },
      "committer": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Sat Mar 02 22:27:38 2013 -0800"
      },
      "message": "exynos4:  Part of Netflix fix\n\ncodeworkx pulled the Samsung colorformat patch from Insignal\u0027s\nexynos-jb branch, which is an invalid source for exynos4 patches.\n\nIt was checking for an OMX codec name that didn\u0027t exist.\n\nThis still doesn\u0027t stop Netflix JPlayer failing in 10.1, but\ndoes fix Netflix failing if you disable JPlayer by convincing\nit that it\u0027s on an older Android version.\n\nChange-Id: Ia55878dc08f81e2900307558e35c4e0c5b9cac2f\n"
    },
    {
      "commit": "f32d5707d4971ca7755712ad95a5b6155099560b",
      "tree": "e2b0e8082c7e4d99d11796b3c3ec9a4a44a19ce6",
      "parents": [
        "bca52a9e48563198e8425c0f0a6fd2b2d998c87e"
      ],
      "author": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Fri Mar 01 14:25:46 2013 -0800"
      },
      "committer": {
        "name": "Dorian Snyder",
        "email": "dastin1015@gmail.com",
        "time": "Fri Mar 01 15:19:37 2013 -0800"
      },
      "message": "frameworks/av: squashed CM commits\n\nRevert \"av: unbreak mako build\"\n\nThis reverts commit bca52a9e48563198e8425c0f0a6fd2b2d998c87e.\n\nRevert \"Fix mako build.\"\n\nThis reverts commit 3e8a2aef873001f4e168d738f596899ba8673ab8.\n\nRevert \"stagefright: Fix tunnel mode ifdefs\"\n\nThis reverts commit d9e8f7a8e085b121e0bc6518c3cf3f9a0b3e6f48.\n\nRevert \"Revert \"libstagefright: Convert mono to stereo for LPA clips\"\"\n\nThis reverts commit 93319b90415114286ee96b01a65df35f30b78aa0.\n\nFix the build on non-QCOM\n\nChange-Id: Idb8d5c98fbdc01e6063ad0eb224baba66acc813d\n\naudioflinger: Allow mixed use of JB A2DP HALs and ICS policy\n\nOld policies don\u0027t address the modules by handle and expect them\nall to be scanned for supported devices; new modules stopped\nlisting supported devices. The combination of a new A2DP with\nan old policy left policy unable to find A2DP outputs, so the\nnew HALs couldn\u0027t be used.\n\nSo... if an old policy is in use, searching for an A2DP output,\nand finds a non-primary HAL that doesn\u0027t list any device, assume\nit\u0027s A2DP and use it.\n\nChange-Id: Ie946c065b5c325afd02ba3437077f634e079b386\n\nframeworks/av : Playing AAC and MP3 clips using LPA.\n\n-AAC and MP3 clips are not playing.\n-AAC and MP3 are not using LPA path.\n-Enable LPA decoder path and implement LPAPlayer class.\n\nChange-Id: I76438319fc72c4898fad5910f8de874f89287687\n\nRevert \"libstagefright: Convert mono to stereo for LPA clips\"\n\nChange-Id: Ib6cc3401c889a8ec52dc83e3bea367f94a582a40\n\nFix mako build.\n\nChange-Id: Ic73cb2f4152ac77a83fcda7e89b4a8202df440c6\n\nstagefright: Fix tunnel mode ifdefs\n\n * Was breaking on 8660 due to previous commit.\n\nChange-Id: Ia9f5c45552cc933db336a66b6d1214b65e810488\n\nlibstagefright: Adjustment for TunnelPlayer buffer size\n\n- Make necessary adjustments to align the buffer size\n  for TunnelPlayer to satisfy the following conditions\n- Buffer size is a multiple of LCM(1,2,4,6,8)\n- Buffer size is aligned to 4k.\nCRs-Fixed: 447274, 442365\n\nChange-Id: I1b7f9ac3cf8ff86f972a8b6798bfcff3a4ba7c64\n\naudio: apply volume on DirectOutput streams\n\n- Call stream-\u003eset_volume to apply volume on\n  particular stream of DirectOutputs\n\nChange-Id: I98e3b856ee508d407f893afad66caade5eda3e4a\nCRs-Fixed: 445953\n\nlibmediaplayerservice: Add new player for DASH\n\n- Add new player factory to support dash playback.\n- DASH urls end with .mpd. When media player receives\n  an url with .mpd, it will use new factory to instantiate the player\n  to be used for supporting DASH playback.\n\nChange-Id: I69e5a08fb2baf89d97b1e0711dbe52a8b1c39c29\n\nACodec: Support for dynamic port reconfig\n\n- On port settings changed first flush output port\n- Move ACodec to new state called FlushingOutputState\n- Flush all output buffers, wait till all decoded buffers\n  are rendered\n- Then disable output port, and allocate output buffers\n  with new resolution, and reset native window\n\nChange-Id: Iafa266371ed2a87b909fbcb4eeae6b64208df617\n\nlibstagefright: Add support for frame-by-frame mode\n\n- Set decoder in frame-by-frame mode always, except for interlaced\n  content, for which arbitary mode should be set\n\nChange-Id: I8195a40549898b43a0e03d65663c7148f458c448\n\naudioflinger: Fix to set correct volume in Tunnel playback\n\n- After a pause and resume, tunnel playback volume is always\n  set to maximum irrespective of the volume value before pause.\n- The cause for this is, the stream volume is not used to set\n  the volume in directaudiotrack.\n- Fix is to use the stream volume to set volume during tunnel\n  playback.\n\nChange-Id: I59cda146ed88bd5c4186aeb9ae5d165f4a27493f\nCRs-fixed: 452285\n\nlibstagefright: Check for duration \u003e 0 to avoid DivideByZero crash\n\n- duration \u003d 0 can cause divide by zero and for this clip duration\n  is indiacted as 0.\n- check for duration \u003e 0 rather than duration \u003e\u003d 0\n\nChange-Id: I58ccacbf7ede892dff9626715162ea7b1f2ddbc6\nCRs-Fixed: 451855\n\nlibstagefright: Squashed commit of LPA/tunnel updates from CAF\n\nlibstagefright: Exceptions in using Tunnel mode decode\n\n- Accumulate all known exceptions to a separate function\n\nChange-Id: I61bbc288c9a087559db210e76141b8c57e67fff0\nCRs-Fixed: 432080\n\nlibstagefright : Stability fixes for Tunnel Player (part 2)\n\n- Synchronize b/w reset() and onPauseTimeout\n- Synchronize b/w seekTo() and onPauseTimeout\n\nChange-Id: Ia5cfc6b4dcc326ead440fba35d809d4f3f1b5a81\nCRs-Fixed: 449122\n\nRevert \"Revert \"libstagefright: Convert mono to stereo for LPA clips\"\"\n\nThis reverts commit 0db8a19fb3216a8a83d5d6cbd5f1ccbf997a20d8.\n\nlibstagefright: Port Tunnel mode fixes to LPA\n\n- Miscellaneous fixes for seek, pause/resume, EOS handling\n- Miscellaneous fixes for synchronization between the decoder thread,\n  TimedEventQueue and the player thread.\n- This change is a port of a similar set of changes made for\n  TunnelPlayer\n\nChange-Id: I82c2904f7aedfb9c4f03200419fcba8b038e3d54\n\nlibstagefright: Avoid use of extra bytes to signal seek processed\n\n- A few bytes were reserved in the buffer sent by Tunnel/LPA\n  player to audio HAL to indicate a seek has been processed and\n  there is no need to skip it.\n- We won\u0027t need this method anymore as this can be fixed instead\n  by synchronizing seekTo() and the extractor/decoder threads.\n\nChange-Id: Ic02ae1699bb59e2f6b8d9fb599d0fa43fd3f19e3\n\nlibstagefright: LPAPlayer synchronization fixes\n\n- synchronize b/w seekTo() and onPauseTimeout()\n- synchronize b/w reset() and onPauseTimeout()\n\nChange-Id: I29a4ccf02e28fe7b7c00e35a679ff2b5271ffb6f\n\nlibstagefright: TunnelPlayer performance tweaks\n\nSome tweaks when TunnelPlayer is used for audio/video playback\n\n- Keep the extractor thread at ANDROID_PRIORITY_NORMAL\n- sched_yield() after reading a frame to give the video thread(s)\n  (CallbackDispatcher and/or TimedEventQueue) to be scheduled\n\nChange-Id: If0d86d629fd0e15aff917af8589472578cd28bf4\nCRs-Fixed: 444041\n\nlibstagefright: Fix incorrectness nPortIndex value for QueryCodec\n                The query index is wrong, it will make a death loop in\nmy ME722 when get resource thumbnail for MPEG4 video.\n\nChange-Id: I64532156e762b847a8eae59560fb828549c29519\n\nlibstagefright: Stop the logspam from LPAPlayer\n\nChange-Id: Id6319774806e152333d468b9ff62d148e476555a\n"
    },
    {
      "commit": "3e8a2aef873001f4e168d738f596899ba8673ab8",
      "tree": "668ae75ed02d51d5e2d0bad0d3948c3bbba80a68",
      "parents": [
        "d9e8f7a8e085b121e0bc6518c3cf3f9a0b3e6f48"
      ],
      "author": {
        "name": "Danny Baumann",
        "email": "dannybaumann@web.de",
        "time": "Wed Feb 06 13:06:47 2013 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Feb 16 18:14:34 2013 -0700"
      },
      "message": "Fix mako build.\n\nChange-Id: Ic73cb2f4152ac77a83fcda7e89b4a8202df440c6\n"
    },
    {
      "commit": "d9e8f7a8e085b121e0bc6518c3cf3f9a0b3e6f48",
      "tree": "2e3a82ea8b078ce6e77f0f771f95a546c785a7e1",
      "parents": [
        "93319b90415114286ee96b01a65df35f30b78aa0"
      ],
      "author": {
        "name": "Steve Kondik",
        "email": "shade@chemlab.org",
        "time": "Wed Feb 06 06:49:41 2013 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Feb 16 18:13:49 2013 -0700"
      },
      "message": "stagefright: Fix tunnel mode ifdefs\n\n * Was breaking on 8660 due to previous commit.\n\nChange-Id: Ia9f5c45552cc933db336a66b6d1214b65e810488\n"
    },
    {
      "commit": "93319b90415114286ee96b01a65df35f30b78aa0",
      "tree": "12ffe098f20a7528fcc7df7f037562f4a7d1142e",
      "parents": [
        "8fc4d9e53aa174144b62f3436fa3693815a8196b"
      ],
      "author": {
        "name": "Ricardo Cerqueira",
        "email": "cyanogenmod@cerqueira.org",
        "time": "Wed Feb 06 12:05:41 2013 +0000"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Feb 16 18:13:40 2013 -0700"
      },
      "message": "Revert \"libstagefright: Convert mono to stereo for LPA clips\"\n\nChange-Id: Ib6cc3401c889a8ec52dc83e3bea367f94a582a40\n"
    },
    {
      "commit": "9b3dd17a2d2e3a36da135d39bbbb58c95be52227",
      "tree": "b33d91c5955046b90a6bb97bbc15947f1064ce51",
      "parents": [
        "8ea530c20e8593e1cb593eb2cf6ded4a61d75662"
      ],
      "author": {
        "name": "Mingming Yin",
        "email": "mingming@codeaurora.org",
        "time": "Thu Jan 10 18:42:38 2013 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Feb 16 18:12:38 2013 -0700"
      },
      "message": "Squashed commit of updates from CodeAurora\n\nauido: Add amr-wb+ codec to ACodec.\n\n-Add an entry for amr-wb+ decoder in ACodec.\n-amr-wb+ non tunnel will be enabled by default.\n\nChange-Id: Ied8902eb83da29a3164eb99e88630570a43f681e\n\nlibstagefright: Create MP3 decoder libraries without OMX layer\n\n- With the current MP3 OMX SW decoders, the decoding time\nis increased w.r.t the libraries without OMX layer that are\npresent in GB. This increase in decoding time results reduction in\npower savings in LPA mode.\n- This commit is to remove OMX layer for MP3 to reduce the\npower consumption in LPA mode\n\nChange-Id: I835ab6d013a326f111e513586f884bacd5f7106a\n\naudioflinger: EffectModules are updated with device change\n\nIssue: Effects modules are not updated with the device change\ninformation\nFix: 1) Add setDevice information to mLPAEffectChain\n2) Remove the return after sending the device route information to\nDirect track so that mixer thread is also aware of the device\nchange for EffectsChain\n\nChange-Id: I82936cd47290946a5e4772e448669d81e0e4d6f5\n\nlibmedia : Add a NULL pointer check\n\n- Print frame count in AudioTrack::dump() only if the control\n  block is valid\n\nChange-Id: Icf594eb721b48795c43d7bd165f6086031ce6efd\nCRs-Fixed: 435050\n\nlibstagefright: Query AudioSystem for suggested record mute duration\n\n- AudioSource mutes a pre-defined duration (defined by kAutoRampStartUs)\n  at the beginning of a recording.\n- Instead, query the audio system for any ongoing playback streams\n  and use its output latency to calculate the duration to mute the incoming PCM stream.\n- This assumes all current playback threads will be paused once recording\n  is started.\n\nChange-Id: Ie9b1d62e7be803ef1d8a59127b95c73e03fa5ce6\nCRs-Fixed: 438149\n\nlibstagefright: Convert mono to stereo for LPA clips\n\n- Sound effects are not supported for mono clips\n- Repetative calling of effects_configure and effect_process for\n  mono clips is resulting in crash in the sound effects library.\n- So, Mono clips are now converted to stereo by copying the left\n  sample to right.\n- This is same as what Resampler does in Non-LPA Playback.\n\nThis commit is a port of fcc0647fab20ceaf1c07bc10bb243f14c48b114c\nCRs-Fixed: 421639\n\nChange-Id: Ie579c8d11afe3db8d42a35956e8bf23eeb88cfe6\n\naudioflinger: Fix to set volume from MediaPlayer in Tunnel mode\n\nIssue: MediaPlayer.setVolume does not have effect on Playback\nvolume in TunnelPlayer mode\nFix: the left and right volume parameters of setVolume are\nhardcoded and defaulted in DirectAudioTrack. Updating the\nparameters from the input arguments fixes the issue\n\nChange-Id: I8a107ce57284b225b17d95fed0f69e3adc5fb131\nCRs-Fixed: 441849\n\nlibstagefright: Enable Tunnel Decode for select formats\n\n- Enable tunnel mode decode only if the audio mime type\n  matches a supported list.\n\nChange-Id: I32afd83e5fda1e90cb671dd747f17cb83bb84fc1\nCRs-Fixed:437651\n\nframework/av:: Add support to decode mp3 data in mp4 container\n\n- Added support to decode mp3 data in mp4 container packed as mp4a\n  atom and .mp3 atom as well.\n\nPort of 8fa3774adf9259b33ee721cfaeff26da42c29928\n\nChange-Id: I1a04022f30a9f6516575440aba7652986ab7dc58\nCRs-Fixed: 439897\n\naudiomixer: Use High Quality resampler\n\nUse very high quality resampler to upsample to 48KHz sample\nrate.\n\nChange-Id: I1ba5b839f1e74ae71b405538d970e6a966bd1d47\nCRs-fixed: 416730\n\naudioflinger: Fix a deadlock\n\n- A deadlock will happen if the obit recipient\n  registered by the DirectAudioTrack is called.\n- Fix this by moving the lock acquisition in DirectAudioTrack::clearPowerManager()\n  to after DirectAudioTrack::releaseWakeLock() is called.\n- Also synchronize use of mPowerManager in the DirectAudioTrack\n  destructor with DirectAudioTrack::clearPowerManager()\n\nChange-Id: Ib127db1406c4a61a4054ca0cf30f4c7347a5c92a\nCRs-Fixed: 444093\n\nlibstagefright: TunnelPlayer: update condition to send SEEK_COMPLETE\n\n- If the client tries to seek to 0 (e.g as a result of LOOPING)\n  without ever calling getPosition(), we will always sent an immediate\n  seek notification without seeking.\n\nChange-Id: Id2b9d00c611278d0521cb6fd402710f0ec37bbdd\nCRs-Fixed: 441411\n\nlibstagefright: Remove unnecessary code from TunnelPlayer\n\n- TunnelPlayer tries to mimick AudioPlayer when trying\n  to delete the extractor source.\n- It is needed for AudioPlayer as the OMXCodec object\n  is referenced by the CallbackDispatcher as well as AudioPlayer.\n- This condition is not true for TunnelPlayer, so why do it.\n\nChange-Id: I79c4e17d01910e73ad01c5640ef374626313a18e\nCRs-Fixed: 442365\n\nAdd MediaDebug header from CAF\n\nChange-Id: I68dbe72f86a49685b82b64927d1aa80231647a7a\n"
    },
    {
      "commit": "8ea530c20e8593e1cb593eb2cf6ded4a61d75662",
      "tree": "fa19ee059814e695f4287866b88028825c5d2063",
      "parents": [
        "ccecb77519a58e57ede34a082dc10af13ea997bf"
      ],
      "author": {
        "name": "Alexy Joseph",
        "email": "alexyj@codeaurora.org",
        "time": "Sat Dec 22 00:58:48 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Sat Feb 16 18:12:27 2013 -0700"
      },
      "message": "libstagefright: Collection of fixes for TunnelPlayer\n\n-Handling of EOS, and triggering EOS was wrong\nin TunnelPlayer. Seeking when EOS was posted\nto the HAL was wrong. EOS should\nnot be posted till seek is complete\n-Also, EOS should not be posted to\nthe app if we are seeking\n-Player should wake up when seeked,\neven after EOS was posted from player\nto HAL\n-Fixed this issue by cleaning up the code for EOS\n-Disable tunnel mode playback for streaming use cases\n to avoid jittery playback\n\nChange-Id: I21699d2d5874bde6cbfe549ce0251b252e9a4090\nCRs-Fixed: 433346\nCRs-Fixed: 432233\nCRs-Fixed: 429868\n\nlibstagefright: Add new mime for QC TS container\n\n- Add new mime type for TS container that is sniffed by extended\n  extractor. This is needed for media extractor to determine which\n  parser to create.\n\nChange-Id: I18dcebbbf3b31cea7db29a4dd65385638343bec1\n\nlibstagefright: Use software decoder for ADTS content.\n\nUse software decoder for widevine content which uses ADTS\nformat.\n\nCRs-fixed: 431096\n(cherry picked from commit 3edf2e703bcdc47f122864865056d5cb65b7ab43)\n\nChange-Id: I50eba673ddd6ec2bbb737577978e61902ff68d13\n\naudioflinger: Fix to release wakelock after closeoutput\n\n-In DirectTrack destructor, closeOutput is called after\nreleaseWakelock is done. This may sometimes result in\npower collapse happening even before actual close\nsequence of Audio path is completed and will result\nin high power consumption.\n-Release wakelock only after closeOutput is done\nin directtrack destructor.\n\nCRs-fixed: 438179\nChange-Id: Ibe103804daf2cb09bade998d6d34c3a34508dd09\n\nlibstagefright: Add support to change clip duration to enable LPA\n\nAdded support to change the clip duration threshold value for LPA\nplayback. A new system property \u0027lpa.min_duration\u0027 has been added\nwhich controls the minimum clip length for enabling LPA.\nThe default threshold value has been retained as 60sec.\n\nChange-Id: I6a8be6d6bf67495977d8c75e5be14723a31353b1\n\nframeworks/av: Skip tunnel mode for playback through AudioCache\n\nIn the use case of playback using SoundPool, decoded data is\ncached from player and further rendered through AudioCache.\nAvoid Tunnel mode for the use case AAC format through SoundPool\n\nChange-Id: I21005a5b39f9fb480ae0d525ecb560fec4382620\nCRs-Fixed: 437539\n\nframeworks/base: dumpsys rendering statistics for Stagefright\n\n- this adds extra fps statisticis\n- report via dumpsys\n\nChange-Id: I7b4d4582c4eb2ccf2d11557844dade92f9e587c0\nCRs-Fixed: 435013\n\nlibstagefright: Stop extractor source after start in TunnelPlayer\n\nIssue: In the use case of frequent suspend resume during Video\nPlayback with HDMI Connected, we encounter a scenario where tunnel\nplayer is created and destroyed without the extractor source\nstarted. In such use case, stopping the source in reset during the\ntunnel player destruction leads to failure during assertion check.\n\nFix: Check for mStarted flag to ensure that stop on source is\ncalled only after they are started.\n\nChange-Id: Ib18e7ee3d10b2cc706944e358046f163d156706c\nCRs-Fixed: 440239\n"
    },
    {
      "commit": "b96612ab52d686f90a3c173b24e47cf6ae11f222",
      "tree": "08dd3c184d1cbf4e9d1752b2a08a6f39f9af30ea",
      "parents": [
        "7d4490fbc48fb1989b0b8cbca45f96f031d62c35",
        "f0ff908da019a44115109f1b4d1b6864b35a8a29"
      ],
      "author": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Wed Feb 13 02:04:06 2013 -0600"
      },
      "committer": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Wed Feb 13 02:04:06 2013 -0600"
      },
      "message": "Merge tag \u0027android-4.2.2_r1\u0027 into jb422\n\nAndroid 4.2.2 release 1\n"
    },
    {
      "commit": "7d4490fbc48fb1989b0b8cbca45f96f031d62c35",
      "tree": "f2161b884ff0fbb1ff46f32bc5c41742f0873150",
      "parents": [
        "bae8ea327292d2489caff99e355a5cc6b57d0642"
      ],
      "author": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Sun Nov 11 19:16:55 2012 -0600"
      },
      "committer": {
        "name": "Nikez",
        "email": "nikez141@gmail.com",
        "time": "Thu Jan 10 03:43:03 2013 +0100"
      },
      "message": "avcencoder: (qsd8k) Switch malloc/free callbacks to use pointers\n\n instead of ints\n\n* mirrors change made to softavcencoder\n\nChange-Id: I69e17134145211425ab35f43efa23b894ca66157\n"
    },
    {
      "commit": "bae8ea327292d2489caff99e355a5cc6b57d0642",
      "tree": "b190a9f4c40969aa86f294eff373c1c6d7692e26",
      "parents": [
        "dad643561e432fe738386e21db4414bd40e6a902"
      ],
      "author": {
        "name": "Paul Mongold",
        "email": "pmongold@gmail.com",
        "time": "Mon Sep 24 23:00:48 2012 -0400"
      },
      "committer": {
        "name": "Nikez",
        "email": "nikez141@gmail.com",
        "time": "Thu Jan 10 03:42:50 2013 +0100"
      },
      "message": "stagefright: fixup video encoding for qsd8k\n\n  *use the old non-omx avc encoder with BOARD_USE_OLD_AVC_ENCODER flag\n  *skip over the bframe stuff with BOARD_NO_BFRAMES flag\n\nConflicts:\n\tmedia/libstagefright/Android.mk\n\nChange-Id: Ie2e2e1cbeaa692b3bf59e04b2878b220426ec9cc\n"
    },
    {
      "commit": "dad643561e432fe738386e21db4414bd40e6a902",
      "tree": "604501a58f6ebd080d73b837bf6e164caf2b7c69",
      "parents": [
        "bd55ff5923f3263daf71aaa4049c289ef7ee52d0"
      ],
      "author": {
        "name": "Tanguy Pruvot",
        "email": "tanguy.pruvot@gmail.com",
        "time": "Sun Jul 22 14:29:34 2012 +0200"
      },
      "committer": {
        "name": "Nikez",
        "email": "nikez141@gmail.com",
        "time": "Thu Jan 10 03:42:39 2013 +0100"
      },
      "message": "Suppress error about the missing vendor libwvm.so\n\nChange-Id: I974a9689b9d638fb7634162611b391dd123a991c\n"
    },
    {
      "commit": "bd55ff5923f3263daf71aaa4049c289ef7ee52d0",
      "tree": "562336e592618227da92ea4c0318592416e6e4d1",
      "parents": [
        "fe25748f78eb0043302acb30cf1f473e7af467d2"
      ],
      "author": {
        "name": "vivek mehta",
        "email": "mvivek@codeaurora.org",
        "time": "Tue Dec 18 14:55:24 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Tue Jan 01 16:15:38 2013 -0700"
      },
      "message": "Squashed commit of updates from CodeAurora\n\nlibstagefright: Add support for VC1 clips\n\n- configure decoder in frame-by-frame or arbitrary mode\n  based on the codec type.\n\nChange-Id: I6404e5b7ee217045e6456f51f914dbd8a651d98a\nCRs-Fixed: 432847\n\nstagefright: Miscellaneous fixes for LPA and Tunnel playback\n\n1. Fix for AV sync issue with Tunnel playback\nAPIs for returning correct timestamps were implemented\n2. Crash while exiting TunnelPlayer\nCheck whether sink is open before flushing or closing it.\nCheck for mIsAudioRouted is good to know if we are closing it\n3. Seekbar freezes after seek and pause\nCheck pause status before writing\n\nChange-Id: Id8ab7b258e9c05b20e121bdf3c4dc30d519f6c15\n\nframeworks/av: Add support for surround sound recording\n\n- Add 5.1 channel as supported input channel\n\nChange-Id: I50fcd87245c5c855ede8f09ea1a7c5be2e684640\n\nstagefright: Add tunnel decode for amr-wb/wb+\n\nWhen tunnel.decode is true, playback of AMR-WB\nand AMR-WB+ uses tunnel decode.\n\nChange-Id: Ic06cb3faaac18f605402c98a27cb4dfa4b7faee2\n\nstagefright: Skip LPA if #channels \u003e 2\n\nSkip LPA for Multi channel playback\n\nChange-Id: I5b97471ef55aea260d1c02db672eb4bd64c3edef\n"
    },
    {
      "commit": "a5dd910209d154f92ea7436f3a79dba76bbe99bb",
      "tree": "ea02353a3dc103399aa43b56ba7e237c56233a51",
      "parents": [
        "db4fd36a03ad2526931006f9ad009b1886f2da0d"
      ],
      "author": {
        "name": "Kevin Bruckert",
        "email": "agrabren@yahoo.com",
        "time": "Tue Nov 20 04:48:00 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Fri Dec 28 23:07:25 2012 -0700"
      },
      "message": "Add camera parameters for htc evo 3D. (1/2)\n"
    },
    {
      "commit": "2192bc9d9f43ed639239641c186fdcd554d63113",
      "tree": "bde3a85a9d5aff18a8d38a0c4429fb737816b69d",
      "parents": [
        "c81084cb4c2f0ccf1ff996906595f7668a5decd0"
      ],
      "author": {
        "name": "vivek mehta",
        "email": "mvivek@codeaurora.org",
        "time": "Tue Dec 04 11:46:08 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 21:00:15 2012 -0700"
      },
      "message": "Squashed commit of audio changes from CodeAurora\n\nlibstagefright: Add QC specific media format\n\n- Add QC specific media extensions\n- Add QC specific media definitions\n\nChange-Id: I7dca90be3b977701d9537f5e017117790a030f1f\n\naudio: Compile AudioParameter as shared library\n\n- AudioParameter as shared lib is needed by BT\n  support in WFD source.\n\nChange-Id: I464b428ace0cbb57ce6bf7bf3b57d51a7d56f032\n\nlibstagefright: Send flush on both i/p and o/p ports together\n\n- ANR occurs in music due to race condition in OMX component if\n  flush is issued separately for i/p and o/p ports as DSP only\n  handles simultaneous flush on i/p and o/p ports.\n\nChange-Id: I5b16cd5a9b57c857dc8bed489d2663b8f54769e3\n\nlibstagefright: Enable extended A\\V format\n\n- Add new files to support extended A\\V format\n\nChange-Id: I1e61d78d35b868d55fd8e99f95de8cab9c465db4\n\nlibstagefright: Framework to plug-in propritory parser\n\n- Extend the current framework to plug-in propritory\n  parser\n\nChange-Id: Ia586a3048420ddf1515261f20035589447263b7b\n\naudio: add support for QCOM audio formats\n\n- Add support for EVRC, QCELP, and WMA formats.\n\nChange-Id: Iaf80f982fc8b08617132dbd7d524a1748866745c\n\nframeworks/av: Support Tunnel Playback\n\n- Implement DirectTrack and DirectTrackClient\n- DirectTrack exposes API to client so it can create a direct\n  output.\n- DirectTrackClient allows notifications to be sent to the\n  client from DirectTrack\n- DirectTrack is being used for Tunnel Audio\n\nChange-Id: I2fbb18a781d8e44b8d65da9a357f6e39375f063a\n\nframeworks/av: Support LPA Playback\n\nAdd support to enable Playback in LPA mode\n\nChange-Id: I1b8ac4904f4735017d62f3757ede7bbb56e62fd3\n\naudio: Send correct channel mask in voice call recording.\n\n-Using popCount function to get channel count gives incorrect value on\nvoice call recording.\n-Only STEREO and MONO bits to be considered to count\nchannels on input\n\nChange-Id: I04c2c802422e868bdba0538ff8623dbf9eb659fe\n\nlibstagefright: Thumbnail mode initial commit\n\n- use sync frame decoding mode when kClientNeedsFrameBuffer\n  is set for hardware decoders\n- hardware decoder will only expect I frames, OMXCodec will\n  set EOS on first ETB to stop more frames from being pulled\n- skip EOS check on FTB so that the first frame will be\n  handled\n\nChange-Id: I0e8974e088fdcc468e27764861c128cfe291499f\n\naudio: Add support for QCOM\u0027s VOIP solution\n\nChange-Id: I1150f536fa204b535ca4019fdaa84f33f4695d93\n\naudio: define QCOM audio parameters\n\n- Define QCOM audio paramters for FM, VOIP,\n  fluence, SSR, and A2DP\n\nChange-Id: I29d02e37685846f6d4f00dee02e2726b015eaae7\n\nAdd ifdefs for QCOM enhanced features\n\nChange-Id: Ic8e5fe6ecc058466ced71030883b1af6c2bc055c\n"
    },
    {
      "commit": "c81084cb4c2f0ccf1ff996906595f7668a5decd0",
      "tree": "73c587f95daa903359e6980daacf78a21dc0a4f8",
      "parents": [
        "c5c46386a09e6f642b20944747d520a830b2c9ff"
      ],
      "author": {
        "name": "vivek mehta",
        "email": "mvivek@codeaurora.org",
        "time": "Tue Dec 04 20:57:49 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:53 2012 -0700"
      },
      "message": "libstagefright: Add support to seek to zero\n\n- Add CAN_SEEK_TO_ZERO flag in MediaExtractor to allow\n  seek to zero, when previous button is pressed, for clip\n  that can\u0027t be seeked.\n\nChange-Id: Ic2761cc5bac2403ee1339da77ad02fde942a3437\n"
    },
    {
      "commit": "7ea2ebdc1fac2d57b248d365942dd75d401de8d2",
      "tree": "cafced05aa21637e6962d011bc2634ceb32dc6b3",
      "parents": [
        "140a9ac76b79f06fc9d2191f2da336f1fc55ca1f"
      ],
      "author": {
        "name": "codeworkx",
        "email": "codeworkx@cyanogenmod.org",
        "time": "Thu Dec 06 19:51:07 2012 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:38 2012 -0700"
      },
      "message": "libstagefright: exynos4: set proper eColorFormat\n\nChange-Id: Ie025face3c292e685fdf4d83c99276b0a9e4d71d\n"
    },
    {
      "commit": "140a9ac76b79f06fc9d2191f2da336f1fc55ca1f",
      "tree": "4e13c8e25d2dc46d64368adf57458e8fac762d3c",
      "parents": [
        "f510d4701c16da39dcefbe5d5ee9d90ff90cbb0c"
      ],
      "author": {
        "name": "Ankit Premrajka",
        "email": "ankitp@codeaurora.org",
        "time": "Mon Nov 21 19:25:02 2011 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:31 2012 -0700"
      },
      "message": "Camera: Qcom parameters partial rebase\n\nAdd customized parameters for qcom camera features.\n\nSquashed commit of the following submissions to CAF:\n\ncamera: add custom camera parameters to hardware java file.\n\nChange-Id: Ic2b363df6d25a0c3a49aed30e717d10874f533ae\n\nCamera: Add support for wavelet denoise\n\nChange-Id: I97be72615fe5909987ac430034bbdc16f2d20509\n\nCamera : Add support for histogram in frameworks\n\nChange-Id: Ibf751c3b2d488f4be0afaaa3e994372bafeffbe7\n\nCamera: Add ZSL support in framework.\n\nChange-Id: I4e863020d7d407d9c3936beb83dc7abf385c4654\n\nCamera: Add touch AF/AEC support in ICS framework\n\nIn, ICS the old touch AF/AEC functions getTouchIndexAf(),\nsetTouchIndexAf() etc  are no longer valid. Added new functions  to get\nthe center of touched area.\n\nChange-Id: I37d00040f895cd8a4de2e2a438971aa2d9c1a045\n\nCamera: Add support for Red eye reduction\n\nChange-Id: Iada280ac33aee8b1114dc40d8d79e0e47ad5c2fd\n\nConflicts:\n\n\tapi/current.txt\n\nCamera: Enable streaming texture and YV12 feature\n\nChange-Id: I814c92b469e0f25baef0ce80338761d1e6443085\n\nCamera: Add frameworks support for high frame rate\n\nChange-Id: I9722e9b7e61433651ab5f76f76208853eb1fd849\n\nCamera: Simplify ASD menu and best mode menu.\n\nChange-Id: Ia7a1eca9268eec021a6e2c3f7ce2a932e8819d50\n\nCamera : Macro definition change. PIXEL_FORMAT_YV12 to \"yuv420p\"\n\nWhy: CTS testcase is expecting \"yuv420p\" as the format string for YV12 mode.\n\nCRs-Fixed: 328252\n(cherry picked from commit 0a263f67b75497e4b95b9de8c370ed9496ab59ef)\n\nChange-Id: I66f418a52775a969d81bcb332bbe500370e3ab7c\n\nCamera: Changes for face detection\n\nChange-Id: I7b2172e8690d6e23762e42f5888fecbfda15ba61\n\nCamera: Add support for burst count\n\nChange-Id: I4488a5eac1eebb0b5c8e2cc7cbbe7be0c7301be7\n\nCamera: enable HDR feature\n\n(cherry picked from commit e40770bbdadd925fc1e07a08249a15981b961570)\n\nChange-Id: Ie9ca3066e8e53710bf292d047a3724aefc029854\n\nCamera : Add API to find fullsize liveshot support\n\nChange-Id: I3c2fc3578decbe5cf87fded5362f317df0b40b5e\n(cherry picked from commit 65d80f04892776eec1c19c844eacb8c454b4bd1a)\n\nCamera: Set default camera area string\n\nThe default invalid value for KEY_FOCUS_AREA and\nKEY_METERING_AREA is changed to \"(0,0,0,0,0)\"\nCRs-fixed: 334934\n\nChange-Id: I354802c8611ee5c00a591b96b1a1ca04926969cb\n\nCamera: Change the scenemode names in framework\n\nTo comply with ICS API Specification,\nSCENE_MODE_AUTO changed to SCENE_MODE_ASD\nSCENE_MODE_OFF changed to SCENE_MODE_AUTO\n\nChange-Id: I8e744f10c728f469923b09f69d6d64bc5c7c6850\n\nCamera : Framework changes for camcorder UI menu\n\nChange-Id: Iff9e9021da44b67f81a24c828b960113ee249248\n\nCamera : Remove unwanted video resolution in Framework\n\n- FWVGA, WQVGA resolution UI options are removed for camcorder.\n\nChange-Id: If621140966b01dbc8c30a4d161e6771528b8adda\n\nCamera : Enable FWVGA and WQVGA resolutions in camcorder media profiles\n\nChange-Id: Iad9cc33f7b6d8eb7de21df372c016edeef0b99ba\n\nUnlock camera AWB lock only when white-balance is changed.\n\nbug:5633546\nChange-Id: I90bb4b5b445daedf38a64e2f8fb980fc0f0aaa81\n\nChange-Id: Ie3cc15132489502e64321776d49d96846b5705d6\n\nConflicts:\n\tcamera/Android.mk\n\tcamera/CameraParameters.cpp\n\tinclude/camera/CameraParameters.h\n\tservices/camera/libcameraservice/CameraService.cpp\n\tservices/camera/libcameraservice/CameraService.h\n"
    },
    {
      "commit": "f510d4701c16da39dcefbe5d5ee9d90ff90cbb0c",
      "tree": "6f52ea29c329229ff5faac6756fd64b8f7d938f8",
      "parents": [
        "0ee5c425a4fdb37e07cd7ed1c519d7b0feb34b78"
      ],
      "author": {
        "name": "codeworkx",
        "email": "codeworkx@cyanogenmod.org",
        "time": "Thu Dec 06 01:48:56 2012 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:27 2012 -0700"
      },
      "message": "omx: exynos4: bring inline with jellybean\n\nChange-Id: Ic275fd30a721f8161dcc44c2706b86ab5ea213ba\n"
    },
    {
      "commit": "0ee5c425a4fdb37e07cd7ed1c519d7b0feb34b78",
      "tree": "df309fe83be6177bfd6a6f49aec6eba1ff2177d6",
      "parents": [
        "018fdf4b94c17fc1c8ac22b01f2800fb4ff6deec"
      ],
      "author": {
        "name": "Hashcode",
        "email": "hashcode0f@gmail.com",
        "time": "Fri Nov 30 00:28:40 2012 -0800"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:22 2012 -0700"
      },
      "message": "libmedia: add pre jb-4.2.1 signature for AudioSystem::getDeviceConnectionState\n\nWith jb-4.2.1 the type audio_devices_t found in system/core/include/system/audio.h\nwas redefined from a typedef enum to uint32_t.  This causes the signature\nof AudioSystem::getDeviceConnectionState to change in libmedia.so.\nAny older than 4.2.1 prebuilt audio.primary.___.so binaries (such as mine from ICS)\nmay refer to the old signature.  This patch adds back in that reference.\n\nChange-Id: Ie4f92eaec20d581c9bebc805cfd25f8558406e30\nSigned-off-by: Hashcode \u003chashcode0f@gmail.com\u003e\n"
    },
    {
      "commit": "018fdf4b94c17fc1c8ac22b01f2800fb4ff6deec",
      "tree": "8ab9ff6e322c625641dd4b24b218dde46ad8069f",
      "parents": [
        "cab6892c2e230a5c5111a28d82fca500983d28e8"
      ],
      "author": {
        "name": "codeworkx",
        "email": "codeworkx@cyanogenmod.org",
        "time": "Sat Nov 24 14:39:44 2012 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:13 2012 -0700"
      },
      "message": "exynos4: libstragefright: add support for samsung colorformat/omx/mfc\n\nSource:\nhttp://git.insignal.co.kr/samsung/exynos/android/platform/frameworks/av/commit/?h\u003dexynos-jb\u0026id\u003d1614612f7ca2a00473d202dbedcb135fadc608ad\n\nChange-Id: Ib40b3cfa1480ecbb69831e7967a81f63719e2ff7\n"
    },
    {
      "commit": "cab6892c2e230a5c5111a28d82fca500983d28e8",
      "tree": "763b10753e8ae558c2083113ce7eab38569868d4",
      "parents": [
        "612842e85c5df38e9626b0692746c691f7d39327"
      ],
      "author": {
        "name": "XpLoDWilD",
        "email": "xplodgui@gmail.com",
        "time": "Mon Nov 26 22:44:46 2012 +0000"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:59:07 2012 -0700"
      },
      "message": "mediaserver: instantiate SecTVOutService for samsung tvout\n\nChange-Id: I0e7767f8cf3ffd0bc376d14cf4fffffed225e701\n"
    },
    {
      "commit": "54d90af6d9e7ab62a4f9c5d3dc5f61102375ecf3",
      "tree": "3f9a6d76bdbaf58455514246bca84e8f8a329efa",
      "parents": [
        "22fe2e0ca9441e483a6c93d7b3a04a411ded8936"
      ],
      "author": {
        "name": "Ricardo Cerqueira",
        "email": "cyanogenmod@cerqueira.org",
        "time": "Sun Sep 02 04:33:40 2012 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:58:34 2012 -0700"
      },
      "message": "libmedia: Add ICS audiotrack constructor\n\nChange-Id: I5c1a3d1093cbf16111638a37601093c5eb977dd4\n"
    },
    {
      "commit": "22fe2e0ca9441e483a6c93d7b3a04a411ded8936",
      "tree": "5b80a9daeec9a9345d4bb3377dd4540e3d83fe1f",
      "parents": [
        "59199b164e5ce9dd9f3540eb73e712f2f0e68f33"
      ],
      "author": {
        "name": "Ricardo Cerqueira",
        "email": "cyanogenmod@cerqueira.org",
        "time": "Thu Jul 12 01:36:11 2012 +0100"
      },
      "committer": {
        "name": "andrew.boren",
        "email": "andrew.boren@gmail.com",
        "time": "Mon Dec 24 20:58:29 2012 -0700"
      },
      "message": "libmedia: Add ICS constructor for getOutput\n\nUsed by the Tegra ICS OMX libraries\n\nChange-Id: I2f6e7f10f11b53853626d1be86e7b2be870720f4\n"
    },
    {
      "commit": "1336924a2c38a44c6f3bce2ab86f500e95a669d2",
      "tree": "16a62e188be3d4d33c2d94820ebd740f42eda76d",
      "parents": [
        "505d39cc705cb7ad42e92da566fb4a8eab94117d"
      ],
      "author": {
        "name": "Ricardo Cerqueira",
        "email": "cyanogenmod@cerqueira.org",
        "time": "Thu Dec 20 00:48:37 2012 +0000"
      },
      "committer": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Sun Dec 23 11:56:48 2012 -0600"
      },
      "message": "WifiDisplay: Add an HDCP toggle\n\nSome WFD dongles have frequent (or permanent) failures while\nnegotiating HDCP with the device, so add a toggle to allow\nskipping HDCP entirely\n\nChange-Id: I999158df84d4a7489c40ecdf07ebcf107d071d40\n"
    },
    {
      "commit": "505d39cc705cb7ad42e92da566fb4a8eab94117d",
      "tree": "ef8c0b134d37c669f7e48c0516c95078c333d0ba",
      "parents": [
        "ec52ea35fe8eedf1ebf2cedb27ff69871419c87e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Oct 12 15:59:28 2012 -0700"
      },
      "committer": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Wed Dec 12 00:55:20 2012 -0600"
      },
      "message": "Fix log spam: Failed to open libwvm.so\n\nBug: 7342813\nChange-Id: I98852f036e4679a653723fc2bf1435d6e9d7d34c\n"
    },
    {
      "commit": "ec52ea35fe8eedf1ebf2cedb27ff69871419c87e",
      "tree": "1a9cba559ffc98247c63db5e06a55113c32266a2",
      "parents": [
        "f5037ad1ebb04e99622af5e99aeac0c1b44090b7"
      ],
      "author": {
        "name": "David Ng",
        "email": "dave@codeaurora.org",
        "time": "Tue Aug 14 20:36:16 2012 -0700"
      },
      "committer": {
        "name": "Andrew Sutherland",
        "email": "dr3wsuth3rland@gmail.com",
        "time": "Fri Dec 07 20:41:15 2012 -0600"
      },
      "message": "Fix potential NULL pointer deference in ToneGenerator destructor\n\nInitial members in ToneGenerator so destructor can free\nallocation properly.\n\nChange-Id: I4a686084af48f99d2eefc33e56e3239846d3d34f\n"
    },
    {
      "commit": "47c1a5f7c13d82aa8834fd4543bd1d713b97808e",
      "tree": "9e9cfea022e716371a5e8d03d4b00a2f579d5d43",
      "parents": [
        "5dea84c39b5e790315b525009c635806e33c97e0"
      ],
      "author": {
        "name": "Dylan Powers",
        "email": "dylan.kyle.powers@gmail.com",
        "time": "Tue Nov 27 16:06:38 2012 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Nov 29 15:02:00 2012 -0800"
      },
      "message": "Bug fix for the MediaPlayer::prepare() api.\n\nFor an MP3 source, within the prepare command, ID3 tags are checked in search of\ngapless playback info. This causes problems for streamed sources. If ID3v2 tags\naren\u0027t present, then a check is done for ID3v1 tags. This results in a read\ncommand that asks the cache to jump to the end of the file, and subsequently\nmake an extra http call to request those bytes. For a streamed source, this\ncauses the file to not be downloaded automatically when MediaPlayer::prepare()\nis called, and causes stuttering and extra buffering time to be needed when\nstart() is finally called.\nThe solution is to ignore the ID3v1 tags as the gapless info would never exist\nthere, and only check for ID3v2 tags.\n\nCherrypicked from external contribution ffd6ffc5429c45577fd8e9f8fa90e79bb91b8a84\nb/7638165\n\nChange-Id: I7d1b94cffbfe7c38ca094834dedbc92a58855e20\n"
    },
    {
      "commit": "b64def9a555bfbf533a2da41ba0189b9842a76fb",
      "tree": "7fbcc0dfa6bd8e2628c9e74b0d1e4774b2e99740",
      "parents": [
        "e5aed03d30ea0ce49728873c5b74f89ba05a9541",
        "5131d127a042ee88f903370be88845dc8c9f8578"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 29 10:57:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 29 10:57:06 2012 -0800"
      },
      "message": "Merge \"[wfd] Support a low(er) power state by triggering PAUSE/RESUME.\" into jb-mr1.1-dev"
    },
    {
      "commit": "e5aed03d30ea0ce49728873c5b74f89ba05a9541",
      "tree": "9d7df106c8aff70280cb44d023da75d6780226df",
      "parents": [
        "79c56d3f17d3193a0a86eb3c9bfdea90b89ae3f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 29 09:54:42 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 29 10:35:24 2012 -0800"
      },
      "message": "Enable retransmission of UDP packets in case we want to use it\n\nin our upcoming wfd _sink_ implementation.\n\nChange-Id: I4509c30d5a7b992bc841b73d63db902bbcf8f76a\nrelated-to-bug: 7638155\n"
    },
    {
      "commit": "5131d127a042ee88f903370be88845dc8c9f8578",
      "tree": "b6c2153d94a2dd57b8dfaaa12742c60c4fec0187",
      "parents": [
        "79c56d3f17d3193a0a86eb3c9bfdea90b89ae3f9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Nov 16 10:38:11 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 29 10:33:51 2012 -0800"
      },
      "message": "[wfd] Support a low(er) power state by triggering PAUSE/RESUME.\n\nChange-Id: Ibe42bfa73816bbfeb7e652d435254d0171b89727\nrelated-to-bug: 7638150\n"
    },
    {
      "commit": "79c56d3f17d3193a0a86eb3c9bfdea90b89ae3f9",
      "tree": "f18d83816b3c2cc3ec7d05d44b26e7ffccccd7c2",
      "parents": [
        "0dbe5a9321b24b6883fbb2fe97cd9d525128b0b5",
        "13e8a0e8a14faaf3fe0bcebf4da1f2694d59565d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Nov 28 15:40:54 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 28 15:40:59 2012 -0800"
      },
      "message": "Merge \"Reduce the frequency of IDR frames and add intra-fresh mode support for WiFi display\" into jb-mr1.1-dev"
    },
    {
      "commit": "13e8a0e8a14faaf3fe0bcebf4da1f2694d59565d",
      "tree": "2be664ce0155abfa4edd62ca4ac582c649636a19",
      "parents": [
        "b7c8e91880463ff4981e3e53e98e45d68e2fe374"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 15 18:31:50 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Nov 28 15:03:57 2012 -0800"
      },
      "message": "Reduce the frequency of IDR frames and add intra-fresh mode support for WiFi display\n\nThe time interval between periodic neighboring IDR frames is increased from 1 second to 15 seconds.\n\no related-to-bug: 7524791\n\nChange-Id: Ic32f37448f952f329549eda5e73637ee3b02f046\n"
    },
    {
      "commit": "0dbe5a9321b24b6883fbb2fe97cd9d525128b0b5",
      "tree": "f832d0b48a4541d34f84e550746702e982d07485",
      "parents": [
        "b7c8e91880463ff4981e3e53e98e45d68e2fe374"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 15 14:00:26 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Nov 28 13:21:07 2012 -0800"
      },
      "message": "Added optional intra macroblock refresh support for encoding\n\no related-to-bug: 7524791\n\nChange-Id: I95ac4ee925e2dbeb00b3cfb2e29c611698c5cc9f\n"
    },
    {
      "commit": "b7c8e91880463ff4981e3e53e98e45d68e2fe374",
      "tree": "3de921dd21aa2f4899487d3c56e4bfd28f4c004f",
      "parents": [
        "41829f30e60cdb7ae8eb1f0266834d245164f70e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 27 15:02:53 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 27 15:50:08 2012 -0800"
      },
      "message": "Add support for HLS playlists of type \u0027event\u0027.\n\nrelated-to-bug: 6870049\n\nSquashed commit of the following:\n\ncommit eee2f3ba6bb7335f4e285632726db85645669929\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 15:02:01 2012 -0800\n\n    Make everything a lot less verbose by default.\n\n    Change-Id: I884d7a7901aa1e7d4ff590f065ca57a79d2af8b3\n\ncommit 6bbdb837ed5bd88008e45efb8faf595e4051ba26\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 14:34:46 2012 -0800\n\n    HLS now properly signals media time changes at discontinuities including\n\n    the start of playback (which may not necessarily be at time 0 if the playlist\n    is of type \u0027event\u0027 and hasn\u0027t completed yet).\n\n    Change-Id: I5ab747d024f9b8d0df72a4e06a12ebb29f62802e\n\ncommit 1555589832b1878a144a976a643e1af4d61f877c\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 14:32:28 2012 -0800\n\n    As part of a time discontinuity, clients of IStreamListener can now\n\n    signal the corresponding media time after the discontinuity, i.e. the first PTS\n    timestamp following the discontinuity will be considered equivalent to the\n    specified media time and media buffers timestamped accordingly.\n\n    Change-Id: Id7db7679b7faa6efd6270620ff52e34e884f3e92\n\ncommit 5c24c605c073a11c426d025b1e7478fc1ad8365a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 13:00:56 2012 -0800\n\n    NuPlayer sources now expose flags() and can announce\n\n    that duration may change (increase) dynamically, in which case duration\n    will be polled at 1 second intervals and communicated to the upper layers.\n\n    Change-Id: I45102909b7a19eed0dda576747e3814d742a0eea\n\ncommit ecb71de8e281e61971a2cd73e7161a97540bc357\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 12:57:47 2012 -0800\n\n    Stop caching duration in MediaPlayer, duration could increase dynamically.\n\n    Change-Id: I7bb2f16c0abe49debdf45c776d2266aa069d7791\n\ncommit 544aec5823e6d7a3e97e15b6b23546616bcd343e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 27 08:46:28 2012 -0800\n\n    An attempt to add support for \"event\" style HLS playlists.\n\n    Change-Id: I3dfb2e801ecaff8f5d8bdb3a4fca1b18aeeb2c60\n\nChange-Id: I48cf7f65a654d33f2f49ded74f8be22aed9e3b98\n"
    },
    {
      "commit": "f0937247b6d92b7d9457c64e36fe4c10927685ac",
      "tree": "04d4878500cb2487fc10bc7b81bd8d581dfd8d5f",
      "parents": [
        "0224bf170a3904576bba81593eaab113c5d3a4e7",
        "4471e47ece77be5b4159cc9cbbcef4d43900d36f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 14 11:45:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 14 11:45:52 2012 -0800"
      },
      "message": "Merge \"Properly signal an error if codec configuration goes wrong.\" into jb-mr1.1-dev"
    },
    {
      "commit": "4471e47ece77be5b4159cc9cbbcef4d43900d36f",
      "tree": "66c57d19a0acf3ec490a924077e9200cbfbdac29",
      "parents": [
        "78b012f5bc05706d1ce412811ccfaa9385dae0ab"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 14 09:06:33 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Nov 14 09:06:33 2012 -0800"
      },
      "message": "Properly signal an error if codec configuration goes wrong.\n\npreviously any error signaled by setupXXX inside ACodec::configureCodec\nwould be overwritten with the result of setMinBufferSize at the end\nof the function.\n\nChange-Id: Id4beb571ca52ea4646239d0af006e09ce1130268\nrelated-to-bug: 7542181\n"
    },
    {
      "commit": "0224bf170a3904576bba81593eaab113c5d3a4e7",
      "tree": "36db389aee1c43d3225d07ef4bdbcfdb8e560022",
      "parents": [
        "78b012f5bc05706d1ce412811ccfaa9385dae0ab"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Nov 12 13:08:44 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Nov 13 13:21:36 2012 -0800"
      },
      "message": "Various improvements of wifi display code\n\n- manually prepend SPS/PPS if encoder doesn\u0027t support it\n- latency improvements\n- support for \"our\" method of optional RTP retransmission\n- improvements to the wfd commandline tool for testing\n- make it easier to turn on/off suspension of the video pipeline on idle\n- fixes an issue where an error during encryption would cause a SEGV\n- add HDCP descriptor if necessary\n\nSquashed commit of the following:\n\ncommit 1115be0ebb3b885b4f1b7dba56761ca013d0ec4a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Fri Nov 9 11:32:23 2012 -0800\n\n    Better shutdown of wfd -l sessions.\n\n    Change-Id: Id898a14ae21efd3b065b00a729830063d39195a7\n\ncommit 0e7d106dfe4eb6e2640b0b66c65deaba265f7ff0\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 8 16:38:55 2012 -0800\n\n    No more sending delay, create rtp packets upfront.\n\n    Change-Id: I809a225f664fdb485c7d9a49a27886601a6a26b2\n\ncommit d399e8571b77353d59afb57508dfd2a82c1ef93a\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 8 14:19:43 2012 -0800\n\n    Restore AudioSource buffer size, factor out TimeSeries, make\n\n    suspending video optional.\n\n    Change-Id: Ifdfe4d447b901e714abf52856b4641d1d55a5d41\n\ncommit f8b649f0b8f917d59f4b8a2e8e6d7db61a684a78\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 8 09:34:06 2012 -0800\n\n    Pull 480 frames at a time from AudioSource/AudioRecord\n\n    Change-Id: I1e215abd329faec3da026631122c0f4c800c0ac4\n\ncommit 1bc13452eb35eebbba00f5da93fa86535be5db59\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Thu Nov 8 08:50:30 2012 -0800\n\n    fixed bitrate traffic simulation\n\n    Change-Id: Ic5efb7cbb0b5d3b4917bc77b8ba73d447249e695\n\ncommit 016cdff18e74bdc631a5679e97192645ed095aa2\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 7 14:00:03 2012 -0800\n\n    resurrected \"our\" style of retransmission.\n\n    Change-Id: I34d757aba67428437cb39b8293a9651750ad20d9\n\ncommit 384cf1a3c8fb4ec410bdf8fa5722c298e6028f3e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 6 09:38:55 2012 -0800\n\n    Changes to make wfd work on manta.\n\n    Change-Id: I7a4e00cf16581fe2146edd1b359af195774090e4\n\ncommit 9628f24b22b35f28630d99dda3614babf51bc07e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Wed Nov 7 09:15:44 2012 -0800\n\n    Patch up rtp timestamps to more accurately measure network jitter.\n\n    Change-Id: I9502a4615575f97f98a215a13131a89a6ae93c6d\n\ncommit 7c891a1a24f08bbd50f55be13f7d05f43e807eb8\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Nov 6 09:37:24 2012 -0800\n\n    Additions to the \"wfd\" tool to create a local wfd source.\n\n    Change-Id: I99558653a70fdc703f9d13990b3ce1c4d3ae227a\n\nChange-Id: Ia94c63fc390f597014531073485f0cfc53b3418a\n"
    },
    {
      "commit": "1c6833afd6cfdbc6c696ed0719ceedc37ec0b534",
      "tree": "48362f445e0d1ad7c0e2fa3b7c3d1cdeb2fcfee7",
      "parents": [
        "96076964863ee6887f0bed9d0f11f424b48ab9b9"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 17 12:16:50 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Nov 06 09:28:55 2012 -0800"
      },
      "message": "Ignore SIGPIPE during write() to broken pipe\n\nThis happens occasionally when taking a bugreport.\n\nBug: 6447319\nChange-Id: Ia6531a4a3658461f8fd3f7106e7996da7cc5933a\n"
    },
    {
      "commit": "96076964863ee6887f0bed9d0f11f424b48ab9b9",
      "tree": "ff74d91d61bbcb4ddf8af89ea9f49f72e6d00da6",
      "parents": [
        "90a92053219ae50ddf4bb54e3d54db2d309e2b8d"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 15:48:44 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Nov 01 15:48:44 2012 -0700"
      },
      "message": "Make video encoders\u0027 bitrate mode (constant, variable, ...) configurable\n\nthrough the desired output format. Configure the video encoder to use\nconstant bitrate mode for WFD.\n\nChange-Id: Id7bd619598153c13448a9c5acd69d80f8a01f333\nrelated-to-bug: 7459597\n"
    },
    {
      "commit": "90a92053219ae50ddf4bb54e3d54db2d309e2b8d",
      "tree": "1d624b3c800a6cd2e755c379058bb43949f91ab0",
      "parents": [
        "2295ce2c6fcf07ffaa134440691a8cea5fe35b43"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 30 15:53:03 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 31 09:21:24 2012 -0700"
      },
      "message": "Various tweaks to wfd\n\nrelated-to-bug: 7426218\n\nSquashed commit of the following:\n\ncommit 1553f1a1c66af998674168f7f7a3be23fcb0c794\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:51:27 2012 -0700\n\n    Add LPCM, AVC and AVC HRD descriptors as necessary.\n\n    Change-Id: Ibc836fced0fe37e8a25574c2295e886765b9ea6f\n\ncommit 4e74db61d2d31ebe239acbdec8f110f88016a4ea\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:50:52 2012 -0700\n\n    added copyright headers to Sender.{cpp,h}\n\n    Change-Id: If615ccb8767e32bd83ed1f0f669acc39a72489f6\n\ncommit 7144bf8ae68c5cdb8faa6e219547aabbd750f04e\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 15:50:25 2012 -0700\n\n    Reenable suspension of the RepeaterSource\n\n    Change-Id: I765338fcde89c65e4b69be45a5949eba6bcdcf6f\n\ncommit 812164bcfa0699821d7d8eefcc0dff96b2e2cd08\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 14:03:50 2012 -0700\n\n    Add 2 stuffing bytes to the PES headers for audio tracks.\n\n    Change-Id: I8b9c634f6a565ab7fa7ecdb610f7d8557e0b139b\n\ncommit a084a741a63015d47c92d99fcd8b980fe615dc7d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 13:19:38 2012 -0700\n\n    Fix PCM audio packetization in WFD.\n\n    Change-Id: I99a435f9fe6b4397f24d6c22afae5ae2505ffc14\n\ncommit c5cb9369585f701f34bce41534940d5f9b59248f\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 13:19:12 2012 -0700\n\n    Support extraction of PCM audio from transport streams.\n\n    Change-Id: I28a0516756ebcb5587325b6588df013ac871ffb9\n\ncommit b0a0512300ae037d6b39c2d04952d34b5fc12b2d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Oct 30 08:54:13 2012 -0700\n\n    disable suspend of the RepeaterSource\n\n    Change-Id: Ibf42a98185b0567f817ae582a82e6580f95d3d40\n\ncommit 4330e8b7668dc92a6d882b5622c0697cf292d04c\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 29 14:11:25 2012 -0700\n\n    Better handling of datagrams in ANetworkSession\n\n    reduce unnecessary copy overhead.\n\n    Change-Id: I2ed8c767274ba07764f03e8d4913041168e5755f\n\ncommit a44e73c322ba3f2c336f7cc4e1d63d3a74faa75d\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Mon Oct 29 11:14:47 2012 -0700\n\n    Network traffic is now handled on a separate thread.\n\n    Audio and video are queued to ensure proper A/V interleaving.\n    Scheduled packet sends according to capture timestamps to reduce\n    send-jitter.\n\n    Change-Id: Ibd6357c1e663086cf87bec0a98f8e54dfdfaa0e5\n    related-to-bug: 7426218\n\nChange-Id: Ia440129d656c35814abf18df06da50b73d5bb554\n"
    },
    {
      "commit": "2295ce2c6fcf07ffaa134440691a8cea5fe35b43",
      "tree": "d301b2e845b570eea103e7224d766e8707cd8e7d",
      "parents": [
        "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 23:49:43 2012 -0700"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 23:49:43 2012 -0700"
      },
      "message": "Increase bitrate now that other issues have been resolved.\n\nBug: 7426218\nChange-Id: I67dfa1e4b85f326f355ad0ec5b6c699e87b45564\n"
    },
    {
      "commit": "e815552c9cb17be79cb3b7eb6fbdfa9ad81c861b",
      "tree": "138972cf3a84fa3e8043fdcc5a0223394bf17480",
      "parents": [
        "b8d6efba8b87e6eeb049651cb67f9827198e658e"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 16:24:43 2012 -0700"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Oct 26 16:24:43 2012 -0700"
      },
      "message": "Disable silence suppression (causes issues with dongles).\n\nBug: 7426218\nChange-Id: Ie1517a8017bae1f9a9b6c224cd3170dfcc5fb941\n"
    },
    {
      "commit": "14744c076e2e361f049e8c3c43cef502ba3fcbd5",
      "tree": "646a69117a34e964318ee365651e6806269d6e5f",
      "parents": [
        "5f6f5b7d6be5d7882102bf0fc3c691ef8fbe03a1"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 23 13:25:05 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 23 13:25:05 2012 -0700"
      },
      "message": "Don\u0027t attempt to seek audio and video separately.\n\nThe widevine extractor doesn\u0027t deal too well with that...\n\nChange-Id: Iadfeede4fe0c086af788c5639782854e4fbb98ff\nrelated-to-bug: 7262386\n"
    },
    {
      "commit": "b1eb1a0dd38a36dd0c0626d3d57043dbd0042a92",
      "tree": "dd1bdc77dd66e946b9ef20f56dda332e8b6de8b4",
      "parents": [
        "e384d75b95b9db30d64a18ada93e070cf07de306"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 22 17:44:24 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 22 18:26:50 2012 -0700"
      },
      "message": "stagefright: discard audio at start of capture\n\nThe new camcorder start sound is longer than previous one and we\nmust discard more audio when capture starts.\n\nIdeally, camcorder should use synchronous record start.\n\nBug 7394330.\n\nChange-Id: I219b4e231aba706776dc7ccc4f1c996eaf22f61a\n"
    },
    {
      "commit": "0328ec08dc1e90caa2a9e0c4e107d8ddaa74af20",
      "tree": "06944da35f3852cc0559874be6fcf95b97e49c8c",
      "parents": [
        "c3ed4a1c3ea71681c71de48c206a899e702864bd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 22 10:45:08 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 22 10:45:08 2012 -0700"
      },
      "message": "WFD use of HDCP is now optional.\n\nif the sink supports it we\u0027ll use HDCP (and fail if necessary), if it doesn\u0027t\nwe won\u0027t. If an HDCP session is established we\u0027ll tell our observer that\nthe connection is secure, otherwise we don\u0027t.\n\nChange-Id: I7cbef384f2cf0a6ac65801c581eea227b9ef4c46\nrelated-to-bug: 7368436\n"
    },
    {
      "commit": "c3ed4a1c3ea71681c71de48c206a899e702864bd",
      "tree": "89c966f16a572049c2d60dce03d405d272aa725d",
      "parents": [
        "9e760d66c5dfae4d9688e32d7a02fca09569f7ef",
        "347f35436be724a64272c41e6325f03fe6b9d43a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Oct 19 17:21:55 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 19 17:21:55 2012 -0700"
      },
      "message": "Merge \"AAC DRC reference level for mobile is -16dB\" into jb-mr1-dev"
    },
    {
      "commit": "347f35436be724a64272c41e6325f03fe6b9d43a",
      "tree": "f0060bd6e9d379d4a79b5fc22f775c95225fb018",
      "parents": [
        "ccd08439c7914d86264c7ad81bfd03cf39aaa9f7"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Oct 19 14:52:16 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Oct 19 14:52:16 2012 -0700"
      },
      "message": "AAC DRC reference level for mobile is -16dB\n\nUse -16dB as the default DRC reference level when decoding streams\n with DRC metadata.\n\nBug 7370764\n\nChange-Id: I900cee22f32384a5657fb041b69d42657bcddf09\n"
    },
    {
      "commit": "3c9e53c6ea2b01506addd4fb1164e6a9bbe6e16f",
      "tree": "b0c5737963fc33ae737ba66dbb8754e6ac9fcc58",
      "parents": [
        "291f824e02ff517a34cfe50220b4e2b402ee998d",
        "a4fe9a13c432afc5d1e94a4617b75e8f962540e9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 19 12:36:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 19 12:36:47 2012 -0700"
      },
      "message": "Merge \"Fix valgrind issues\" into jb-mr1-dev"
    },
    {
      "commit": "ccd08439c7914d86264c7ad81bfd03cf39aaa9f7",
      "tree": "2c5c9288239f5d8caa1c6ae7e22a23552a83add6",
      "parents": [
        "ecfbc952d51c71832f739b7483dcc8cb5fe68038"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 17 14:53:16 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 17 16:13:08 2012 -0700"
      },
      "message": "Added some extra failure logging messages\n\no related-to-bug: 7282066\n\nChange-Id: I0896551a45aab61fb571fef19061397ff84321d9\n"
    },
    {
      "commit": "a4fe9a13c432afc5d1e94a4617b75e8f962540e9",
      "tree": "378f10b114a866dbe5feb3eaf7ee35f0a33f3aa2",
      "parents": [
        "bbe11e46faf8f9e3296431993c36d3efc61337b5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 10:57:02 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 17 10:57:02 2012 -0700"
      },
      "message": "Fix valgrind issues\n\nWe were reading some uninitialized memory when creating bass boost and EQ\neffects, and using memcpy() with identical source and destination.\n\nChange-Id: I15ea1b2c52ae05cbf54aef04351e89805e0ebf8e\n"
    },
    {
      "commit": "b4a55269a5b39c73de2cc1d4013d0631ef18c77d",
      "tree": "e83e04aa7c3d53957be6b8c4e3cdf0ed94f6bf1b",
      "parents": [
        "a14be59340219c47639ec77a352d2af362551a6f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 11 20:28:50 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 11 20:28:50 2012 -0700"
      },
      "message": "Fix some missing checks against missing codecs\n\no related-to-bug: 6971073\n\nChange-Id: Ia6d926663231f9a9ef31c82c85c70595c4a30ebe\n"
    },
    {
      "commit": "7e2c0a15bb8086460070811a152029726479a297",
      "tree": "9ca9478a5391a897d5283f85f0873f35abc284da",
      "parents": [
        "907e5651c18d0e25073743a49a685fe1a385939a",
        "d7086030fcf731e4bcef6c033cc6418cd04e6b91"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Oct 10 16:30:19 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 10 16:30:20 2012 -0700"
      },
      "message": "Merge \"Support querying active record sources\" into jb-mr1-dev"
    },
    {
      "commit": "d7086030fcf731e4bcef6c033cc6418cd04e6b91",
      "tree": "51f233eeff7c3e17e980d1fb0f41a2ba3f030b16",
      "parents": [
        "dca0ac2193e87c57d871dd208073107408c13c0a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Oct 10 12:11:16 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Oct 10 12:11:16 2012 -0700"
      },
      "message": "Support querying active record sources\n\nAdd support for querying whether there is currently a recording\n underway from the specified audio source.\n\nBug 7314859\n\nChange-Id: I986b231a10ffd368b08ec2f9c7f348d28eaeb892\n"
    },
    {
      "commit": "d243c04534d1b74bd66625c5c96a9b918d8838bf",
      "tree": "04bbffe2ae0e6fdaaac8d89cb535476952403cf9",
      "parents": [
        "2458d482c4822c6f9e6274f5bd12b6aea095a9cd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 09 15:53:34 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 09 15:53:34 2012 -0700"
      },
      "message": "Switch audio mode based on dongle\u0027s capabilities\n\nproperly parse rtp port and use it to setup session.\n\nChange-Id: Ic7521cb867143278196c3ce4b19a74ecc2703d8e\nrelated-to-bug: 7318719\n"
    },
    {
      "commit": "e7bd24af08ef0722fb124a550662bcec48c56f86",
      "tree": "a64d2bf14eab3008fb53f63ea8c01ba7c600c8e1",
      "parents": [
        "d69fd4d2567f9fce02252ce10d7ae3a28fc79e04"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 04 11:46:29 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 04 13:31:04 2012 -0700"
      },
      "message": "Optionally emit LPCM audio instead of using AAC in wifi display code\n\nrelated-to-bug: 7248248\n\nMay decrease power usage at the cost of significantly increasing audio bitrate.\n\nUse \"adb shell setprop media.wfd.use-pcm-audio true\"\n\nto turn it on (must be done before connecting).\n\nChange-Id: I7ebeadf3209e01522a2644948287b23d7c383c7e\n"
    },
    {
      "commit": "d69fd4d2567f9fce02252ce10d7ae3a28fc79e04",
      "tree": "ee75d4b1dca1b99ae02467243d6c5f61358c949b",
      "parents": [
        "ce953ce4d698155c50356df093712df1dea76051",
        "16c090555adf9f37bad0f061fd2651b91a34ae41"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 03 16:57:35 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 16:57:35 2012 -0700"
      },
      "message": "Merge \"Enable hdcp for WiFi display\" into jb-mr1-dev"
    },
    {
      "commit": "16c090555adf9f37bad0f061fd2651b91a34ae41",
      "tree": "6c2517416c49cb6b976864664d4a88705b02a3ee",
      "parents": [
        "ee40d832e55847182412b0f56da652af054d7c06"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 03 12:08:40 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 03 12:13:41 2012 -0700"
      },
      "message": "Enable hdcp for WiFi display\n\no related-to-bug: 7055369\n\nChange-Id: Ie1ddd1e961f9ff60fe32b57cf7f8de4f4ecf5aa0\n"
    },
    {
      "commit": "9f71aed36f7bb58fd8b077a5c6e414fc4af1805c",
      "tree": "9b4cf718721022384a4bcd70802d590faa022923",
      "parents": [
        "4401091bc89fc69b7fc7df58cf6b403776f2698a"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Oct 02 18:39:39 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 10:44:05 2012 -0700"
      },
      "message": "Drop video bitrate to 2.5mbps.\n\nWe have too much corruption/loss at higher bitrates. Reviewed quality\ntrade-off with jdong@. We can increase in the future if we have a\nbetter packet loss concealment solution.\n\nBug: 7241844\nChange-Id: I3b500a9c3a4429e834fb4c5ca04164d4e106fa9e\n"
    },
    {
      "commit": "4401091bc89fc69b7fc7df58cf6b403776f2698a",
      "tree": "f847e38643f40afc1a476dc992ef1ef782b70fcf",
      "parents": [
        "3a555c19dbd6ae7bf0d63cb9879befb22773770d",
        "575a5361fc970476cd7979638ee3ac00cc6e5024"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 10:43:33 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 10:43:34 2012 -0700"
      },
      "message": "Merge \"Better power savings with wifi display code.\" into jb-mr1-dev"
    },
    {
      "commit": "575a5361fc970476cd7979638ee3ac00cc6e5024",
      "tree": "4dfdda910405a6d40d50c52119c86d0853fd3587",
      "parents": [
        "8d16bbc5a354d302abfd912b8d88d9c7feb3948f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 10:16:58 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 10:16:58 2012 -0700"
      },
      "message": "Better power savings with wifi display code.\n\nNo more polling the encoder for work to do, the encoder instead notifies\nif there\u0027s activity.\n\nChange-Id: Ia707211b4f5c5a6e6b70d750233d204a2d6bb778\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "3a555c19dbd6ae7bf0d63cb9879befb22773770d",
      "tree": "01533bec5a7a927c37a17a7d738539884661d17f",
      "parents": [
        "ee40d832e55847182412b0f56da652af054d7c06",
        "8d16bbc5a354d302abfd912b8d88d9c7feb3948f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 09:50:51 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 09:50:51 2012 -0700"
      },
      "message": "Merge \"Increase polling frequency again temporarily to fix A/V issues\" into jb-mr1-dev"
    },
    {
      "commit": "8d16bbc5a354d302abfd912b8d88d9c7feb3948f",
      "tree": "8280fbf907ec72b8345aebe44b2d9b0d1b0105a7",
      "parents": [
        "47aa9c47a0796bb695d09aa307b2d1c2c913f0eb"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 09:01:11 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 03 09:01:11 2012 -0700"
      },
      "message": "Increase polling frequency again temporarily to fix A/V issues\n\nFixes a bug in the silence detection and increases the timeout after which\nwe enter \"silent mode\" to 10 secs.\n\nChange-Id: I802b058f054becd5c377186664437f7b3970193f\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "2808b5902a4dd70be231fcb2e3131eb1944807da",
      "tree": "f5eb9448e34438a300e94fbe97c497cc42c672a7",
      "parents": [
        "47aa9c47a0796bb695d09aa307b2d1c2c913f0eb",
        "4213e9db1cc57ab593bb63432b4e0cf477c3f835"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 02 17:21:09 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 17:21:09 2012 -0700"
      },
      "message": "Merge \"Bug 7170947 Configure AAC decoder for mobile DRC settings\" into jb-mr1-dev"
    },
    {
      "commit": "4213e9db1cc57ab593bb63432b4e0cf477c3f835",
      "tree": "2dba987d6ad39a5a59f017e9384d0d699d6c6d94",
      "parents": [
        "0389cc09f7b90f155a8942a0d2e1925cad1dbe2d"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 02 11:18:16 2012 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 02 15:41:26 2012 -0700"
      },
      "message": "Bug 7170947 Configure AAC decoder for mobile DRC settings\n\nConfigure the AAC decoder to use the modile DRC settings when\n decoding streams with DRC metadata.\n Settings are:\n - target reference level of -12dB\n - DRC compression factor (attenuation) at max\nThese settings can be overridden by platform properties if the\n default values are to be modified.\n\nChange-Id: If329fe566497685b735abe4e4b9a5e01697c063b\n"
    },
    {
      "commit": "47aa9c47a0796bb695d09aa307b2d1c2c913f0eb",
      "tree": "d7159d08451106a6d100939d46e0b8c535f13523",
      "parents": [
        "805b3ae300ea414ce5973e60a9b544169da0ac44",
        "cf2604f8940093e249ed7e5382c12ba544a48545"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:40:52 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 14:40:52 2012 -0700"
      },
      "message": "Merge \"Enable silence detection and don\u0027t driver the audio encoder\" into jb-mr1-dev"
    },
    {
      "commit": "805b3ae300ea414ce5973e60a9b544169da0ac44",
      "tree": "c9fb99ec606675f595b9b542e393ab9e349aa832",
      "parents": [
        "f5aa7aa94465e774ccdb07039690a5f42de1518a",
        "4a8b9a2363b7b7b4f98022e6d9aae8b8aa8e35e5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:39:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 14:39:21 2012 -0700"
      },
      "message": "Merge \"Now back to 30fps, suspend updates if surface flinger didn\u0027t send us\" into jb-mr1-dev"
    },
    {
      "commit": "f5aa7aa94465e774ccdb07039690a5f42de1518a",
      "tree": "e3d7cf1697acfa6f897cb45e202f1dfdd9215691",
      "parents": [
        "16461dca0ba8ac1850463db6245d20dc1699279d",
        "887070dbe6b6258ba04f988fd90c3ac856d2e5bf"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:39:07 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 14:39:07 2012 -0700"
      },
      "message": "Merge \"More power savings: No need to keep a history of outgoing packets\" into jb-mr1-dev"
    },
    {
      "commit": "16461dca0ba8ac1850463db6245d20dc1699279d",
      "tree": "8e87b7e7e5644dbddd8430e0ba9419d5c9c7aa05",
      "parents": [
        "f1b9504587b04d8a7067aca90b1f0575ccf74bb9",
        "21daec5798f7e13c5ab6b513d27b3f79d4779bca"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:38:55 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 14:38:55 2012 -0700"
      },
      "message": "Merge \"Increase converter polling interval.\" into jb-mr1-dev"
    },
    {
      "commit": "f1b9504587b04d8a7067aca90b1f0575ccf74bb9",
      "tree": "fc5db6e071cda9f9fa3660361241c2a9ec0b0f45",
      "parents": [
        "0389cc09f7b90f155a8942a0d2e1925cad1dbe2d",
        "c6920dfdca378a168a2168f4a64d21af4d37d539"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:38:42 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 14:38:42 2012 -0700"
      },
      "message": "Merge \"Take advantage of the hardware encoder\u0027s ability to prepend SPS/PPS\" into jb-mr1-dev"
    },
    {
      "commit": "cf2604f8940093e249ed7e5382c12ba544a48545",
      "tree": "bdf2ebf30531052eb13bf10c0aeadb679858b328",
      "parents": [
        "4a8b9a2363b7b7b4f98022e6d9aae8b8aa8e35e5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:17:38 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 14:17:38 2012 -0700"
      },
      "message": "Enable silence detection and don\u0027t driver the audio encoder\n\nor send any audio out over the network if we\u0027ve seen at least one second\nof silence.\n\nChange-Id: Ic2bca4ce7d55bd246283dc669f5f5cb6106d88ea\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "4a8b9a2363b7b7b4f98022e6d9aae8b8aa8e35e5",
      "tree": "30d13eb0bf3a8d013e5c867d2c1c70b9736c4194",
      "parents": [
        "887070dbe6b6258ba04f988fd90c3ac856d2e5bf"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 12:49:33 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 12:51:30 2012 -0700"
      },
      "message": "Now back to 30fps, suspend updates if surface flinger didn\u0027t send us\n\nany new frames for one second or longer.\n\nChange-Id: I1c2ec349b0a4b7c4eb9dcdde483362ec87dd69fa\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "887070dbe6b6258ba04f988fd90c3ac856d2e5bf",
      "tree": "bb47184a6db32ebf2f5fda22242067215c1a1f65",
      "parents": [
        "21daec5798f7e13c5ab6b513d27b3f79d4779bca"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:47:48 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:47:48 2012 -0700"
      },
      "message": "More power savings: No need to keep a history of outgoing packets\n\nif we\u0027re not enabling retransmission anyway.\n\nChange-Id: I361120607974a2fab758c28b5033716213aef88e\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "0389cc09f7b90f155a8942a0d2e1925cad1dbe2d",
      "tree": "465b31e0bb99f201d5533a05afb64ad0e2a8d47c",
      "parents": [
        "bd710197a47e3772763c48bfb5d6be21df173a7f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 02 10:47:39 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 02 10:47:39 2012 -0700"
      },
      "message": "Fix video continuity\n\nFixes \"pixelation\" seen after seeking in Netflix.\nb/7211673\n\nChange-Id: Id675acaef1e5fd7151fdfa7bd79e2f25990e1ecd\n"
    },
    {
      "commit": "21daec5798f7e13c5ab6b513d27b3f79d4779bca",
      "tree": "4ca72fecb172cb5905cf2a3ad45f4f415528af36",
      "parents": [
        "c6920dfdca378a168a2168f4a64d21af4d37d539"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:31:46 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:31:46 2012 -0700"
      },
      "message": "Increase converter polling interval.\n\nChange-Id: I455005086a63c70883a71e189753a117b195f22f\nrelated-to-bug: 7248248\n"
    },
    {
      "commit": "c6920dfdca378a168a2168f4a64d21af4d37d539",
      "tree": "e446b52f041efc7e5317de4761856bf994526c12",
      "parents": [
        "bd710197a47e3772763c48bfb5d6be21df173a7f"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:16:47 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 02 10:16:47 2012 -0700"
      },
      "message": "Take advantage of the hardware encoder\u0027s ability to prepend SPS/PPS\n\nto IDR frames instead of doing it manually.\n\nChange-Id: I994cfbd6539013406dd610393ba1f0b9a0dbf4d5\nrelated-to-bug: 7245308\n"
    },
    {
      "commit": "bd710197a47e3772763c48bfb5d6be21df173a7f",
      "tree": "8f692b43ee85e2621ab980c7b563cd25e1af0f1c",
      "parents": [
        "ee178668818eb4f43ff40735405f8fc42372620f",
        "a3fafcb4ee6d6344f2b5b602d095a4ffebc8dbb7"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Oct 02 01:25:40 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 01:25:41 2012 -0700"
      },
      "message": "Merge \"[WVDRM] Fix for stuttering on low bandwidth\" into jb-mr1-dev"
    },
    {
      "commit": "ee178668818eb4f43ff40735405f8fc42372620f",
      "tree": "44a2a7470c37b2abd8ed5ffa67d56a53397b0151",
      "parents": [
        "1c730d33da2fa861000b3990b5e6c9ff69291387"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 16:38:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 16:41:01 2012 -0700"
      },
      "message": "Use incremental updates sent by surface flinger\n\ninstead of running at a fixed framerate.\n\nChange-Id: Ia3f36aa449e2e952bf3263ffbb709a9b79b09c26\nrelated-to-bug: 7266398\n"
    },
    {
      "commit": "1c730d33da2fa861000b3990b5e6c9ff69291387",
      "tree": "cc1d9f881cdd21344de7ae6e386d6e6f169c0706",
      "parents": [
        "1a0d1670b4304f294530f4ca9ce68defad6445dc",
        "af5dd7753e62353411cf0daf3b513c38818e9662"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 16:40:03 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 16:40:04 2012 -0700"
      },
      "message": "Merge \"ALooper::GetNowUs() now relies on systemTime instead of gettimeofday.\" into jb-mr1-dev"
    },
    {
      "commit": "1a0d1670b4304f294530f4ca9ce68defad6445dc",
      "tree": "91c4dc0e0b1898117ef83793e3095b072e66748e",
      "parents": [
        "0cb47712a4fc0e01ad8680ee6ac3a5d72eafe0ba",
        "0868deae404604b577892413c128d55a2bafc56e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 16:39:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 16:39:51 2012 -0700"
      },
      "message": "Merge \"Optionally have SurfaceMediaSource return absolute timestamps\" into jb-mr1-dev"
    },
    {
      "commit": "af5dd7753e62353411cf0daf3b513c38818e9662",
      "tree": "e935f45f925c4ce6d35d16764e2d40db69cc954a",
      "parents": [
        "0868deae404604b577892413c128d55a2bafc56e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 16:03:44 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 16:03:44 2012 -0700"
      },
      "message": "ALooper::GetNowUs() now relies on systemTime instead of gettimeofday.\n\nChange-Id: Ia31eb0940b02581327a8bf51af6df135f9ab6de3\nrelated-to-bug: 7266324\n"
    },
    {
      "commit": "0868deae404604b577892413c128d55a2bafc56e",
      "tree": "422a9db60612b598d2de89a854f26e3acf4f8b31",
      "parents": [
        "ad0d97c7cf620e96a0b088dd9461645a3f8900b7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 15:59:54 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 15:59:54 2012 -0700"
      },
      "message": "Optionally have SurfaceMediaSource return absolute timestamps\n\nbased on systemTime().\n\nChange-Id: I2eff15dd149a4b737d6e7473d1907cf0c80b6b38\nrelated-to-bug: 7266706\n"
    },
    {
      "commit": "0cb47712a4fc0e01ad8680ee6ac3a5d72eafe0ba",
      "tree": "842c539a06fb30d1f413ee709880f1d7696f0c39",
      "parents": [
        "ad0d97c7cf620e96a0b088dd9461645a3f8900b7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 14:26:42 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 14:26:42 2012 -0700"
      },
      "message": "Inform DisplayManager that we\u0027re running over a secure channel (HDCP)\n\nif that\u0027s the case.\n\nChange-Id: I5f16cad04a6937a3fb65600a971866a77e0ae9fc\nrelated-to-bug: 7265406\n"
    },
    {
      "commit": "a3fafcb4ee6d6344f2b5b602d095a4ffebc8dbb7",
      "tree": "db3023f0669d7fa7a0f198931188da91c3cc23a1",
      "parents": [
        "23f74017a2c457a25382677b6e696c4cfa06cef5"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Oct 01 12:57:48 2012 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Oct 01 13:10:54 2012 -0700"
      },
      "message": "[WVDRM] Fix for stuttering on low bandwidth\n\nReintroduces the play/pause rebuffering logic we eliminated\nin JB zero day to fix double spins and slow startup - but\nactivates that logic only based on a comparison of the\ncurrent bandwidth measurement and the lowest bitrate track\nin the movie.\n\nNeeds to be submitted with related changes in /vendor/widevine\n\nbug: 7230071\nChange-Id: If4f5ecda36c4858ce8bf5c4abb722f90a329ecdb\n"
    },
    {
      "commit": "ad0d97c7cf620e96a0b088dd9461645a3f8900b7",
      "tree": "83c354a2a43102ce1e58a191c1abc41b19b4dd69",
      "parents": [
        "0e1d71641624c641a0a1abe4098943f5a42c6f94"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 11:26:30 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 11:26:30 2012 -0700"
      },
      "message": "Perform an orderly shutdown if possible, force disconnect if necessary\n\nwait for up to 2 secs for the dongle to send us a \"TEARDOWN\", after that\nforcibly shutdown the connection.\n\nChange-Id: Ie049857cd468b7af6986d6305f725c54571b2276\nrelated-to-bug: 7258622\n"
    },
    {
      "commit": "0e1d71641624c641a0a1abe4098943f5a42c6f94",
      "tree": "676b461c207b032cb45f6e35cd4a4dc225c4fe7c",
      "parents": [
        "6360758ce2d171169d2a21e30266547ee4ac0fec"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 11:22:05 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 11:24:04 2012 -0700"
      },
      "message": "Remove double negatives from SurfaceMediaSource\n\nensure mStarted actually reflects the state of SurfaceMediaSource\n\nChange-Id: I92557896993ad8da23fe6940e997402ad63b8cbc\nrelated-to-bug: 7258622\n"
    },
    {
      "commit": "6360758ce2d171169d2a21e30266547ee4ac0fec",
      "tree": "8c04e3dbb48855a7fd18a0ae0d5249be6c7055af",
      "parents": [
        "087dd8e7232e4c009e9121ab7e8c37985522c9ad"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 10:43:55 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 01 10:43:55 2012 -0700"
      },
      "message": "Make sure we still handle shutdown-related message even if we\u0027re\n\nin error-state.\n\nChange-Id: Ie12dd1a63306b4020b9de9eae007f6d768f02df6\nrelated-to-bug: 7262673\n"
    },
    {
      "commit": "4769f0b873030bbaa6977fe18696961d1d1b26ba",
      "tree": "5ab70bac504a57c711ecacc1235f0d5029d5ec65",
      "parents": [
        "7165491b8fe140609ab987b510ad1a55715856e9",
        "77245813007cf903b4b73f5d0cd20313fbf0e510"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Sun Sep 30 12:14:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 12:14:21 2012 -0700"
      },
      "message": "Merge \"Even cleaner shutdown.\" into jb-mr1-dev"
    },
    {
      "commit": "d13df2463bd09d8c1fc5b20050d3262a4e89512d",
      "tree": "a684796ab498c092f7d98de69d105a2cfe3bf6e1",
      "parents": [
        "73bbd1f1c493835f191ea2b0b72439292496b40a",
        "003d9f71937070791418bf7efc1f7fe1e4c6b821"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 30 11:48:10 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 11:48:11 2012 -0700"
      },
      "message": "Merge \"Enable write side of MonoPipe to be shutdown\" into jb-mr1-dev"
    },
    {
      "commit": "77245813007cf903b4b73f5d0cd20313fbf0e510",
      "tree": "6f5a35a89933a2578a7f1ff6ec1cd4b9a5240a30",
      "parents": [
        "23f74017a2c457a25382677b6e696c4cfa06cef5"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 28 16:34:38 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 28 16:36:04 2012 -0700"
      },
      "message": "Even cleaner shutdown.\n\nChange-Id: I5a76f83db3a5e43f55eb4e04269d890c2015bae7\nrelated-to-bug: 7247918\n"
    }
  ],
  "next": "003d9f71937070791418bf7efc1f7fe1e4c6b821"
}
