author | guosong.zhou <guosong.zhou@amlogic.com> | 2014-12-05 06:55:40 (GMT) |
---|---|---|
committer | guosong.zhou <guosong.zhou@amlogic.com> | 2014-12-05 06:55:40 (GMT) |
commit | 064d0499f8c23c631285dc4baf0c4a6484d7b139 (patch) | |
tree | 19a7fba589ff975515dadffc0ea764db1044f83b | |
parent | 07cd1dde1327afe0f41caeb42aeee8d556755576 (diff) | |
download | camera-064d0499f8c23c631285dc4baf0c4a6484d7b139.zip camera-064d0499f8c23c631285dc4baf0c4a6484d7b139.tar.gz camera-064d0499f8c23c631285dc4baf0c4a6484d7b139.tar.bz2 |
Don't display MJPEG frame when MJPEG decode failed
Change-Id: I1dcc5b27cf94cf570cf4fc859e2a4b6698c0ef79
-rwxr-xr-x | v3/EmulatedFakeCamera3.cpp | 6 | ||||
-rwxr-xr-x | v3/fake-pipeline2/Sensor.cpp | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/v3/EmulatedFakeCamera3.cpp b/v3/EmulatedFakeCamera3.cpp index 4fde128..7ec3335 100755 --- a/v3/EmulatedFakeCamera3.cpp +++ b/v3/EmulatedFakeCamera3.cpp @@ -1838,7 +1838,11 @@ status_t EmulatedFakeCamera3::constructStaticInfo() { } ret = s->getZoom(&mZoomMin, &mZoomMax, &mZoomStep); - if (ret == 0) { + if (ret < 0) { + float maxZoom = 1.0; + info.update(ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM, + &maxZoom, 1); + } else { float maxZoom = mZoomMax / mZoomMin; info.update(ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM, &maxZoom, 1); diff --git a/v3/fake-pipeline2/Sensor.cpp b/v3/fake-pipeline2/Sensor.cpp index b034f4f..37adec2 100755 --- a/v3/fake-pipeline2/Sensor.cpp +++ b/v3/fake-pipeline2/Sensor.cpp @@ -1841,6 +1841,8 @@ void Sensor::captureNV21(StreamBuffer b, uint32_t gain) { if (ConvertMjpegToNV21(src, vinfo->preview.buf.bytesused, b.img, width, b.img + width * height, (width + 1) / 2, width, height, width, height, libyuv::FOURCC_MJPG) != 0) { + putback_frame(vinfo); + continue; DBG_LOGA("Decode MJPEG frame failed\n"); } } else { |