v4l2_codec2: delay encoder output buffer creation

The codec framework initializes the output block pool in
CCodecBufferChannel::start. This change delays creation of output
buffers until after that method has had a chance to run, so that we
don't end up using the unoptimized BASIC_LINEAR pool that doesn't reuse
buffers.

Bug: 175515099
Test: Higher fps on arc.VideoEncodeAccelPerf.h264_1080p_i420_vm

Change-Id: I8657ed12a351b9f06f4c7d358aad5b433c5824b6
1 file changed
tree: 368ddd2521f5432c374ea0fa10bc05bb7ddd3db7
  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.