plugin_store: Switch to use C2VdaPooledBlockPool

The V4L2 stateful API requires the caller pass the same buffers to the
output queue slot. Originally we use C2PooledBlockPool for byte buffer
mode, but C2PooledBlockPool cannot get buffer identifier.

This CL switches to use C2VdaPooledBlockPool, which guarantees to
return a fixed set of buffers and could query the buffer index.

Bug: 161770200
Test: pass e2e test
Change-Id: Ief2bdd9ceb6655cd47627ccf6c239a1e6d73482e
5 files changed
tree: e9aa0ccaf33cee7651962d379688bc15acf168e3
  1. accel/
  2. common/
  3. components/
  4. include/
  5. plugin_store/
  6. service/
  7. store/
  8. tests/
  9. .clang-format
  10. Android.mk
  11. C2VDAAdaptor.cpp
  12. C2VDAAdaptorProxy.cpp
  13. C2VDAComponent.cpp
  14. MODULE_LICENSE_BSD
  15. NOTICE
  16. OWNERS
  17. PREUPLOAD.cfg
  18. 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.