MediaCodec: revalidate cached queued input buffers if queue fails

For legacy behavior (using getInputBuffers) input buffer needs to
be made valid if queue fails.  Otherwise, it becomes unusable,
and the buffer still belongs to the user.

In the new model, buffers obtained by getIn/OutputBuffer will
become invalid even if queue/release fails.

We do not do the same logic for output buffers, as these should
not be accessed even if releaseBuffer fails (which really should not
happen anyway unless codec is in bad state).

Bug: 17630446
Change-Id: Ica72a168d8aea97a0ee3f3ef49c60d0ca5a9fa06
1 file changed