C2VdaBqBlockPool: remove mAllocateBuffersLock

Originally when resolution changes, C2VDAComponent will pause the
decoding until C2VdaBqBlockPool fetches all of the requested N buffers
from bufferqueue. |mAllocateBuffersLock| will be locked during the
whole period of buffer fetching.

However, C2V4L2DecodeComponent doesn't pause the decoding until all
buffers are fetched. Also, there is no data needed to protect by
|mAllocateBuffersLock|. This CL removes |mAllocateBuffersLock| inside
C2VdaBqBlockPool.

Bug: 168557465
Test: pass android.media.cts.AdaptivePlaybackTest#testVP8_adaptiveDrc
      with related CLs

Change-Id: I73078492a6f946daee8b6732eed72ace04a17683
1 file changed
tree: 28bb3e507fae297b400aeb25d0686271f79d2548
  1. accel/
  2. common/
  3. components/
  4. plugin_store/
  5. service/
  6. store/
  7. tests/
  8. .clang-format
  9. METADATA
  10. MODULE_LICENSE_BSD
  11. NOTICE
  12. OWNERS
  13. PREUPLOAD.cfg
  14. README.md
README.md

V4L2-based Codec2 Component Implementation

Description of Sub-folders

  • accel/ Core V4L2 API and codec utilities, ported from Chromium project.

  • common/ Common helper classes for both components/ and store/.

  • components/ The C2Component implementations based on V4L2 API.

  • store/ The implementation of C2ComponentStore. It is used for creating all the C2Components implemented at components/ folder.

  • service/ The Codec2's V4L2 IComponentStore service. The service initiates the component store implemented at store/ folder, and registers it as the default service.