libstagefright: support for disabling buffer metadata

- Metada mode video recording is enabled by default.
- use setprop debug.camcorder.disablemeta 1 to disable metadata mode recording.

Change-Id: I422c49c0ace0c3a3e1f4459c7e4bf29e70af763a
cleanup media variant ifdef

Change-Id: Iedc6cfcaa6706c6614a638cede7fd560d104d8a2
Enable LPA/Tunnel audio for QCOM B-Family

Change-Id: If17b40ade698bbbccd28728bf65d8fdc3758d306
Enable Tunnel Playback for msm8974

Change-Id: I3ca4e06f74a4e994cedaba16df3bd9b20c95bac7
Added ifndef ICS_AUDIO_BLOB around non-existent functions (3/3)

Change-Id: I6e8c153e36e09451a69e9c3f8a52782f09b5d5d1
Merge "libstagefright: support for disabling buffer metadata" into jb4.3
Merge "Added ifndef ICS_AUDIO_BLOB around non-existent functions (3/3)" into jb4.3
Merge "cleanup media variant ifdef" into jb4.3
Merge "Enable LPA/Tunnel audio for QCOM B-Family" into jb4.3
Merge "Enable Tunnel Playback for msm8974" into jb4.3
audioflinger: Fix delay in enabling effect for LPA

 - Enable/disable of effects for LPA is taking time
 - Enable notification is not sent to effects thread till
   configure is called on each effect with isForLPA flag
   set to true, this happens only when applyEffcts is
   called in write of directoutput thread, so till that time
   effects are not applied and there is a delay in effects
   getting applied.
 - Insted of checking effcts LPA flag check the effectchain's
   LPA flag while sending notification to effects thread

Change-Id: I8d7559a60e5c6769d72022517daa05c84df54885
CRs-Fixed: 525510
audioflinger: Fix pops in LPA while effects are applied

 -Issue: LPA playback while effect are applied, has pops/noise
  as below scenarios
  1) LPA Playback + taking snapshot with camera
  2) LPA Playback + changing media volume from settings app
  3) LPA plaback after non-LPA playback
 -Rootcause:Effects meant for LPA are getting applied in
  normal playback path
 -Fix: In threadloop of mixerthread if current effect
  chain is equal to LPAeffectchain, don't apply effects.

CRs-Fixed: 526799

Change-Id: Ic255ef2db81545abd119633e8fc6a7bae5d2f38c
audioflinger: Add missing code for FM volume

 * If we used a proper MR2 audio HAL, this wouldn't be needed,
   but building FM support with the hacked up MR1 audio HAL we
   uses fails miserably. Adding this back fixes that.

Change-Id: If2f6ee9e417732eaf4df8718bf73b2dfd1062011
frameworks/av: 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

Change-Id: I4470be49c44e0c86c8a6262f57cabbc609c32045
Crs-fixed:  525315
audio policy: Avoid unintended update of a command's timestamp

- When two setParameter calls with different keyValuePairs reach
  AudioPolicyService from HAL, the timestamp of the command received
  later is updated to that of the command received first.
  This is unintended and might cause a delay or advance the processing
  of commands.
- AudioPolicyService processes setParameters calls in the order
  in which it receives them and when two setParameter calls with
  different keyValuePairs come in (in this case, FM volume with a
  delay and routing), the timestamp of the command received last
  (routing) is updated to be processed at the timestamp of the command
  received earlier (FM volume). FM volume is set with a delay which
  causes the delay in routing as well.
- The timestamp of the command should be updated only if the
  keyValuePairs in the setParameters call match.

CRs-Fixed: 538263

Change-Id: Ie9e7d3ddf9aabd5cf551dccc27aca0a88d1edb77
libstagefright: Add support for custom LPA buffer size in legacy LPAPlayer

     - on msm7x27a with bootloader heap for lpa audio during audio playback with,
       DSP Manager effects enabled there is a lot of stuttering with the default buffer size.
       with bl heap we need buffer size of 480, but that breaks audio at in cm. So we have,
       to use buffer size of 512 to get audio working but it makes stuttering as mentioned.
       so add support for a custom buffer size so we can use 480 buffer size.

Change-Id: Ib4b5222b4b64d42288e0ad5c95910e385d172374
Merge "libstagefright: Add support for custom LPA buffer size in legacy LPAPlayer" into jb4.3
Merge remote-tracking branch 'Slim/jb4.3' into slim4.3