From f2ae75ddc535e8ecb253d0b657e597c227057838 Mon Sep 17 00:00:00 2001 From: Michael Gonzalez Date: Tue, 8 Oct 2019 14:30:32 -0700 Subject: [PATCH] Camera: Heic: Wait for output TS before dequeuing output buffers During testHeicExif, the codec output buffer timestamp may rarely arrive after the first codec output tiles arrive. Test: vendor testing Bug: 141169323 Change-Id: Iba1c82b087533cb87a32d69f7d6908e2c925b807 Merged-In: Iba1c82b087533cb87a32d69f7d6908e2c925b807 (cherry picked from commit 5c103f2962cd41a948dca4f2156c6efdf506bef1) --- services/camera/libcameraservice/api2/HeicCompositeStream.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/camera/libcameraservice/api2/HeicCompositeStream.cpp b/services/camera/libcameraservice/api2/HeicCompositeStream.cpp index dc46285af6..9f15be02f7 100644 --- a/services/camera/libcameraservice/api2/HeicCompositeStream.cpp +++ b/services/camera/libcameraservice/api2/HeicCompositeStream.cpp @@ -597,7 +597,8 @@ void HeicCompositeStream::compilePendingInputLocked() { // to look up timestamp. int64_t bufferTime = -1; if (mCodecOutputBufferTimestamps.empty()) { - ALOGE("%s: Failed to find buffer timestamp for codec output buffer!", __FUNCTION__); + ALOGV("%s: Failed to find buffer timestamp for codec output buffer!", __FUNCTION__); + break; } else { // Direct mapping between camera timestamp (in ns) and codec timestamp (in us). bufferTime = mCodecOutputBufferTimestamps.front();