Camera: hook up frame replaced callback for stream splitter

Test: partner provided test APK
Bug: 136777506
Change-Id: I75641c1d87672fe6ec3af5726d1f1c90356984f7
gugelfrei
Yin-Chia Yeh 5 years ago
parent c2f08b866c
commit da208450df

@ -496,7 +496,7 @@ void Camera3StreamSplitter::onFrameAvailable(const BufferItem& /*item*/) {
mInputSlots[bufferItem.mSlot].mFrameNumber = bufferItem.mFrameNumber;
} else {
SP_LOGE("%s: Invalid input graphic buffer!", __FUNCTION__);
res = BAD_VALUE;
mOnFrameAvailableRes.store(BAD_VALUE);
return;
}
bufferId = bufferItem.mGraphicBuffer->getId();
@ -541,6 +541,11 @@ void Camera3StreamSplitter::onFrameAvailable(const BufferItem& /*item*/) {
mOnFrameAvailableRes.store(res);
}
void Camera3StreamSplitter::onFrameReplaced(const BufferItem& item) {
ATRACE_CALL();
onFrameAvailable(item);
}
void Camera3StreamSplitter::decrementBufRefCountLocked(uint64_t id, size_t surfaceId) {
ATRACE_CALL();

@ -101,6 +101,13 @@ private:
// input.
void onFrameAvailable(const BufferItem& item) override;
// From IConsumerListener
//
// Similar to onFrameAvailable, but buffer item is indeed replacing a buffer
// in the buffer queue. This can happen when buffer queue is in droppable
// mode.
void onFrameReplaced(const BufferItem& item) override;
// From IConsumerListener
// We don't care about released buffers because we detach each buffer as
// soon as we acquire it. See the comment for onBufferReleased below for

Loading…
Cancel
Save