libstagefright: Avoid MPEG4 DP fallback to software decoder for MSM8x10

-Avoid MPEG4 DP fallback to software decoder for MSM8x10
 Video playback needs to happen with QCOM HW decoder.

Change-Id: I255e1d1c5a6c2508711e4408de0d537e19732b0e
CRs-Fixed: 629449
ExtendedCodec: update amrwb+ component input/output ports

- updated sample rate and channel count of amrwb+ input
  and output configurations

Change-Id: I1a0412ed402e8d58f1db5422c904e18a51fb5965
CRs-Fixed: 631469
libstagefright: Get rtp port range and cache size from system properties

- Operators require setting rtp/rtcp network port range and cache size.
- Parse rtp network port range from persistent system property
  "persist.sys.media.rtp-ports".
- Get cache size from persistent system property
  "persist.sys.media.cache-params", in order to store the value.

Change-Id: Ie044682c422d71f018e509a89a19d976f313e27c
stagefright: Cleanup legacy stuff

Change-Id: Ic87e66939424a23ea589822b4d4e122296d5b20c
libstagefright: Add the conditions to ignore seek and allow sink stop

 -If app issues the multiple seek request to EOF position, player EOS
  gets delayed and app does not move to the next clip.
 -Seek interrupt the sink stop issued at EOF, hence delay in EOS.
 -Do not skip the sink stop if renderer position is EOF and ignore
  seek if seek time is same as player position.

Change-Id: Ic313eabfb738201b6b516555051a7a65c2bf8de2
CRs-Fixed: 667151
libstagefright: Fix for ANR in streaming during seek

In seek, OMXCodec sets state to FLUSHING and if it
gets EOS during seek then the state will remain in
FLUSHING state. OMXCodec stop will happen only in
ERROR, PAUSING and EXECUTING states. Hence solution
is to set mState to EXECUTING after flushing completed

CRs-Fixed: 664381

Change-Id: Ie6f65175ce66ea6973465b68d31e4f82354ea9a9
CameraService: Change order of client declaration and service lock.

Camera service lock has to be acquired after client declaration.
Otherwise, deadlock can occur when client destructor tries to
acquire service lock when its already acquired.

Change-Id: I21757325b3cbfdd5ca52c7becdfaa34ffa5bc768
libmediaplayerservice:Fix deadlock on gapless start failure

Issue:- Current gapless implementation starts the next clip when
MEDIA_PLAYBACK_COMPLETE event for the first clip is recieved
by MediaPlayerService.
-Even if start for next clip fails, application is notified with
MEDIA_INFO_STARTED_AS_NEXT.
- This causes the framework to trigger mediaplayer start which
again fails as it being for the same clip resulting in a deadlock
in the mediaplayer.
Fix:- Notify application with MEDIA_INFO_STARTED_AS_NEXT only when
start for the next clip is successful.

Change-Id: I77c570074c7c98c996122e275161ba88298e56fc
AwesomePlayer: post seek complete if seek cannot be handled

If the extractor says SEEK isn't supported, notify SEEK_COMPLETE
immediately.

Change-Id: I8b899c901b7eae3d6d437829a29672fc676c2560
CRs-Fixed: 630590
libstagefright: add timeout to avoid blocking readAt function call

- this patch is to fix the corner case in the patch "Fix ANR issue
  in HTTP Streaming". The related change Id is
  Ief280b7e23727606746e1ca2bf4caa4a3044b7bc. In this corner case,
  onFetch is blocked on fetching data from network, and onRead on
  the same thread has no chance to be called. As the result, readAt
  is always waiting for the notification in onRead. It caused to
  block the other related function calls in AwesomePlayer.
- add the timeout in readAt function
- add the generation ID for checking whether onRead runs by the
  outdated message

Change-Id: Idb8942c6cff245c63e826792fffb46586a401a70
libstagefright: Keep LOOPING/AUTO_LOOPING flag during teardown

-LOOPING/AUTO_LOOPING flag is cleared during audio teardown process,
 then stream can only be played once which is not expected
-copy the previous looping flags and restore them after reset_l()
 is called

Change-Id: I4435d2b1d4d82efb235fc8099efa7d9f3d6af2d2
CRs-Fixed: 681711