Loading media/codec2/hal/client/client.cpp +4 −3 Original line number Diff line number Diff line Loading @@ -1680,8 +1680,8 @@ c2_status_t Codec2Client::Component::setOutputSurface( uint64_t consumerUsage = kDefaultConsumerUsage; { if (surface) { uint64_t usage = 0; status_t err = surface->getConsumerUsage(&usage); int usage = 0; status_t err = surface->query(NATIVE_WINDOW_CONSUMER_USAGE_BITS, &usage); if (err != NO_ERROR) { ALOGD("setOutputSurface -- failed to get consumer usage bits (%d/%s). ignoring", err, asString(err)); Loading @@ -1694,7 +1694,8 @@ c2_status_t Codec2Client::Component::setOutputSurface( // they do not exist inside of C2 scope. Any buffer usage shall be communicated // through the sideband channel. consumerUsage = usage | kDefaultConsumerUsage; // do an unsigned conversion as bit-31 may be 1 consumerUsage = (uint32_t)usage | kDefaultConsumerUsage; } } Loading media/codec2/hal/hidl/1.0/utils/InputSurfaceConnection.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ struct InputSurfaceConnection::Impl : public ComponentWrapper { // C2AndroidMemoryUsage(C2MemoryUsage(usage.value)). // asGrallocUsage(); uint64_t grallocUsage = uint32_t grallocUsage = mSinkName.compare(0, 11, "c2.android.") == 0 ? GRALLOC_USAGE_SW_READ_OFTEN : GRALLOC_USAGE_HW_VIDEO_ENCODER; Loading media/codec2/sfplugin/C2OMXNode.cpp +0 −13 Original line number Diff line number Diff line Loading @@ -230,12 +230,6 @@ status_t C2OMXNode::getParameter(OMX_INDEXTYPE index, void *params, size_t size) err = OK; break; } case OMX_IndexParamConsumerUsageBits64: { OMX_U64 *usage = (OMX_U64 *)params; *usage = mUsage; err = OK; break; } case OMX_IndexParamPortDefinition: { if (size < sizeof(OMX_PARAM_PORTDEFINITIONTYPE)) { return BAD_VALUE; Loading Loading @@ -299,13 +293,6 @@ status_t C2OMXNode::setParameter(OMX_INDEXTYPE index, const void *params, size_t } mUsage = *((OMX_U32 *)params); return OK; case OMX_IndexParamConsumerUsageBits64: if (size != sizeof(OMX_U64)) { return BAD_VALUE; } mUsage = *((OMX_U64 *)params); return OK; } return ERROR_UNSUPPORTED; } Loading media/codec2/sfplugin/CCodec.cpp +5 −12 Original line number Diff line number Diff line Loading @@ -206,19 +206,12 @@ public: mNode = new C2OMXNode(comp); mOmxNode = new hardware::media::omx::V1_0::utils::TWOmxNode(mNode); mNode->setFrameSize(mWidth, mHeight); // Usage is queried during configure(), so setting it beforehand. // 64 bit set parameter is existing only in C2OMXNode. OMX_U64 usage64 = mConfig.mUsage; status_t res = mNode->setParameter( (OMX_INDEXTYPE)OMX_IndexParamConsumerUsageBits64, &usage64, sizeof(usage64)); if (res != OK) { // Usage is queried during configure(), so setting it beforehand. OMX_U32 usage = mConfig.mUsage & 0xFFFFFFFF; (void)mNode->setParameter( (OMX_INDEXTYPE)OMX_IndexParamConsumerUsageBits, &usage, sizeof(usage)); } return GetStatus(mSource->configure( mOmxNode, static_cast<hardware::graphics::common::V1_0::Dataspace>(mDataSpace))); Loading media/libstagefright/omx/1.0/WGraphicBufferSource.cpp +3 −20 Original line number Diff line number Diff line Loading @@ -143,7 +143,7 @@ Return<Status> TWGraphicBufferSource::configure( // use consumer usage bits queried from encoder, but always add // HW_VIDEO_ENCODER for backward compatibility. uint64_t consumerUsage; uint32_t consumerUsage; void *_params = &consumerUsage; uint8_t *params = static_cast<uint8_t*>(_params); fnStatus = UNKNOWN_ERROR; Loading @@ -155,32 +155,15 @@ Return<Status> TWGraphicBufferSource::configure( outParams.data() + outParams.size(), params); }); // try 64 bit consumer usage first auto transStatus = omxNode->getParameter( static_cast<uint32_t>(OMX_IndexParamConsumerUsageBits64), inHidlBytes(&consumerUsage, sizeof(consumerUsage)), _hidl_cb); if (!transStatus.isOk()) { return toStatus(FAILED_TRANSACTION); } if (fnStatus != OK) { // try 32 bit consumer usage upon failure uint32_t usage; _params = &usage; params = static_cast<uint8_t*>(_params); transStatus = omxNode->getParameter( static_cast<uint32_t>(OMX_IndexParamConsumerUsageBits), inHidlBytes(&usage, sizeof(usage)), inHidlBytes(&consumerUsage, sizeof(consumerUsage)), _hidl_cb); if (!transStatus.isOk()) { return toStatus(FAILED_TRANSACTION); } if (fnStatus != OK) { consumerUsage = 0; } else { consumerUsage = usage; } } OMX_PARAM_PORTDEFINITIONTYPE def; Loading Loading
media/codec2/hal/client/client.cpp +4 −3 Original line number Diff line number Diff line Loading @@ -1680,8 +1680,8 @@ c2_status_t Codec2Client::Component::setOutputSurface( uint64_t consumerUsage = kDefaultConsumerUsage; { if (surface) { uint64_t usage = 0; status_t err = surface->getConsumerUsage(&usage); int usage = 0; status_t err = surface->query(NATIVE_WINDOW_CONSUMER_USAGE_BITS, &usage); if (err != NO_ERROR) { ALOGD("setOutputSurface -- failed to get consumer usage bits (%d/%s). ignoring", err, asString(err)); Loading @@ -1694,7 +1694,8 @@ c2_status_t Codec2Client::Component::setOutputSurface( // they do not exist inside of C2 scope. Any buffer usage shall be communicated // through the sideband channel. consumerUsage = usage | kDefaultConsumerUsage; // do an unsigned conversion as bit-31 may be 1 consumerUsage = (uint32_t)usage | kDefaultConsumerUsage; } } Loading
media/codec2/hal/hidl/1.0/utils/InputSurfaceConnection.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ struct InputSurfaceConnection::Impl : public ComponentWrapper { // C2AndroidMemoryUsage(C2MemoryUsage(usage.value)). // asGrallocUsage(); uint64_t grallocUsage = uint32_t grallocUsage = mSinkName.compare(0, 11, "c2.android.") == 0 ? GRALLOC_USAGE_SW_READ_OFTEN : GRALLOC_USAGE_HW_VIDEO_ENCODER; Loading
media/codec2/sfplugin/C2OMXNode.cpp +0 −13 Original line number Diff line number Diff line Loading @@ -230,12 +230,6 @@ status_t C2OMXNode::getParameter(OMX_INDEXTYPE index, void *params, size_t size) err = OK; break; } case OMX_IndexParamConsumerUsageBits64: { OMX_U64 *usage = (OMX_U64 *)params; *usage = mUsage; err = OK; break; } case OMX_IndexParamPortDefinition: { if (size < sizeof(OMX_PARAM_PORTDEFINITIONTYPE)) { return BAD_VALUE; Loading Loading @@ -299,13 +293,6 @@ status_t C2OMXNode::setParameter(OMX_INDEXTYPE index, const void *params, size_t } mUsage = *((OMX_U32 *)params); return OK; case OMX_IndexParamConsumerUsageBits64: if (size != sizeof(OMX_U64)) { return BAD_VALUE; } mUsage = *((OMX_U64 *)params); return OK; } return ERROR_UNSUPPORTED; } Loading
media/codec2/sfplugin/CCodec.cpp +5 −12 Original line number Diff line number Diff line Loading @@ -206,19 +206,12 @@ public: mNode = new C2OMXNode(comp); mOmxNode = new hardware::media::omx::V1_0::utils::TWOmxNode(mNode); mNode->setFrameSize(mWidth, mHeight); // Usage is queried during configure(), so setting it beforehand. // 64 bit set parameter is existing only in C2OMXNode. OMX_U64 usage64 = mConfig.mUsage; status_t res = mNode->setParameter( (OMX_INDEXTYPE)OMX_IndexParamConsumerUsageBits64, &usage64, sizeof(usage64)); if (res != OK) { // Usage is queried during configure(), so setting it beforehand. OMX_U32 usage = mConfig.mUsage & 0xFFFFFFFF; (void)mNode->setParameter( (OMX_INDEXTYPE)OMX_IndexParamConsumerUsageBits, &usage, sizeof(usage)); } return GetStatus(mSource->configure( mOmxNode, static_cast<hardware::graphics::common::V1_0::Dataspace>(mDataSpace))); Loading
media/libstagefright/omx/1.0/WGraphicBufferSource.cpp +3 −20 Original line number Diff line number Diff line Loading @@ -143,7 +143,7 @@ Return<Status> TWGraphicBufferSource::configure( // use consumer usage bits queried from encoder, but always add // HW_VIDEO_ENCODER for backward compatibility. uint64_t consumerUsage; uint32_t consumerUsage; void *_params = &consumerUsage; uint8_t *params = static_cast<uint8_t*>(_params); fnStatus = UNKNOWN_ERROR; Loading @@ -155,32 +155,15 @@ Return<Status> TWGraphicBufferSource::configure( outParams.data() + outParams.size(), params); }); // try 64 bit consumer usage first auto transStatus = omxNode->getParameter( static_cast<uint32_t>(OMX_IndexParamConsumerUsageBits64), inHidlBytes(&consumerUsage, sizeof(consumerUsage)), _hidl_cb); if (!transStatus.isOk()) { return toStatus(FAILED_TRANSACTION); } if (fnStatus != OK) { // try 32 bit consumer usage upon failure uint32_t usage; _params = &usage; params = static_cast<uint8_t*>(_params); transStatus = omxNode->getParameter( static_cast<uint32_t>(OMX_IndexParamConsumerUsageBits), inHidlBytes(&usage, sizeof(usage)), inHidlBytes(&consumerUsage, sizeof(consumerUsage)), _hidl_cb); if (!transStatus.isOk()) { return toStatus(FAILED_TRANSACTION); } if (fnStatus != OK) { consumerUsage = 0; } else { consumerUsage = usage; } } OMX_PARAM_PORTDEFINITIONTYPE def; Loading