stagefright: Don't enforce 16kHz rate for AMR-WB

This breaks android.media.cts.MediaRecorderTest#testRecordingAudioInRawFormats,
which tests specifically with 8kHz.

Change-Id: Ibfa54db4b2a82e502268be18f4ea405a41a88bfd
Merge remote-tracking branch 'github/cm-11.0' into HEAD
Revert "stagefright: Cleanup ifdefs in pause code"

Breaks audio pause-resume on non-QCOM device. The code here goes
with QCOM-specific mPaused code in OMXCodec.cpp.

Also added one more ifdef to fix compile error.

This reverts commit f771dc65603c8d06865f08a1b88be60cb53e19dd.

Change-Id: I1ebf3d15cfb7bf5c92745e0ab88cffd7adf192a0
FLAC coded file does not play (single metadata block files)

FLAC files which has the last metadata block flag set in
STREAMINFO were not playing. Sniff of FLAC is modified to
accomodate this set flag.

Change-Id: I76f216cc2cde6e10958324afbc704fc3e5a0e2bf
Author: Gurudatta Bhakte <gurudattax.bhakte@intel.com>
Signed-off-by: Gurudatta Bhakte <gurudattax.bhakte@intel.com>
Signed-off-by: Shuo Gao <shuo.gao@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 32421
(cherry picked from commit 95f676260cb035b2f2bd2d75e0ddd3ed9658692f)
camera: Allow any target to use message management

 * Previously this was set for QCOM only, but it has
   value for other cameras who have janky drivers.

Change-Id: I233bbd544388a7f019db48034c21d4406f9e33b4
Revert "Camera: Rotate display if app doesn't use setDisplayOrientation."

This reverts commit 4b52ba4cec578962ec2695b7d10abdd32f088065.
Merge remote-tracking branch 'github/cm-11.0' into HEAD
libstagefright: fix AV sync late margin on non-QCOM_HARDWARE

Change I65cd3dce9b31b87f1488c37af9618669b29c362c changed the
late margin to a property defaulting to the same 40ms as the
original code, but uses QCOM_HARDWARE dependencies to read
the value (otherwise it's left unset).

Hardwire it back as the default 40ms

Change-Id: If63e171ea4e9693aa90dd7fabd8997f361a3959c
audio: Add support for tunnel mode recording and compress voip

- Use modulo operator for common block buffer handling. Common block
  size is rounded to power of two. This limitation is avoided with
  modulo operator.
- Add support for tunnel mode recording
- Add support for compress voip

Change-Id: I95cdfff729affd784141487521c9f2f714221d11

audio: check audio mode to enable voice path for VoIP apps

- Add check for MODE_IN_COMMUNICATION to enable voice path
for VoIP applications

Change-Id: Ib603c6321c935d3b1313c2841b09eea932aa13f3

audio: Restrict opening of voip direct output to one instance

Avoid opening of voip direct output track if it is already in use
by another voip application.

Change-Id: I740bbb9e7153c8871c296f1ec5d8d68997391779

audio: check voip input sample rate to allow voip direct output

It is possible that some voip applications request different sample
rates for input and output streams. Avoid opening of voip direct
output if the voip input is already opened with a different sample
rate.

Change-Id: I5669e2a0880ffed0c10cde21da8994c2b47e1878
CRs-fixed: 601785
Merge remote-tracking branch 'github/cm-11.0' into HEAD
AudioFlinger: Remove unwanted update of track generation

PlaybackThread::threadLoop unncessarily updates the track generation
before waiting for a pending aync write. This is unncessary and
leads to excess calls to the power manager service for updating
uids.

Change-Id: I1284d79da3be6495acb19a97c81b3ab8db6dbb12
(cherry picked from commit f10fdf3ac4aced7d64bd0d1f05cc886271436685)
(cherry picked from commit 48568df4edf4d9b98c4d05bcfae3770c91f3be7f)
AudioTrack: Fix for race condition

This fixes a race condition between releaseBuffer and flush.

An AudioTrack::releaseBuffer() can be delayed (pre-empted) by
AudioTrack::pause/flush() and ServerProxy::obtainBuffer() calls leading
to a situation where an incorrect position is copied to the cblk

<<Change to be tested>>

Change-Id: I70074d4824ba8c7fa86c9f9ef8cc182de9172ab9
(cherry picked from commit ec237ff01ca194bf0e29933f916a30b8f83c8ace)
(cherry picked from commit 6984cd7b9e99ffa48872cf9316c68d5ae51ad3c5)
add Sony camera parameters

Change-Id: I4d8af24db1873776ad8deca75516f6e0840f1a62
libstagefright: Add custom IOCTL for prefetching CMA data for wv playback

trigger allocation of cma pool at start of drm playback

Change-Id: I6c15b31ff3147739f9d837a2a2b6e135cc918e99

libstagefright: Prefetch CMA data for secure playback via MediaCodec

Trigger allocation of cma pool at start of drm playback in mediacodec mode.

Change-Id: I1ce09f3c9013cb815f1ab0e729a099c7aae79ec5
libstagefright : Allow seek in RTSP VOD streaming using Helix Server

- In the current design,when the server sends npt=0- in Play response,
we treat it as live stream, without cross verifying in SDP.
- Helix server specifically sends npt=0- for the Play Response
- This change cross verifies the npt in SDP and if it is a VOD
clip, the duration returned is greater than Zero, and we allow seek.

Change-Id: Ic76510fa4d80ef9051a5d6d923bd5d757c279f19
CRs-Fixed: 498057
libstagefright: Add support for PCM in offload path

- If compress offload fails try to offload PCM
- Set PCM offload format if the audio mime is RAW/PCM

Change-Id: Ibab5cb2d73edd6e2e38cd32c05ef27612cbe1425
libstagefright: Enhance compress offload logging

Add/Enable msg logging
-Statemachine transitions
-Salient funtion calls to Audio HAL
-Salient funtion calls to awesomeplayer
-Events received from HAL
-Miscellaneous other important events.

Change-Id: Ib54954590f913afe473f20ccb56c46fed0aa000f
libstagefright: fix mute issue for h.264 and MPEG4

- use kKeyRawCodecSpecificData to find metaData for both MPEG4 and h.264
- For h.264 encoding, there should be two csd (SPS and PPS), csd-0 and
  csd-1
- For MPEG4 encoding, MetaKey name should be csd-0
CRs-Fixed: 600462

Change-Id: Ifd5a1c578bbbebda498aca502db18e21c3d12fd4
[frameworks/av] : added .mov extension

- while scanning the a/v files in sdcard it takes the container
  format extension and checks for whether it supports or not.
  So added support for mov extension in StagefrightMediaScanner.

CRs-Fixed: 515036

Change-Id: I140a96cd535178b64b5d7c8bafe20eece2243953
libmediaplayerservice: Avoid writing silence for offload tracks

-Audio Sink writes silence to the track if size returned from AudioPlayer
 is zero and when there is no subsequent output.
-Avoid writing silence for offload tracks as decoders do not expected
 any raw data.

CRs-Fixed: 615468
Change-Id: I5044d514126c413f56971e80815f232298f9685c