Use bufferpool@2.0

Use bufferpool2.0 instead of bufferpool 1.0 from CCodec

Change-Id: I842b6723e83eb537f2b2eea0f30a1f36f2b17fa9
gugelfrei
Sungtak Lee 6 years ago
parent 7f6f0fd000
commit d331808406

@ -282,7 +282,7 @@ std::atomic<std::uint32_t> Accessor::Impl::BufferPool::Invalidation::sInvSeqId(0
Accessor::Impl::Impl::BufferPool::~BufferPool() {
std::lock_guard<std::mutex> lock(mMutex);
ALOGD("Destruction - bufferpool %p "
ALOGD("Destruction - bufferpool2 %p "
"cached: %zu/%zuM, %zu/%d%% in use; "
"allocs: %zu, %d%% recycled; "
"transfers: %zu, %d%% unfetced",
@ -353,12 +353,12 @@ void Accessor::Impl::BufferPool::Invalidation::onInvalidationRequest(
msgId = ++mInvalidationId;
}
}
ALOGV("bufferpool invalidation requested and queued");
ALOGV("bufferpool2 invalidation requested and queued");
if (left == 0) {
channel.postInvalidation(msgId, from, to);
} else {
// TODO: sending hint message?
ALOGV("bufferpool invalidation requested and pending");
ALOGV("bufferpoo2 invalidation requested and pending");
Pending pending(needsAck, from, to, left, impl);
mPendings.push_back(pending);
}
@ -380,7 +380,7 @@ void Accessor::Impl::BufferPool::Invalidation::onHandleAck() {
// lost.
it->second = mInvalidationId;
} else {
ALOGV("bufferpool observer died %lld", (long long)it->first);
ALOGV("bufferpool2 observer died %lld", (long long)it->first);
deads.insert(it->first);
}
}
@ -682,7 +682,7 @@ void Accessor::Impl::BufferPool::cleanUp(bool clearCache) {
mLastCleanUpUs = mTimestampUs;
if (mTimestampUs > mLastLogUs + kLogDurationUs) {
mLastLogUs = mTimestampUs;
ALOGD("bufferpool %p : %zu(%zu size) total buffers - "
ALOGD("bufferpool2 %p : %zu(%zu size) total buffers - "
"%zu(%zu size) used buffers - %zu/%zu (recycle/alloc) - "
"%zu/%zu (fetch/transfer)",
this, mStats.mBuffersCached, mStats.mSizeCached,
@ -703,7 +703,7 @@ void Accessor::Impl::BufferPool::cleanUp(bool clearCache) {
freeIt = mFreeBuffers.erase(freeIt);
} else {
++freeIt;
ALOGW("bufferpool inconsistent!");
ALOGW("bufferpool2 inconsistent!");
}
}
}
@ -722,7 +722,7 @@ void Accessor::Impl::BufferPool::invalidate(
freeIt = mFreeBuffers.erase(freeIt);
continue;
} else {
ALOGW("bufferpool inconsistent!");
ALOGW("bufferpool2 inconsistent!");
}
}
++freeIt;

@ -811,7 +811,7 @@ ResultStatus BufferPoolClient::getAccessor(sp<IAccessor> *accessor) {
}
void BufferPoolClient::receiveInvalidation(uint32_t msgId) {
ALOGV("bufferpool client recv inv %u", msgId);
ALOGV("bufferpool2 client recv inv %u", msgId);
if (isValid()) {
mImpl->receiveInvalidation(msgId);
}

@ -24,7 +24,7 @@ cc_library {
"android.hardware.graphics.bufferqueue@1.0",
"android.hardware.graphics.common@1.0",
"android.hardware.media@1.0",
"android.hardware.media.bufferpool@1.0",
"android.hardware.media.bufferpool@2.0",
"android.hardware.media.c2@1.0",
"android.hardware.media.omx@1.0",
"libbase",
@ -35,7 +35,7 @@ cc_library {
"libhidltransport",
"libhwbinder",
"liblog",
"libstagefright_bufferpool@1.0",
"libstagefright_bufferpool@2.0",
"libstagefright_bufferqueue_helper",
"libui",
"libutils",
@ -49,7 +49,7 @@ cc_library {
"android.hardware.media.c2@1.0",
"libcodec2",
"libhidlbase",
"libstagefright_bufferpool@1.0",
"libstagefright_bufferpool@2.0",
"libstagefright_bufferqueue_helper",
"libui",
],

@ -410,7 +410,7 @@ Component::Component(
const std::shared_ptr<C2Component>& component,
const sp<IComponentListener>& listener,
const sp<ComponentStore>& store,
const sp<::android::hardware::media::bufferpool::V1_0::
const sp<::android::hardware::media::bufferpool::V2_0::
IClientManager>& clientPoolManager) :
Configurable(new CachedConfigurable(
std::make_unique<CompIntf>(component->intf()))),

@ -57,7 +57,7 @@ namespace utils {
using namespace ::android;
using ::android::GraphicBufferSource;
using namespace ::android::hardware::media::bufferpool::V1_0::implementation;
using namespace ::android::hardware::media::bufferpool::V2_0::implementation;
namespace /* unnamed */ {

@ -20,7 +20,7 @@
#include <codec2/hidl/1.0/Configurable.h>
#include <codec2/hidl/1.0/types.h>
#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
#include <android/hardware/media/bufferpool/2.0/IClientManager.h>
#include <android/hardware/media/c2/1.0/IComponentListener.h>
#include <android/hardware/media/c2/1.0/IComponentStore.h>
#include <android/hardware/media/c2/1.0/IComponent.h>
@ -71,7 +71,7 @@ struct Component : public Configurable<IComponent> {
const std::shared_ptr<C2Component>&,
const sp<IComponentListener>& listener,
const sp<ComponentStore>& store,
const sp<::android::hardware::media::bufferpool::V1_0::
const sp<::android::hardware::media::bufferpool::V2_0::
IClientManager>& clientPoolManager);
c2_status_t status() const;

@ -20,7 +20,7 @@
#include <codec2/hidl/1.0/Component.h>
#include <codec2/hidl/1.0/Configurable.h>
#include <android/hardware/media/c2/1.0/IComponentStore.h>
#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
#include <android/hardware/media/bufferpool/2.0/IClientManager.h>
#include <hidl/Status.h>
#include <C2Component.h>
@ -40,7 +40,7 @@ namespace c2 {
namespace V1_0 {
namespace utils {
using ::android::hardware::media::bufferpool::V1_0::IClientManager;
using ::android::hardware::media::bufferpool::V2_0::IClientManager;
using ::android::hardware::hidl_array;
using ::android::hardware::hidl_handle;

@ -20,8 +20,8 @@
#include <chrono>
#include <bufferpool/ClientManager.h>
#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
#include <android/hardware/media/bufferpool/1.0/types.h>
#include <android/hardware/media/bufferpool/2.0/IClientManager.h>
#include <android/hardware/media/bufferpool/2.0/types.h>
#include <android/hardware/media/c2/1.0/IComponentStore.h>
#include <android/hardware/media/c2/1.0/types.h>
#include <gui/IGraphicBufferProducer.h>
@ -46,7 +46,7 @@ using ::android::hardware::hidl_string;
using ::android::hardware::hidl_vec;
using ::android::status_t;
using ::android::sp;
using ::android::hardware::media::bufferpool::V1_0::implementation::
using ::android::hardware::media::bufferpool::V2_0::implementation::
ConnectionId;
using ::android::IGraphicBufferProducer;
@ -131,9 +131,9 @@ c2_status_t objcpy(
// Abstract class to be used in
// objcpy(std::list<std::unique_ptr<C2Work>> -> WorkBundle).
struct BufferPoolSender {
typedef ::android::hardware::media::bufferpool::V1_0::
typedef ::android::hardware::media::bufferpool::V2_0::
ResultStatus ResultStatus;
typedef ::android::hardware::media::bufferpool::V1_0::
typedef ::android::hardware::media::bufferpool::V2_0::
BufferStatusMessage BufferStatusMessage;
typedef ::android::hardware::media::bufferpool::
BufferPoolData BufferPoolData;
@ -151,7 +151,7 @@ struct BufferPoolSender {
* other means so it can call receive() properly.
* \return ResultStatus value that determines the success of the operation.
* (See the possible values of ResultStatus in
* hardware/interfaces/media/bufferpool/1.0/types.hal.)
* hardware/interfaces/media/bufferpool/2.0/types.hal.)
*/
virtual ResultStatus send(
const std::shared_ptr<BufferPoolData>& bpData,
@ -168,9 +168,9 @@ struct BufferPoolSender {
// IClientManager::registerSender() to establish the bufferpool connection when
// send() is called.
struct DefaultBufferPoolSender : BufferPoolSender {
typedef ::android::hardware::media::bufferpool::V1_0::implementation::
typedef ::android::hardware::media::bufferpool::V2_0::implementation::
ClientManager ClientManager;
typedef ::android::hardware::media::bufferpool::V1_0::
typedef ::android::hardware::media::bufferpool::V2_0::
IClientManager IClientManager;
// Set the IClientManager instance of the receiving process and the refresh
@ -278,7 +278,7 @@ c2_status_t updateParamsFromBlob(
* \param BufferPool status
* \return Corresponding c2_status_t
*/
c2_status_t toC2Status(::android::hardware::media::bufferpool::V1_0::
c2_status_t toC2Status(::android::hardware::media::bufferpool::V2_0::
ResultStatus rs);
// BufferQueue-Based Block Operations

@ -49,11 +49,11 @@ namespace utils {
using namespace ::android;
using ::android::hardware::Return;
using ::android::hardware::media::bufferpool::BufferPoolData;
using ::android::hardware::media::bufferpool::V1_0::BufferStatusMessage;
using ::android::hardware::media::bufferpool::V1_0::ResultStatus;
using ::android::hardware::media::bufferpool::V1_0::implementation::
using ::android::hardware::media::bufferpool::V2_0::BufferStatusMessage;
using ::android::hardware::media::bufferpool::V2_0::ResultStatus;
using ::android::hardware::media::bufferpool::V2_0::implementation::
ClientManager;
using ::android::hardware::media::bufferpool::V1_0::implementation::
using ::android::hardware::media::bufferpool::V2_0::implementation::
TransactionId;
using ::android::TWGraphicBufferProducer;

@ -7,7 +7,7 @@ cc_library {
shared_libs: [
"android.hardware.graphics.bufferqueue@1.0",
"android.hardware.media.bufferpool@1.0",
"android.hardware.media.bufferpool@2.0",
"android.hardware.media.c2@1.0",
"libbase",
"libbinder",
@ -19,7 +19,7 @@ cc_library {
"libhidlbase",
"libhidltransport",
"liblog",
"libstagefright_bufferpool@1.0",
"libstagefright_bufferpool@2.0",
"libstagefright_bufferqueue_helper",
"libui",
"libutils",

@ -34,7 +34,7 @@
#include <media/stagefright/bqhelper/WGraphicBufferProducer.h>
#undef LOG
#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
#include <android/hardware/media/bufferpool/2.0/IClientManager.h>
#include <android/hardware/media/c2/1.0/IComponent.h>
#include <android/hardware/media/c2/1.0/IComponentInterface.h>
#include <android/hardware/media/c2/1.0/IComponentListener.h>
@ -55,8 +55,8 @@ using ::android::TWGraphicBufferProducer;
using namespace ::android::hardware::media::c2::V1_0;
using namespace ::android::hardware::media::c2::V1_0::utils;
using namespace ::android::hardware::media::bufferpool::V1_0;
using namespace ::android::hardware::media::bufferpool::V1_0::implementation;
using namespace ::android::hardware::media::bufferpool::V2_0;
using namespace ::android::hardware::media::bufferpool::V2_0::implementation;
namespace /* unnamed */ {

@ -85,9 +85,9 @@ namespace android {
namespace hardware {
namespace media {
namespace bufferpool {
namespace V1_0 {
namespace V2_0 {
struct IClientManager;
} // namespace V1_0
} // namespace V2_0
} // namespace bufferpool
} // namespace media
} // namespace hardware
@ -237,7 +237,7 @@ protected:
mutable std::vector<std::unique_ptr<std::vector<std::string>>>
mAliasesBuffer;
sp<::android::hardware::media::bufferpool::V1_0::IClientManager>
sp<::android::hardware::media::bufferpool::V2_0::IClientManager>
mHostPoolManager;
};

@ -35,7 +35,7 @@ cc_library_shared {
export_shared_lib_headers: [
"libbase",
"android.hardware.media.bufferpool@1.0",
"android.hardware.media.bufferpool@2.0",
],
local_include_dirs: [
@ -51,7 +51,7 @@ cc_library_shared {
"android.hardware.graphics.allocator@2.0",
"android.hardware.graphics.bufferqueue@1.0",
"android.hardware.graphics.mapper@2.0",
"android.hardware.media.bufferpool@1.0",
"android.hardware.media.bufferpool@2.0",
"libbase",
"libbinder",
"libcutils",
@ -63,7 +63,7 @@ cc_library_shared {
"liblog",
"libstagefright_bufferqueue_helper",
"libstagefright_foundation",
"libstagefright_bufferpool@1.0",
"libstagefright_bufferpool@2.0",
"libui",
"libutils",
],

@ -33,12 +33,12 @@ namespace {
using android::C2AllocatorGralloc;
using android::C2AllocatorIon;
using android::hardware::media::bufferpool::BufferPoolData;
using android::hardware::media::bufferpool::V1_0::ResultStatus;
using android::hardware::media::bufferpool::V1_0::implementation::BufferPoolAllocation;
using android::hardware::media::bufferpool::V1_0::implementation::BufferPoolAllocator;
using android::hardware::media::bufferpool::V1_0::implementation::ClientManager;
using android::hardware::media::bufferpool::V1_0::implementation::ConnectionId;
using android::hardware::media::bufferpool::V1_0::implementation::INVALID_CONNECTIONID;
using android::hardware::media::bufferpool::V2_0::ResultStatus;
using android::hardware::media::bufferpool::V2_0::implementation::BufferPoolAllocation;
using android::hardware::media::bufferpool::V2_0::implementation::BufferPoolAllocator;
using android::hardware::media::bufferpool::V2_0::implementation::ClientManager;
using android::hardware::media::bufferpool::V2_0::implementation::ConnectionId;
using android::hardware::media::bufferpool::V2_0::implementation::INVALID_CONNECTIONID;
// This anonymous namespace contains the helper classes that allow our implementation to create
// block/buffer objects.

@ -20,7 +20,7 @@
#include <functional>
#include <C2Buffer.h>
#include <android/hardware/media/bufferpool/1.0/IAccessor.h>
#include <android/hardware/media/bufferpool/2.0/IAccessor.h>
class C2BasicLinearBlockPool : public C2BlockPool {
public:
@ -112,7 +112,7 @@ public:
* \return true IAcessor is writen successfully.
* \return false IAccessor is not written.
*/
bool getAccessor(android::sp<android::hardware::media::bufferpool::V1_0::IAccessor> *accessor);
bool getAccessor(android::sp<android::hardware::media::bufferpool::V2_0::IAccessor> *accessor);
private:
const std::shared_ptr<C2Allocator> mAllocator;

Loading…
Cancel
Save