stagefright: Add flag for enabling enhanced offload support

 * Some devices might not use the QCOM_HARDWARE flag, but still
   want to get the improved audio offload support.
 * Add TARGET_ENABLE_OFFLOAD_ENHANCEMENTS to enable support for
   PCM offload and 24-bit playback with no extra dependencies.

Change-Id: Ie1a92602c6c0cd59008db8dbf72125eecef08e85
av: camera: Generic QCOM camera symbols

 * Several symbols declared Oppo specific are QCOM generic

Change-Id: I0a1b5742d8e4d08963cbd43e69c87609eef45b59
av: media: Add audio/qti-flac MIME type definition

Change-Id: Ie52fd6696cc5efa6aaff20ea56c43615467e2649
audioflinger: decline track to be offloaded if there's active one

-If multiple offload tracks are activated at the same time,
 status of the tracks can be affected by each other and results
 in unexpected behavior
-Deny subsequent track to be offloaded and fall back to sw decoder
 if there's already actived one

Change-Id: Idaa9213d54b9bcdd0e5c25c1dec516d994ae006f
CRs-Fixed: 704382
stagefright: Fix NULL pointer access issues

Fix NULL pointer access issues in stagefright & move printFileName
to ExtendedUtils.

CRs-Fixed: 694900
Change-Id: I390f692b72fcb40e31a095abbb412afebde0a64f
frameworks/av: Avoid timestamp query to AudioPlayer during reset

-Timestamp query while in reset leads to ANR in few cases.
-Destruction of mutex in AudioTrack destructor during reset and
trying to lock the destroyed mutex as part of getPosition() call
in parallel leads to ANR.
-Avoid querying for timestamp in case reset operation is in progress.
Instead use mAudioTearDownPosition to retrieve current playback
position.

Change-Id: Ifaa7f6236ebce1b27a0cca621bbb188c94af142d
audio: Update timestamp for offload playback after EOS.

- After EOS of offload playback,audioplayer was not
  updating the timestamp.
- Query the HAL for the last rendered timestamp when
  HAL sends EOS notification.

Change-Id: Ifa25e0a9a1a245cc74c92294ab0a322db0ab4bec
stagefright: Fix compilation when ! ENABLE_AV_ENHANCEMENTS

Change-Id: I1418b563dcbb0a4709e64e406dd09a98947759d7
MatroskaExtractor: Letting the error be correctly handled

Do not blow up when parsing the header fails (like, say, a
corrupt or zero-byte file) and let the error handling that's
already in place exit the extractor cleanly

Change-Id: I457574d4279efdd3a08e159e755b563d6d98fbc6
Merge remote-tracking branch 'carbon/kk' into kk