From 2dc9bc1f87be40c2e4903b97a3df353d0f7c6781 Mon Sep 17 00:00:00 2001 From: Emilian Peev Date: Mon, 23 Apr 2012 12:21:57 +0300 Subject: CameraHal: Fix for YV12 camera callbacks - 'mPreviewPixelFormat' was being set incorrectly for YV12 case. Bug: 6325348 Change-Id: I80acc5cd721d317fac9525bdb734fe2e70df85bf Signed-off-by: Emilian Peev --- camera/AppCallbackNotifier.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'camera') diff --git a/camera/AppCallbackNotifier.cpp b/camera/AppCallbackNotifier.cpp index aa41141..63ed000 100644 --- a/camera/AppCallbackNotifier.cpp +++ b/camera/AppCallbackNotifier.cpp @@ -468,7 +468,7 @@ static void copy2Dto1D(void *dst, unsigned int *y_uv = (unsigned int *)src; CAMHAL_LOGVB("copy2Dto1D() y= %p ; uv=%p.",y_uv[0], y_uv[1]); - CAMHAL_LOGVB("pixelFormat,= %d; offset=%d",*pixelFormat,offset); + CAMHAL_LOGVB("pixelFormat= %s; offset=%d", pixelFormat,offset); if (pixelFormat!=NULL) { if (strcmp(pixelFormat, CameraParameters::PIXEL_FORMAT_YUV422I) == 0) { @@ -1403,8 +1403,7 @@ status_t AppCallbackNotifier::startPreviewCallbacks(CameraParameters ¶ms, vo size = w*h*2; mPreviewPixelFormat = CameraParameters::PIXEL_FORMAT_YUV422I; } - else if(strcmp(mPreviewPixelFormat, (const char *) CameraParameters::PIXEL_FORMAT_YUV420SP) == 0 || - strcmp(mPreviewPixelFormat, (const char *) CameraParameters::PIXEL_FORMAT_YUV420P) == 0) + else if(strcmp(mPreviewPixelFormat, (const char *) CameraParameters::PIXEL_FORMAT_YUV420SP) == 0 ) { size = (w*h*3)/2; mPreviewPixelFormat = CameraParameters::PIXEL_FORMAT_YUV420SP; @@ -1414,6 +1413,11 @@ status_t AppCallbackNotifier::startPreviewCallbacks(CameraParameters ¶ms, vo size = w*h*2; mPreviewPixelFormat = CameraParameters::PIXEL_FORMAT_RGB565; } + else if(strcmp(mPreviewPixelFormat, (const char *) CameraParameters::PIXEL_FORMAT_YUV420P) == 0) + { + size = (w*h*3)/2; + mPreviewPixelFormat = CameraParameters::PIXEL_FORMAT_YUV420P; + } mPreviewMemory = mRequestMemory(-1, size, AppCallbackNotifier::MAX_BUFFERS, NULL); if (!mPreviewMemory) { -- cgit v1.2.3