/// <returns> true, If device supports required feature. </returns> private bool checkRequiredFeatures() { try { mCameraId = null; foreach (string id in mSCamera.SCameraManager.CameraIdList) { SCameraCharacteristics cameraCharacteristics = mSCamera.SCameraManager.getCameraCharacteristics(id); if (cameraCharacteristics.get(SCameraCharacteristics.LENS_FACING) == SCameraCharacteristics.LENS_FACING_BACK) { mCameraId = id; break; } } if (null == mCameraId) { showAlertDialog("No back-facing camera exist.", true); return(false); } SCameraCharacteristics cameraCharacteristics = mSCamera.SCameraManager.getCameraCharacteristics(mCameraId); if (!contains(cameraCharacteristics.get(SCameraCharacteristics.CONTROL_AF_AVAILABLE_MODES), SCameraCharacteristics.CONTROL_AF_MODE_CONTINUOUS_PICTURE)) { showAlertDialog("Required AF mode is not supported.", true); return(false); } if (!mSCamera.isFeatureEnabled(SCamera.SCAMERA_PROCESSOR)) { showAlertDialog("This device does not support SCamera Processor feature.", true); return(false); } SCameraProcessorManager processorManager = mSCamera.SCameraProcessorManager; if (!processorManager.isProcessorAvailable(SCameraProcessorManager.PROCESSOR_TYPE_PANORAMA)) { showAlertDialog("This device does not support Panorama Processor.", true); return(false); } } catch (CameraAccessException e) { showAlertDialog("Cannot access the camera.", true); Log.e(TAG, "Cannot access the camera.", e); return(false); } return(true); }
/// <summary> /// Create <seealso cref="com.samsung.android.sdk.camera.processor.SCameraPanoramaProcessor"/>. /// </summary> private void createProcessor() { SCameraProcessorManager processorManager = mSCamera.SCameraProcessorManager; mProcessor = processorManager.createProcessor(SCameraProcessorManager.PROCESSOR_TYPE_PANORAMA); }