Loading media/jni/android_media_MediaCodecLinearBlock.h +8 −1 Original line number Diff line number Diff line Loading @@ -49,7 +49,14 @@ struct JMediaCodecLinearBlock { if (offset == 0 && size == block.capacity()) { return mBuffer; } return C2Buffer::CreateLinearBuffer(block.subBlock(offset, size)); std::shared_ptr<C2Buffer> buffer = C2Buffer::CreateLinearBuffer(block.subBlock(offset, size)); for (const std::shared_ptr<const C2Info> &info : mBuffer->info()) { std::shared_ptr<C2Param> param = std::move(C2Param::Copy(*info)); buffer->setInfo(std::static_pointer_cast<C2Info>(param)); } return buffer; } if (mBlock) { return C2Buffer::CreateLinearBuffer(mBlock->share(offset, size, C2Fence{})); Loading Loading
media/jni/android_media_MediaCodecLinearBlock.h +8 −1 Original line number Diff line number Diff line Loading @@ -49,7 +49,14 @@ struct JMediaCodecLinearBlock { if (offset == 0 && size == block.capacity()) { return mBuffer; } return C2Buffer::CreateLinearBuffer(block.subBlock(offset, size)); std::shared_ptr<C2Buffer> buffer = C2Buffer::CreateLinearBuffer(block.subBlock(offset, size)); for (const std::shared_ptr<const C2Info> &info : mBuffer->info()) { std::shared_ptr<C2Param> param = std::move(C2Param::Copy(*info)); buffer->setInfo(std::static_pointer_cast<C2Info>(param)); } return buffer; } if (mBlock) { return C2Buffer::CreateLinearBuffer(mBlock->share(offset, size, C2Fence{})); Loading