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)

For older audio blobs where is_source_active and is_stream_active_remotely
doesn't exist, receiving a notification and dumpsys crashes the audio service.

Change-Id: I554f00ba7f171d2ea91627cae2281623383b3ca7
Add camera parameters for htc evo 3D. (1/2)

Use BOARD_HTC_3D_SUPPORT to enable.

Change-Id: I28fa3f1586071bcc78b8e887bbbf699d338a0ceb
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
camcorder pause feature

--libmedia: add pause() interface in MediaRecorder and IMediaRecorder and add Pause state in mediarecorder's state machine
--libmediaplayerservice: add pause() interface in MediaRecorderClient and StagefrightRecorder
--libstagefright:      1.stop-in-pause implementation in recording pipeline for pause feature;
--camerasource: support switch between start() and stop()
--audiosource:  support switch between start() and stop()
--soft aacenc component:  clear some variables when doing flush to support re-start
--soft amrnbenc component: clear some variables when doing flush to support re-start

Change-Id: I3036ef8f4cc7644c1d36aa0b19e64fc9dc12c1f8
Camera: Dont process dataCalllback if recording is stopped

Issue: Here stopRecording is not finished as the previous
recording frame process has not completed. dataCallbackTimeStamp()
in CameraSource.cpp has stuck in the thread itself waiting for a lock.
In between, reset() function in CameraSource.cpp has called
and acquired lock. Reset() function calls stopRecording.
So the dataCallbackTimeStamp() is continuously waiting.
Unless dataCallbackTimeStamp returns, processRecordFrame
in HAL will not finish.

CRs-Fixed: 518351

Change-Id: I19bbdb4b50b0113a419c9229f0e26c56e8ce91e8
camera: Remove deprecated QCOM camera hacks

Change-Id: If48c5b7c904d26ec2a8307fa690f983660fd7b5a
CameraClient: Enables meta data notifications

- Adds the needed functionality for enabling/disabling
  metadata messages depending on the camera client
  commands.

Change-Id: Iab597d5519b8fb85ee21c824ec19e9aaec9b5219
CameraService: Adds support for longshot mode

- This change introduces additional functionality inside
  CameraClient for supporting continuous compressed data
  callbacks. This is needed for 'Burst/Long shot' mode
  where we could have indefinite number of callbacks after
  capture is triggered.

CRs-Fixed: 514199
Change-Id: I8b155e305a836729b071e5388a7046c6347bb9f3
camera: Re-add micromanagement of preview metadata

 * Some devices still have issues without this fix.

Change-Id: Iae2d4410086fb38bf7f9abeee62c05cae824d436
camera: bring back more of the preview metadata workaround.

Fixes issues with switching between FFC and back camera on some devices.

Change-Id: Ie2cef65263816b22e45513cfc639c32b48a49bec
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
Merge remote-tracking branch 'cm/jb-mr2' into jb-mr2