dashplayer: Remove cached formats from the proper location

1. Removed cached format/crop from the 0th position.
2. Clear cached formats in destructor.

Change-Id: Idd9c767bf9f660fe8ceae7f99b3ac51861b2a932
mm-video: vdec: ref count the notifications to secure-display

Notifications to display HAL to secure/unsecure display is sent
when component is created/destroyed. When multiple instances
are created/destroyed, the shared flag which indicates status
of such notification can go out-of-sync.
This change ref-counts the secure status flag and protects it
with a lock.

Change-Id: I126c92d16b03819afcbaf2f056928ba792556ed8
mm-video: vidc: Fix an issue in flush for Surfacemediasource_test

When i/p flush is in progress, need to give back all the ETB's
to client as EBD's directly instead of post_event. so do not call
push_input_buffer function.

Change-Id: Id17a84e9a009bbe80ec034c78a78a08b889c394a
CRs-Fixed: 517599
Merge "mm-video: vdec: ref count the notifications to secure-display"
Merge "mm-video: vidc: Fix an issue in flush for Surfacemediasource_test"
Merge "dashplayer: Remove cached formats from the proper location"
camera bringup changes hardware-qcom-media

Change-Id: I4b81d2150e5bbd97d09c91f3cf89a8c6169b6058
media: compilation fix for updated sdk version

compilation fix for updated sdk version

Change-Id: Ib83de1d7ce4c8dae012ae0d0f22d7edccc8cc552
Merge "media: compilation fix for updated sdk version"
Dashplayer: enable adaptive playback based on codec format key

Added support for prepareForAdaptivePlayback() call in
configureCodec, if max-width and max-height keys are specified
in the format.  It is OK for this call to fail, if component
does not implement adaptive playback.

Change-Id: I403e70559cd54489d35a94b467192701f163d568
mm-video: vdec: Support adaptive playback mode

In this mode client checks and sets an extension to indicate
that the content can change resolution, within the pre-
announced maximum height/width. Component over-allocates
buffers for the max resolution and dbp, and notifies client
of any crop change when resolution changes within bounds.

Resolution changes beyond set max width/height will result in
port-reconfiguration notification, while adapting to the new
resolution.

Change-Id: I744ac475f3bbedaaca2b057e9a327243674f0d9e

Conflicts:

	mm-video/vidc/vdec/src/omx_vdec.cpp
mm-video: vidc: set stride in gralloc-metadata for adaptive-playback

In Adaptive-playback mode, following resolution change, decoder
continues to decode on larger buffer. But the stride is changed
implicitly. Set the updated stride in gralloc-metadata in each
buffer, so HWC/GPU can read the stride to interpret the buffer's
geometry correctly.

Change-Id: If223e4bf230f8032b03b9d51d41b39576d0cf961
Merge "Dashplayer: enable adaptive playback based on codec format key"
dashplayer: Add support for invoke

Add support for  invoke() in dashplayer and QCMediaPlayer

Change-Id: I58ac0da2a9cd067d2ef92084b9c4c503786edb2c
Merge "mm-video: vidc: set stride in gralloc-metadata for adaptive-playback"
Merge "mm-video: vdec: Support adaptive playback mode"
Merge "dashplayer: Add support for invoke"
mm-video: venc: Correct a typo in variable name

A kernel variable was to be defined as unsigned long but
it is mistakenly defined as unsigned only, the space is
missing after long. This bug is silent because unsigned
is also a valid data type by itself.
Corresponding to kernel fix, similar correction is done
in userspace code.

Change-Id: Ie58f275149dc9c85553f75e02594113b1a03ddcf
CRs-fixed: 556771
dashplayer: Handle error for text track

Handle UNKNOWN_ERROR for text track

Change-Id: Ifeb827b4b7f0fb796593789b0b51be333292c66f
Merge "dashplayer: Handle error for text track"