aboutsummaryrefslogtreecommitdiff
path: root/plugin_store/V4L2PluginStore.cpp
AgeCommit message (Collapse)Author
2021-03-01C2VdaBqBlockPool: Use GEM handle as the identifier of graphic buffers.Chih-Yu Huang
Originally we assume the buffers at BufferQueue are not moved to different slot. Then we could track the buffers by the slot index. However, MediaSync implementation detach buffers and attach back to BufferQueue. The slot index might be changed. This CL changes to use GEM handle as the identifier of graphic buffers. Because all the graphic buffers are allocated by gralloc, we could get the GEM handle by DRM. V4L2GraphicAllocator is not used anymore. Bug: 177484971 Test: android.media.cts.AdaptivePlaybackTest Change-Id: I6b7f3f9a6c1d6b97d0e44aa2a19bc71ad3bab880
2021-01-12plugin_store: switch to V4L2GraphicAllocator from C2AllocatorGrallocChih-Yu Huang
At ag/12937817 we add V4L2GraphicAllocator to add unique ID for each graphic buffer. This CL switches to use V4L2GraphicAllocator for output buffer allocator. Also we change to use the unique ID instead of IGBP slot in surface mode (C2VdaBqBlockPool), and buffer ID from BufferPoolData in byte buffer mode (C2VdaPooledBlockPool). Bug: 171845630 Test: android.media.cts.AdaptivePlaybackTest#testH264_* Change-Id: Iab06148a09c9ddb01634399c386a0aaea77aaabd
2020-07-30plugin_store: Switch to use C2VdaPooledBlockPoolChih-Yu Huang
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
2020-07-09plugin_store: Add V4L2PluginStore.Chih-Yu Huang
V4L2PluginStore.cpp implements the exposed function signature for the shared library libc2plugin_store, including CreateBlockPool() and CreateAllocator(). Bug: 160307705 Test: mmm external/v4l2_codec2/plugin_store Change-Id: Ifcdf5459b72a83bb761f821bc500877f01094481