diff options
author | Chih-Yu Huang <akahuang@google.com> | 2020-07-22 12:37:00 +0900 |
---|---|---|
committer | Chih-Yu Huang <akahuang@google.com> | 2020-07-30 11:02:38 +0900 |
commit | 50b5cdfecc84c79b92e60e42cab0070fa1a982ec (patch) | |
tree | e9aa0ccaf33cee7651962d379688bc15acf168e3 /components/V4L2DecodeComponent.cpp | |
parent | c982386f20bfe559ff859bd7a3927f310ba80313 (diff) | |
download | v4l2_codec2-50b5cdfecc84c79b92e60e42cab0070fa1a982ec.tar.gz |
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
Diffstat (limited to 'components/V4L2DecodeComponent.cpp')
-rw-r--r-- | components/V4L2DecodeComponent.cpp | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/components/V4L2DecodeComponent.cpp b/components/V4L2DecodeComponent.cpp index 8a86466..0f59d79 100644 --- a/components/V4L2DecodeComponent.cpp +++ b/components/V4L2DecodeComponent.cpp @@ -275,12 +275,7 @@ void V4L2DecodeComponent::getVideoFramePool(std::unique_ptr<VideoFramePool>* poo return; } - // TODO(b/160307705): Consider to remove the dependency of C2VdaBqBlockPool. - if (blockPool->getAllocatorId() == C2PlatformAllocatorStore::BUFFERQUEUE) { - reinterpret_cast<C2VdaBqBlockPool*>(blockPool.get())->requestNewBufferSet(numBuffers); - } - - *pool = VideoFramePool::Create(std::move(blockPool), size, pixelFormat, mIsSecure, + *pool = VideoFramePool::Create(std::move(blockPool), numBuffers, size, pixelFormat, mIsSecure, mDecoderTaskRunner); } |