docs: protected boolean changeCameraConfiguration() {
  		Log.i(TAG,"CameraCaptureSession.changeCameraConfiguration()");
  		if (Looper.getMainLooper().getThread() != Thread.currentThread()) {
  			throw new RuntimeException("Not on main looper! Modify code to remove assumptions");
  		}
  		if (null == open.mCameraDevice || null == open.mCameraSize) {
  			Log.i(TAG,"  aborting changeCameraConfiguration. Camera not open yet.");
  			return false;
  		}
  
  		try {
  			open.mLock.lock();
  			// configuration change still in progress
  			if( null == mPreviewSession ) {
  				Log.i(TAG," Abort camera configuration change. Not ready yet");
  				return false;
  			}
  			createCaptureSession();
  		} catch (CameraAccessException e) {
  			e.printStackTrace();
  		} finally {
  			open.mLock.unlock();
  		}
  		return true;
  	}