Camera2/3: Don't trigger AF when in INFINITY focus mode.

While the HAL should ignore it, it's faster to immediately respond
with success.

Also filter out cancel autofocus calls for FIXED/INFINITY focus.

Bug: 9263856
Change-Id: I637ec7c8b459d654ef11cb1142b959f2674224c5
stagefright: Fix port-reconfiguration & output-buffer-filled race condition

Remove the invalid assumption that when a port-reconfiguration event
is received, buffers cannot be downstream (waiting to be rendered).

Luckily, these buffers are properly handled (freed) after they are
sent to be rendered.

Change-Id: I1df39c1ffc2bfb96f8b7b4ee5be07cae654f956f
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 8736466
Camera2/3: Move recording frame processing to its own thread.

Due to new deadlock opportunities from HAL3 integration, recording
frame processing needs to move out of the new frame handler into its
own thread in StreamingProcessor.

Bug: 9282913
Change-Id: I8d2926f2de9d0d395eef3c328c65caebbdbd2827
camera2/3: Add protection to callback processing call

Callback stream in callbackprocessor could be delleted while process or
discard callback are ongoing, which leads CpuConsumer related call crash.

Bug 9303911

Change-Id: Ib6137e512208e5603468eba166640729b744e8f9
camera3: Fix crash in set error state.

When camera open fails in camera3device initialize call, setErrorStateLockedV()
tries to access RequestThread object that is not created yet.

Bug: 9319518
Change-Id: Id5c6c0150ecaecb198045d5c6eb1b2ceebf5a727
camera2/3: Fix deadlock take picture while preview callback

Acquiring mInputMutex before SharedParameters mutex in preview callback thread
causes circular locking dependency between callback thread and capture callback
thread.
Enforce the right lock ordering to break the dead lock.

Bug: 9323319
Change-Id: Iea2e025e4d9e29debcf74297c19930075017e179
audioflinger: fix effects on direct output threads

PlaybackThread::addTrack_l() uses the assumption that
effects are attached to a track only if the track accumulation
buffer is different from the mixer thread output buffer.
This is not true for direct output threads where only one track is active
an only one buffer is needed.
This assumption is an optimization to avoid checking for effect chains with
the same session ID each time a track is processed. The optimization
is not key if only one track is attached to the thread which is the case for
direct outputs.

Current code fails to increment the active track count in the effect chain
on direct output threads when a track is started thus making the effect
framework clear the mix buffer and produce silence each time the mixer runs.

The fix consists in removing the optimization described above.

Bug: 9324989.

Change-Id: Id7a6337450ed90d326299c2ce9fc02f4b9e2fa6f
Update HTTP proxy configuration for all media playback inside stagefright.

Change-Id: Ie0dd00045aba668d8b49da73224e7a7c9c04f69b
related-to-bug: 8873723
(cherry picked from commit 2704965b8a1ff3b7450ff58ccecf86d8ec688c40)
libstagefright: Add support to plug-in proprietary parser

 - Introduce an Extended Extractor to facilitate plugging-in
   of proprietary parsers.

 - QC Proprietary parsers will be built and added only if
   TARGET_ENABLE_QC_AV_ENHANCEMENTS is true.

Change-Id: I2aae9515867f0beaa822e17fa390a1dc81953965
libstagefright: Add QC specific mime types

 - Add QC specific media extensions and mime types.

Change-Id: Id942a12cde131ca37a4a8855b340a9c8ff7b70d5
libstagefright: add ExtendedCodec to configure QC specific formats

 - ExtendedCodec configures omx component with QC specific
   extensions to augment container/codec format-support

Change-Id: I0eadf056f46d0512ae1cf3b2be29797a86cdd9eb
libstagefright: Configure decoder to support VC1 clips

Change-Id: I94900e9d6bd8a53c49a7449cc241b684749a4f33
 - Configure decoder in frame-by-frame or arbitrary mode
   based on the codec type.
 - Enable timestamp reordering for VC1 and AVI
CRs-Fixed: 432847
frameworks/av: Add support for LPA and Tunnel Playback

-Add DirectTrack and DirectTrackClient.
-DirectTrack enables client to create a direct
 output.
-DirectTrackClient allows notifications to be sent to the
 client from DirectTrack.
-DirectTrack is being used for Low Power Audio
 playback and Tunnel Audio playback

Change-Id: Iddaaa557c4d6cb2e44903b6eaeba35cb9315194d
audio: Compile AudioParameter as shared library

- AudioParameter as shared lib is needed by BT
  support in WFD source, SRS TruMedia

Change-Id: I8d78740ee0df456c8a305511d9335c228c9be3b0
audio: define QCOM audio parameters

- Define QCOM audio paramters for FM, VOIP,
  fluence, SSR, and etc.

Change-Id: Id708c22f7ebe96f1831095447560ff9376c73878
MediaProfiles: Add support for camcorder video resolutions.

Added video resolutions to support camcorder recording.

Change-Id: I2291de43ae2be7338c673f2f0417ec5c1581391e
audio: Add support for QCOM's VOIP solution

Change-Id: I108c4aea30b3e807209910ade429060e23545cde
libmedia: Add QC enhancements to MediaProfiles

Add entries for:
- EVRC, QCELP, and WMA formats
- 4K resolution support for camcorder

Change-Id: Ic308a735ffae5c57174824a86bff0248aff15ad2
audio: add support for QCOM audio formats

-Add support for EVRC, QCELP, AMRWB+, and WMA formats.

Change-Id: If110058284c8b3e18c2f242f560fc7748f62081c
mediaserver: conditionally launch ListenService

Conditionally instantiate ListenService from MediaService

Change-Id: Ib7a7e9bec41c64b0787433268d7ab769b852c124