Loading libs/gui/BufferItemConsumer.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ status_t BufferItemConsumer::acquireBuffer(BufferItem *item, } } item->mGraphicBuffer = mSlots[item->mBuf].mGraphicBuffer; item->mGraphicBuffer = mSlots[item->mSlot].mGraphicBuffer; return OK; } Loading @@ -89,9 +89,9 @@ status_t BufferItemConsumer::releaseBuffer(const BufferItem &item, Mutex::Autolock _l(mMutex); err = addReleaseFenceLocked(item.mBuf, item.mGraphicBuffer, releaseFence); err = addReleaseFenceLocked(item.mSlot, item.mGraphicBuffer, releaseFence); err = releaseBufferLocked(item.mBuf, item.mGraphicBuffer, EGL_NO_DISPLAY, err = releaseBufferLocked(item.mSlot, item.mGraphicBuffer, EGL_NO_DISPLAY, EGL_NO_SYNC_KHR); if (err != OK) { BI_LOGE("Failed to release buffer: %s (%d)", Loading libs/gui/ConsumerBase.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -239,14 +239,14 @@ status_t ConsumerBase::acquireBufferLocked(BufferItem *item, } if (item->mGraphicBuffer != NULL) { mSlots[item->mBuf].mGraphicBuffer = item->mGraphicBuffer; mSlots[item->mSlot].mGraphicBuffer = item->mGraphicBuffer; } mSlots[item->mBuf].mFrameNumber = item->mFrameNumber; mSlots[item->mBuf].mFence = item->mFence; mSlots[item->mSlot].mFrameNumber = item->mFrameNumber; mSlots[item->mSlot].mFence = item->mFence; CB_LOGV("acquireBufferLocked: -> slot=%d/%" PRIu64, item->mBuf, item->mFrameNumber); item->mSlot, item->mFrameNumber); return OK; } Loading libs/gui/CpuConsumer.cpp +11 −11 Original line number Diff line number Diff line Loading @@ -106,22 +106,22 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { } } int buf = b.mBuf; int slot = b.mSlot; void *bufferPointer = NULL; android_ycbcr ycbcr = android_ycbcr(); PixelFormat format = mSlots[buf].mGraphicBuffer->getPixelFormat(); PixelFormat format = mSlots[slot].mGraphicBuffer->getPixelFormat(); PixelFormat flexFormat = format; if (isPossiblyYUV(format)) { if (b.mFence.get()) { err = mSlots[buf].mGraphicBuffer->lockAsyncYCbCr( err = mSlots[slot].mGraphicBuffer->lockAsyncYCbCr( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &ycbcr, b.mFence->dup()); } else { err = mSlots[buf].mGraphicBuffer->lockYCbCr( err = mSlots[slot].mGraphicBuffer->lockYCbCr( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &ycbcr); Loading @@ -141,13 +141,13 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { if (bufferPointer == NULL) { // not flexible YUV if (b.mFence.get()) { err = mSlots[buf].mGraphicBuffer->lockAsync( err = mSlots[slot].mGraphicBuffer->lockAsync( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &bufferPointer, b.mFence->dup()); } else { err = mSlots[buf].mGraphicBuffer->lock( err = mSlots[slot].mGraphicBuffer->lock( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &bufferPointer); Loading @@ -169,19 +169,19 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { assert(lockedIdx < mMaxLockedBuffers); AcquiredBuffer &ab = mAcquiredBuffers.editItemAt(lockedIdx); ab.mSlot = buf; ab.mSlot = slot; ab.mBufferPointer = bufferPointer; ab.mGraphicBuffer = mSlots[buf].mGraphicBuffer; ab.mGraphicBuffer = mSlots[slot].mGraphicBuffer; nativeBuffer->data = reinterpret_cast<uint8_t*>(bufferPointer); nativeBuffer->width = mSlots[buf].mGraphicBuffer->getWidth(); nativeBuffer->height = mSlots[buf].mGraphicBuffer->getHeight(); nativeBuffer->width = mSlots[slot].mGraphicBuffer->getWidth(); nativeBuffer->height = mSlots[slot].mGraphicBuffer->getHeight(); nativeBuffer->format = format; nativeBuffer->flexFormat = flexFormat; nativeBuffer->stride = (ycbcr.y != NULL) ? static_cast<uint32_t>(ycbcr.ystride) : mSlots[buf].mGraphicBuffer->getStride(); mSlots[slot].mGraphicBuffer->getStride(); nativeBuffer->crop = b.mCrop; nativeBuffer->transform = b.mTransform; Loading libs/gui/GLConsumer.cpp +11 −11 Original line number Diff line number Diff line Loading @@ -357,7 +357,7 @@ status_t GLConsumer::acquireBufferLocked(BufferItem *item, // before, so any prior EglImage created is using a stale buffer. This // replaces any old EglImage with a new one (using the new buffer). if (item->mGraphicBuffer != NULL) { int slot = item->mBuf; int slot = item->mSlot; mEglSlots[slot].mEglImage = new EglImage(item->mGraphicBuffer); } Loading @@ -381,12 +381,12 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) { status_t err = NO_ERROR; int buf = item.mBuf; int slot = item.mSlot; if (!mAttached) { GLC_LOGE("updateAndRelease: GLConsumer is not attached to an OpenGL " "ES context"); releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return INVALID_OPERATION; } Loading @@ -394,7 +394,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // Confirm state. err = checkAndUpdateEglStateLocked(); if (err != NO_ERROR) { releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return err; } Loading @@ -404,11 +404,11 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // ConsumerBase. // We may have to do this even when item.mGraphicBuffer == NULL (which // means the buffer was previously acquired). err = mEglSlots[buf].mEglImage->createIfNeeded(mEglDisplay, item.mCrop); err = mEglSlots[slot].mEglImage->createIfNeeded(mEglDisplay, item.mCrop); if (err != NO_ERROR) { GLC_LOGW("updateAndRelease: unable to createImage on display=%p slot=%d", mEglDisplay, buf); releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, mEglDisplay, slot); releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return UNKNOWN_ERROR; } Loading @@ -420,7 +420,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // release the old buffer, so instead we just drop the new frame. // As we are still under lock since acquireBuffer, it is safe to // release by slot. releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return err; } Loading @@ -428,7 +428,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) GLC_LOGV("updateAndRelease: (slot=%d buf=%p) -> (slot=%d buf=%p)", mCurrentTexture, mCurrentTextureImage != NULL ? mCurrentTextureImage->graphicBufferHandle() : 0, buf, mSlots[buf].mGraphicBuffer->handle); slot, mSlots[slot].mGraphicBuffer->handle); // release old buffer if (mCurrentTexture != BufferQueue::INVALID_BUFFER_SLOT) { Loading @@ -444,8 +444,8 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) } // Update the GLConsumer state. mCurrentTexture = buf; mCurrentTextureImage = mEglSlots[buf].mEglImage; mCurrentTexture = slot; mCurrentTextureImage = mEglSlots[slot].mEglImage; mCurrentCrop = item.mCrop; mCurrentTransform = item.mTransform; mCurrentScalingMode = item.mScalingMode; Loading libs/gui/StreamSplitter.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -132,7 +132,7 @@ void StreamSplitter::onFrameAvailable(const BufferItem& /* item */) { ALOGV("acquired buffer %#" PRIx64 " from input", bufferItem.mGraphicBuffer->getId()); status = mInput->detachBuffer(bufferItem.mBuf); status = mInput->detachBuffer(bufferItem.mSlot); LOG_ALWAYS_FATAL_IF(status != NO_ERROR, "detaching buffer from input failed (%d)", status); Loading Loading
libs/gui/BufferItemConsumer.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ status_t BufferItemConsumer::acquireBuffer(BufferItem *item, } } item->mGraphicBuffer = mSlots[item->mBuf].mGraphicBuffer; item->mGraphicBuffer = mSlots[item->mSlot].mGraphicBuffer; return OK; } Loading @@ -89,9 +89,9 @@ status_t BufferItemConsumer::releaseBuffer(const BufferItem &item, Mutex::Autolock _l(mMutex); err = addReleaseFenceLocked(item.mBuf, item.mGraphicBuffer, releaseFence); err = addReleaseFenceLocked(item.mSlot, item.mGraphicBuffer, releaseFence); err = releaseBufferLocked(item.mBuf, item.mGraphicBuffer, EGL_NO_DISPLAY, err = releaseBufferLocked(item.mSlot, item.mGraphicBuffer, EGL_NO_DISPLAY, EGL_NO_SYNC_KHR); if (err != OK) { BI_LOGE("Failed to release buffer: %s (%d)", Loading
libs/gui/ConsumerBase.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -239,14 +239,14 @@ status_t ConsumerBase::acquireBufferLocked(BufferItem *item, } if (item->mGraphicBuffer != NULL) { mSlots[item->mBuf].mGraphicBuffer = item->mGraphicBuffer; mSlots[item->mSlot].mGraphicBuffer = item->mGraphicBuffer; } mSlots[item->mBuf].mFrameNumber = item->mFrameNumber; mSlots[item->mBuf].mFence = item->mFence; mSlots[item->mSlot].mFrameNumber = item->mFrameNumber; mSlots[item->mSlot].mFence = item->mFence; CB_LOGV("acquireBufferLocked: -> slot=%d/%" PRIu64, item->mBuf, item->mFrameNumber); item->mSlot, item->mFrameNumber); return OK; } Loading
libs/gui/CpuConsumer.cpp +11 −11 Original line number Diff line number Diff line Loading @@ -106,22 +106,22 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { } } int buf = b.mBuf; int slot = b.mSlot; void *bufferPointer = NULL; android_ycbcr ycbcr = android_ycbcr(); PixelFormat format = mSlots[buf].mGraphicBuffer->getPixelFormat(); PixelFormat format = mSlots[slot].mGraphicBuffer->getPixelFormat(); PixelFormat flexFormat = format; if (isPossiblyYUV(format)) { if (b.mFence.get()) { err = mSlots[buf].mGraphicBuffer->lockAsyncYCbCr( err = mSlots[slot].mGraphicBuffer->lockAsyncYCbCr( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &ycbcr, b.mFence->dup()); } else { err = mSlots[buf].mGraphicBuffer->lockYCbCr( err = mSlots[slot].mGraphicBuffer->lockYCbCr( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &ycbcr); Loading @@ -141,13 +141,13 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { if (bufferPointer == NULL) { // not flexible YUV if (b.mFence.get()) { err = mSlots[buf].mGraphicBuffer->lockAsync( err = mSlots[slot].mGraphicBuffer->lockAsync( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &bufferPointer, b.mFence->dup()); } else { err = mSlots[buf].mGraphicBuffer->lock( err = mSlots[slot].mGraphicBuffer->lock( GraphicBuffer::USAGE_SW_READ_OFTEN, b.mCrop, &bufferPointer); Loading @@ -169,19 +169,19 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) { assert(lockedIdx < mMaxLockedBuffers); AcquiredBuffer &ab = mAcquiredBuffers.editItemAt(lockedIdx); ab.mSlot = buf; ab.mSlot = slot; ab.mBufferPointer = bufferPointer; ab.mGraphicBuffer = mSlots[buf].mGraphicBuffer; ab.mGraphicBuffer = mSlots[slot].mGraphicBuffer; nativeBuffer->data = reinterpret_cast<uint8_t*>(bufferPointer); nativeBuffer->width = mSlots[buf].mGraphicBuffer->getWidth(); nativeBuffer->height = mSlots[buf].mGraphicBuffer->getHeight(); nativeBuffer->width = mSlots[slot].mGraphicBuffer->getWidth(); nativeBuffer->height = mSlots[slot].mGraphicBuffer->getHeight(); nativeBuffer->format = format; nativeBuffer->flexFormat = flexFormat; nativeBuffer->stride = (ycbcr.y != NULL) ? static_cast<uint32_t>(ycbcr.ystride) : mSlots[buf].mGraphicBuffer->getStride(); mSlots[slot].mGraphicBuffer->getStride(); nativeBuffer->crop = b.mCrop; nativeBuffer->transform = b.mTransform; Loading
libs/gui/GLConsumer.cpp +11 −11 Original line number Diff line number Diff line Loading @@ -357,7 +357,7 @@ status_t GLConsumer::acquireBufferLocked(BufferItem *item, // before, so any prior EglImage created is using a stale buffer. This // replaces any old EglImage with a new one (using the new buffer). if (item->mGraphicBuffer != NULL) { int slot = item->mBuf; int slot = item->mSlot; mEglSlots[slot].mEglImage = new EglImage(item->mGraphicBuffer); } Loading @@ -381,12 +381,12 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) { status_t err = NO_ERROR; int buf = item.mBuf; int slot = item.mSlot; if (!mAttached) { GLC_LOGE("updateAndRelease: GLConsumer is not attached to an OpenGL " "ES context"); releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return INVALID_OPERATION; } Loading @@ -394,7 +394,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // Confirm state. err = checkAndUpdateEglStateLocked(); if (err != NO_ERROR) { releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return err; } Loading @@ -404,11 +404,11 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // ConsumerBase. // We may have to do this even when item.mGraphicBuffer == NULL (which // means the buffer was previously acquired). err = mEglSlots[buf].mEglImage->createIfNeeded(mEglDisplay, item.mCrop); err = mEglSlots[slot].mEglImage->createIfNeeded(mEglDisplay, item.mCrop); if (err != NO_ERROR) { GLC_LOGW("updateAndRelease: unable to createImage on display=%p slot=%d", mEglDisplay, buf); releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, mEglDisplay, slot); releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return UNKNOWN_ERROR; } Loading @@ -420,7 +420,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) // release the old buffer, so instead we just drop the new frame. // As we are still under lock since acquireBuffer, it is safe to // release by slot. releaseBufferLocked(buf, mSlots[buf].mGraphicBuffer, releaseBufferLocked(slot, mSlots[slot].mGraphicBuffer, mEglDisplay, EGL_NO_SYNC_KHR); return err; } Loading @@ -428,7 +428,7 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) GLC_LOGV("updateAndRelease: (slot=%d buf=%p) -> (slot=%d buf=%p)", mCurrentTexture, mCurrentTextureImage != NULL ? mCurrentTextureImage->graphicBufferHandle() : 0, buf, mSlots[buf].mGraphicBuffer->handle); slot, mSlots[slot].mGraphicBuffer->handle); // release old buffer if (mCurrentTexture != BufferQueue::INVALID_BUFFER_SLOT) { Loading @@ -444,8 +444,8 @@ status_t GLConsumer::updateAndReleaseLocked(const BufferItem& item) } // Update the GLConsumer state. mCurrentTexture = buf; mCurrentTextureImage = mEglSlots[buf].mEglImage; mCurrentTexture = slot; mCurrentTextureImage = mEglSlots[slot].mEglImage; mCurrentCrop = item.mCrop; mCurrentTransform = item.mTransform; mCurrentScalingMode = item.mScalingMode; Loading
libs/gui/StreamSplitter.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -132,7 +132,7 @@ void StreamSplitter::onFrameAvailable(const BufferItem& /* item */) { ALOGV("acquired buffer %#" PRIx64 " from input", bufferItem.mGraphicBuffer->getId()); status = mInput->detachBuffer(bufferItem.mBuf); status = mInput->detachBuffer(bufferItem.mSlot); LOG_ALWAYS_FATAL_IF(status != NO_ERROR, "detaching buffer from input failed (%d)", status); Loading