Loading media/libstagefright/include/OMXNodeInstance.h +2 −1 Original line number Diff line number Diff line Loading @@ -157,8 +157,9 @@ private: KeyedVector<OMX::buffer_id, OMX_BUFFERHEADERTYPE *> mBufferIDToBufferHeader; KeyedVector<OMX_BUFFERHEADERTYPE *, OMX::buffer_id> mBufferHeaderToBufferID; // metadata mode tracking // metadata and graphic buffer mode tracking bool mUsingMetadata[2]; bool mGraphicBufferEnabled[2]; // For debug support char *mName; Loading media/libstagefright/omx/OMXNodeInstance.cpp +19 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,8 @@ OMXNodeInstance::OMXNodeInstance( mDebugLevelBumpPendingBuffers[1] = 0; mUsingMetadata[0] = false; mUsingMetadata[1] = false; mGraphicBufferEnabled[0] = false; mGraphicBufferEnabled[1] = false; mIsSecure = AString(name).endsWith(".secure"); } Loading Loading @@ -542,6 +544,11 @@ status_t OMXNodeInstance::enableGraphicBuffers( err = OMX_SetParameter(mHandle, index, ¶ms); CLOG_IF_ERROR(setParameter, err, "%s(%#x): %s:%u en=%d", name, index, portString(portIndex), portIndex, enable); if (err == OMX_ErrorNone) { mGraphicBufferEnabled[portIndex] = enable; } else if (enable) { mGraphicBufferEnabled[portIndex] = false; } return StatusFromOMXError(err); } Loading Loading @@ -746,6 +753,12 @@ status_t OMXNodeInstance::useBuffer( return BAD_VALUE; } if (!mUsingMetadata[portIndex] && mGraphicBufferEnabled[portIndex]) { ALOGE("b/62948670"); android_errorWriteLog(0x534e4554, "62948670"); return INVALID_OPERATION; } // metadata buffers are not connected cross process BufferMeta *buffer_meta; bool isMeta = mUsingMetadata[portIndex]; Loading Loading @@ -855,6 +868,12 @@ status_t OMXNodeInstance::useGraphicBuffer( OMX_U32 portIndex, const sp<GraphicBuffer>& graphicBuffer, OMX::buffer_id *buffer) { Mutex::Autolock autoLock(mLock); if (!mGraphicBufferEnabled[portIndex] || mUsingMetadata[portIndex]) { // Report error if this is not in graphic buffer mode. ALOGE("b/62948670"); android_errorWriteLog(0x534e4554, "62948670"); return INVALID_OPERATION; } // See if the newer version of the extension is present. OMX_INDEXTYPE index; Loading Loading
media/libstagefright/include/OMXNodeInstance.h +2 −1 Original line number Diff line number Diff line Loading @@ -157,8 +157,9 @@ private: KeyedVector<OMX::buffer_id, OMX_BUFFERHEADERTYPE *> mBufferIDToBufferHeader; KeyedVector<OMX_BUFFERHEADERTYPE *, OMX::buffer_id> mBufferHeaderToBufferID; // metadata mode tracking // metadata and graphic buffer mode tracking bool mUsingMetadata[2]; bool mGraphicBufferEnabled[2]; // For debug support char *mName; Loading
media/libstagefright/omx/OMXNodeInstance.cpp +19 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,8 @@ OMXNodeInstance::OMXNodeInstance( mDebugLevelBumpPendingBuffers[1] = 0; mUsingMetadata[0] = false; mUsingMetadata[1] = false; mGraphicBufferEnabled[0] = false; mGraphicBufferEnabled[1] = false; mIsSecure = AString(name).endsWith(".secure"); } Loading Loading @@ -542,6 +544,11 @@ status_t OMXNodeInstance::enableGraphicBuffers( err = OMX_SetParameter(mHandle, index, ¶ms); CLOG_IF_ERROR(setParameter, err, "%s(%#x): %s:%u en=%d", name, index, portString(portIndex), portIndex, enable); if (err == OMX_ErrorNone) { mGraphicBufferEnabled[portIndex] = enable; } else if (enable) { mGraphicBufferEnabled[portIndex] = false; } return StatusFromOMXError(err); } Loading Loading @@ -746,6 +753,12 @@ status_t OMXNodeInstance::useBuffer( return BAD_VALUE; } if (!mUsingMetadata[portIndex] && mGraphicBufferEnabled[portIndex]) { ALOGE("b/62948670"); android_errorWriteLog(0x534e4554, "62948670"); return INVALID_OPERATION; } // metadata buffers are not connected cross process BufferMeta *buffer_meta; bool isMeta = mUsingMetadata[portIndex]; Loading Loading @@ -855,6 +868,12 @@ status_t OMXNodeInstance::useGraphicBuffer( OMX_U32 portIndex, const sp<GraphicBuffer>& graphicBuffer, OMX::buffer_id *buffer) { Mutex::Autolock autoLock(mLock); if (!mGraphicBufferEnabled[portIndex] || mUsingMetadata[portIndex]) { // Report error if this is not in graphic buffer mode. ALOGE("b/62948670"); android_errorWriteLog(0x534e4554, "62948670"); return INVALID_OPERATION; } // See if the newer version of the extension is present. OMX_INDEXTYPE index; Loading