From 2edb34a53f8006cf2030956861b05e8e67673fdb Mon Sep 17 00:00:00 2001 From: Jay Wang Date: Wed, 24 Aug 2016 17:53:16 -0700 Subject: SnapdragonCamera: Ensure smooth quit during cs processing Ensure a smooth quit transition during Clearsight processing. Move image reader/writer disposal to after handler quit. Don't toast Clearsight success/fail until after all tasks are complete. CRs-Fixed: 1058833 Change-Id: I6cf6733051d1947ea65a003b9bacb9d575c6ef67 --- .../snapcam/filter/ClearSightImageProcessor.java | 106 ++++++++++++++------- 1 file changed, 71 insertions(+), 35 deletions(-) (limited to 'src/org') diff --git a/src/org/codeaurora/snapcam/filter/ClearSightImageProcessor.java b/src/org/codeaurora/snapcam/filter/ClearSightImageProcessor.java index 0633b0c56..a968e3bc6 100644 --- a/src/org/codeaurora/snapcam/filter/ClearSightImageProcessor.java +++ b/src/org/codeaurora/snapcam/filter/ClearSightImageProcessor.java @@ -141,6 +141,7 @@ public class ClearSightImageProcessor { private int mNumFrameCount; private boolean mDumpImages; private boolean mDumpYUV; + private boolean mIsClosing; private static ClearSightImageProcessor mInstance; @@ -179,6 +180,8 @@ public class ClearSightImageProcessor { public void init(StreamConfigurationMap map, int width, int height, Context context, OnMediaSavedListener mediaListener) { + Log.d(TAG, "init() start"); + mIsClosing = false; mImageProcessThread = new HandlerThread("CameraImageProcess"); mImageProcessThread.start(); mClearsightRegisterThread = new HandlerThread("ClearsightRegister"); @@ -214,26 +217,17 @@ public class ClearSightImageProcessor { } catch (CameraAccessException e) { e.printStackTrace(); } + Log.d(TAG, "init() done"); } public void close() { - for(int i=0; i