OMXCodec: Support older QCOM video decoders

Pre-JB qcom decoders calculated buffer dimensions based on stride
and slice instead of the video frame dimensions. If for some reason
a device uses older (ICS, possibly HC) OMX libraries, enable this
behavior with QCOM_ICS_DECODERS

Change-Id: Id7f48bf79e3bfd5bcf692eb8165edde2b426a351
Merge "OMXCodec: Support older QCOM video decoders" into jellybean
frameworks/av: Implement DirectTrack and DirectTrackClient

- DirectTrack exposes API to client so it can create a direct
  output.
- DirectTrackClient allows notifications to be sent to the
  client from DirectTrack
- DirectTrack is being used for LPA and Tunnel Audio

Change-Id: I1ae121bbcdf8d84000214c10116757915c826fa4

libStagefright:: Provide interface to query current offset position

- Currently the streamport is querying same getSize for get current
  offset. Since this info is needed by parser to decide if sufficient
  data is there before requesting for the same. But in case of data
  length and size coming zero the same is passed to the parser which
  assumes that there is no data with the data source and it errors out.
- To resolve this issue new interface is created to pass the current
  offset length which indicated how much data is read till now.

Change-Id: Id508329cd9ba6c34f882821135cced1d37ba0346

frameworks/av: Update framecount and buffersize values

-framecount should be calculated based on mMaxBufferSize
 returned from HAL
-update the buffersize with the value returned from HAL
Change-Id: I90dd9c3ebbbc8a9f1f2f92c5347ae9cb01719e13

media: Include the MPQPlayer for MPQ8064

JB upgrade for the MPQ8064.
Initail contribution taken from the ICS mainline code.
Including the MPQAudioPlayer for the tunnel mode.

Change-Id: Iaf827ac2c63a4f749ecfe5494ebeb0cd2e14d4a2

Stagefright: Implement LPAPlayer and TunnelPlayer for DirectTrack

Change-Id: If025b129a3e102642552c16522d8668c657ab5b3

libmediaplayerservice - enable prepare for source other than DASH

  - enable media_repared for non dash source
  - allow prepare async for non dash source

Change-Id: I24218644114c4a8965a12056ecfc841841515576
CRs-Fixed: 382348

frameworks/av: Add Misc fixes for LPA

- Add support from closing recycled track while going from non-LPA
  clip to a LPA clip.
- Set EOS to true when there is asynchronous reset. This prevents
  decoder/extractor from fetching additional buffers.
- Disable Audio Effects changes for now.

Change-Id: Iea150885c1517b1eee7df7f1ad5231e5bcad23d4

libstagefright: Bookkeeping for Tunnel instance in AwesomePlayer

-Add additional Bookkeeping for Tunnel instance in AwesomePlayer due
 to gapless playback changes in stagefright.

Change-Id: I54376ccc43450cf90a44b149e8ee911f29dcbe65

libaudioflinger: Setparameter  call  for direct track.

-Add set parameter call for direct track. This is required for
 device switch of lpa  / tunnel clips.

Change-Id: Ib57feff2adbbcce75d540a41e3ab4e3bb9dcd02d

audioflinger: VOIP bringup and support for vocoders

Change-Id: I681e8e4ddade15a7d3aef4d25e6bbc7dced03767
(cherry picked from commit 5aac550bcab3ff19984d05b8c7904ee6d63d197b)

Conflicts:

	media/libmedia/AudioRecord.cpp
	services/audioflinger/AudioFlinger.cpp
	services/audioflinger/AudioFlinger.h
audioflinger: fix bad parentheses placement

Change-Id: I682b72cedca96b3bab68ccb4953bafceac24ac82
audio: Fix another ifdef fail.

 * Yeah, I should test more.

Change-Id: I82f532518e8367d09550347520f3604f907f90da
stagefright: Build QCOM players for all QCOM targets

 * They are disabled, but need to be built.

Change-Id: I38e75c078011402b36a2ca8e4a4e9fa76b2edd89
audio: Unbreak ALL the things

 * Seriously, WTF Steve.

Change-Id: I7c304104d9d7e84121ef1a8cf77d5977e1258616
Merge remote branch 'cyanogen/jellybean' into jellybean

* cyanogen/jellybean:
  audio: Unbreak ALL the things
  stagefright: Build QCOM players for all QCOM targets
  audio: Fix another ifdef fail.
  audioflinger: fix bad parentheses placement
  frameworks/av: Implement DirectTrack and DirectTrackClient
  OMXCodec: Support older QCOM video decoders