Increase max screen recording time from 3 minutes to 1 hour

Change-Id: I37c22b08afea32e6b6a88c404ab78250b7a9f377
frameworks_av: Support pre-KitKat audio blobs

Patch Set 2: Combined duplicated method

Change-Id: I6384c13b0944a25cdf0cb90031b2e3698bc3e78d
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
frameworks/av: Update to caf/kk_2.7_rb1.10

audio: Add track to trackToRemove list when it is terminated

- PlaybackThread loop is continuing for direct output even after
  the track is terminated by the client. This is causing 2 direct
  tracks being active when client starts another session
- Fix is add the terminated track to tracksToRemove list so that
  this track is destroyed properly

  CRs-Fixed: 566808

Change-Id: I65f565d9c3a00e071174659ffb92f711dfd8742a

audio: Fixed framecount in AudioRecord

- Incorrect frameCount is passed to AudioRecordClientProxy,
  which is used while user side pointer is incremented
  This is causing distortion in SIP call
- Fix is to use frameCount of the shared block instead of
  frameCount passed by the client
- InputBytes initialization is also done in AudioFlinger

CRs-Fixed: 568988

Change-Id: Iab32234b198ff4d792eea4c4a82097028089013d

audio: update setParameter command time properly

-setParameter is getting delayed regardless of delay is
 present or not. Because setparameter command time is always
 getting updated with wrong values(previous values) with any
 commands.
-Fix is to restrict the updation of command->mTime always.
 Added check to update command->mTime, only when identical
 commands are present.

Change-Id: I10b94b19f64ef4f15495d34f009238a691d1b36c
CRs-Fixed: 568318, 569010

audio: Initialize LPA variables in audioflinger

 - During initialization of audioflinger, a number of
variables related to LPA are not set to default values.
This causes an undesired side effect that the first
effect in the effect chain is considered to be LPA
enabled. Since LPA does not execute effect processing,
switching xLoud on/off does nothing
 - Fixed by initializing member variables in audioflinger.

Change-Id: Ide06fb0e6804558388e6610cc7686f168591e4a5

scale the kMaxCttsOffsetTimeUs for HFR recording

-timestampUs & decodingTimeUs are scaled for HFR recording
-the difference between these is compared against non-scaled
constant(kMaxCttsOffsetTimeUs).
-fix provided to scale this constant(kMaxCttsOffsetTimeUs)
-and compare against the scaled time difference.

Change-Id: I08188423008d8f6a4824f2748d56a1e355d39a89
CRs-Fixed: 566695

AudioFlinger.cpp - audioConfigChanged_l set for srs Tunnel Device Switch

 - During device switch we were only setting the route
   but was not calling audioConfigChanged_l
 - Hence the effects for the new device would apply only
   when there is a config change.
 - Now we call audioConfigChanged_l during device switch
   setPrameter so that the new effects will be apply as
   soon as device is switched.

Change-Id: I641cd8a7d6ffb7423ccfaa45e4c29b1b5352e61e
CRs-Fixed: 548021

Revert "frameworks/av: AAC CSD support for MediaCodec path"

This reverts commit Ic8197138f5107f2a6026c28847e74987d91acc16
Currently AAC CSD is retrieved in MediaCodec using
kKeyAacCodecSpecificData. This support was added as part of
commit Id046b0d4bf96f029c1b6b5d78d753073e38ac841.

Change-Id: I54bc6204c1fe88f4e4545f501e6bd1bb2a8beaf9
CRs-Fixed: 527284
stagefright: Conditionally build legacy audio stuff

 * The LPA and Tunnel mode code is entirely deprecated and breaks things
   for devices which don't use the legacy ALSA audio HAL.
 * Exclude this stuff unless explicitly requested.
 * Also enable rendering statistics for all.

Change-Id: I0aff39439884d27f1a7b30f56b604f6a43f1969a
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
stagefright: Clean up the ifdefs

 * This should get everything in line for now.

Change-Id: I3e8eaddeab34dbacb7138f9106f53ada404f7b4d
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
stagefright: Build fixes

 * Fix build without AV_ENHANCEMENTS on

Change-Id: I4bbf3f0a6f5894ddb33b62d99bced2f6247081db
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
legacy OMX: squashed commit for legacy OMX support

Enable by setting TARGET_QCOM_LEGACY_OMX := true in BoardConfig.mk.

This is a combination of 7 commits.

commit ff5604878d2bf74555adcf938ffbf98d04bea305
Author: Alexey Shavykin <ganster0x29@gmail.com>
Date:   Sun Oct 28 22:46:34 2012 +0200

    Added support legacy Qualcomm OpenMAX IL libs for MSM7x27

    Change-Id: I63e68e63fce955fef52813360032f5e8e90a4b92

commit 27cf702ac81f27cae206ef182420c1cbcdadb709
Author: Ganster41 <ganster0x29@gmail.com>
Date:   Mon Nov 19 15:35:36 2012 +0200

    Correct gralloc usage flags for renderer

commit 3feab8906fcb4464d5f46bc13dcae9da36e41040
Author: Conn O'Griofa <connogriofa@gmail.com>
Date:   Fri Jan 4 00:31:13 2013 -0200

    Fix legacy OMX encoders

    Ensure that a valid frame_rate is passed to the encoder, otherwise
    encoding will fail.

    Change-Id: Iaaa298496755ff405e393120973d1ed782f5d8f4

commit f03627bce1de975ad9b88206874dda851b7d2bf4
Author: Grigori Goronzy <greg@blackbox>
Date:   Sat Jan 19 18:26:25 2013 +0100

    Fix alignment and copy size for legacy QCOM OMX

    Change-Id: I6d13c67601da0f0c35d3dd455401f982406cefe3

commit 3e6134027e9faa6b24b1cb1d205e4de0e76f9ed2
Author: Ganster41 <ganster0x29@gmail.com>
Date:   Sat Jan 5 19:33:44 2013 +0200

    Fixed Gingerbread mmparser using

    Change-Id: Ib931fa6ed4522b5851d42297f929183cf76043fd

commit 25edf9884ebbd3c608edc88d8bd8a7196d58b190
Author: Ganster41 <ganster0x29@gmail.com>
Date:   Mon Jan 7 19:56:32 2013 +0200

    Try use ExtendedExtractor only if no suitable default extractors available f

    Change-Id: I57a9cc39caee7e3fa2b709ab09cca5629bf81f44

commit 9e983100a684493d6c2df7952af4fa04f252c19b
Author: Konsta <konsta09@gmail.com>
Date:   Sun Oct 6 20:30:50 2013 +0300

    legacy OMX: use local flags

    Allows use of legacy mmparser without enabling all QCOM A/V
    enhancements that are not supported with legacy OMX blobs.

    Change-Id: Ieccf29ed8036864634ee167c1e21908377516494

Change-Id: Ieccf29ed8036864634ee167c1e21908377516494

Conflicts:
	media/libstagefright/Android.mk
libstagefright: Enable meta mode for 7x27a video encoder

msm7627a family of chipsets supports only one input frame at
one time. camera expects the input frame to be released before
sending another frame. so send one input buffer and available
output bufefrs to video encoder component. Release the input
buffer to camera (to get another frame) after receiving input
frame done callback from video encoder component.

Change-Id: I8fbc911f046ff7e2a3047dd65d8c09ac2d8608e2

Conflicts:
	media/libmediaplayerservice/Android.mk
stagefright: allow building LPA for legacy audio

Change-Id: Ia4b5bffd3346e585ec5a6bff6659d0257fc5748a