Java Code Examples for android.hardware.camera2.CameraAccessException#printStackTrace()
The following examples show how to use
android.hardware.camera2.CameraAccessException#printStackTrace() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: MainActivity.java From Android-9-Development-Cookbook with MIT License | 7 votes |
private String getCameraId() { try { String[] ids = mCameraManager.getCameraIdList(); for (String id : ids) { CameraCharacteristics c = mCameraManager.getCameraCharacteristics(id); Boolean flashAvailable = c.get(CameraCharacteristics.FLASH_INFO_AVAILABLE); Integer facingDirection = c.get(CameraCharacteristics.LENS_FACING); if (flashAvailable != null && flashAvailable && facingDirection != null && facingDirection == CameraCharacteristics.LENS_FACING_BACK) { return id; } } } catch (CameraAccessException e) { e.printStackTrace(); } return null; }
Example 2
Source File: CameraFragment.java From io2015-codelabs with Apache License 2.0 | 6 votes |
/** * Lock the focus as the first step for a still image capture. */ private void lockFocus() { Log.d(TAG, "lockFocus: "); try { // This is how to tell the camera to lock focus. mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START); // Tell #mCaptureCallback to wait for the lock. mState = STATE_WAITING_LOCK; mCaptureSession.setRepeatingRequest(mPreviewRequestBuilder.build(), mCaptureCallback, mBackgroundHandler); } catch (CameraAccessException e) { Log.e(TAG, "CameraAccessException: " + e); e.printStackTrace(); } }
Example 3
Source File: CameraActivity.java From Chinese-number-gestures-recognition with BSD 2-Clause "Simplified" License | 6 votes |
/** * 拍照 */ @SuppressLint("NewApi") private void takePicture() { if (mCameraDevice == null) return; // 创建拍照需要的CaptureRequest.Builder final CaptureRequest.Builder captureRequestBuilder; try { captureRequestBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); // 将imageReader的surface作为CaptureRequest.Builder的目标 captureRequestBuilder.addTarget(mImageReader.getSurface()); // 自动对焦 captureRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); // 自动曝光 captureRequestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH); // 获取手机方向 int rotation = getWindowManager().getDefaultDisplay().getRotation(); // 根据设备方向计算设置照片的方向 captureRequestBuilder.set(CaptureRequest.JPEG_ORIENTATION, ORIENTATIONS.get(rotation)); //拍照 CaptureRequest mCaptureRequest = captureRequestBuilder.build(); mCameraCaptureSession.capture(mCaptureRequest, null, childHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 4
Source File: CameraHelp2.java From WeiXinRecordedDemo with MIT License | 6 votes |
public void shotPhoto(){ try { CaptureRequest.Builder captureRequestBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureRequestBuilder.addTarget(mImageReader.getSurface()); // 自动对焦 captureRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); // 自动曝光 captureRequestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH); captureRequestBuilder.set(CaptureRequest.JPEG_ORIENTATION, mOrientation); CaptureRequest captureRequest = captureRequestBuilder.build(); mCameraCaptureSession.capture(captureRequest, null, mHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 5
Source File: MainActivity.java From Android-9-Development-Cookbook with MIT License | 6 votes |
private String getCameraId() { try { String[] ids = mCameraManager.getCameraIdList(); for (String id : ids) { CameraCharacteristics c = mCameraManager.getCameraCharacteristics(id); Boolean flashAvailable = c.get(CameraCharacteristics.FLASH_INFO_AVAILABLE); Integer facingDirection = c.get(CameraCharacteristics.LENS_FACING); if (flashAvailable != null && flashAvailable && facingDirection != null && facingDirection == CameraCharacteristics.LENS_FACING_BACK) { return id; } } } catch (CameraAccessException e) { e.printStackTrace(); } return null; }
Example 6
Source File: CameraPluginActivity.java From unity-android-native-camera with MIT License | 5 votes |
private String getCamera(CameraManager manager) { try { for (String cameraId : manager.getCameraIdList()) { CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId); int cameraOrientation = characteristics.get(CameraCharacteristics.LENS_FACING); if (cameraOrientation == CameraCharacteristics.LENS_FACING_BACK) { return cameraId; } } } catch (CameraAccessException e) { e.printStackTrace(); } return null; }
Example 7
Source File: Camera2Source.java From Machine-Learning-Projects-for-Mobile-Applications with MIT License | 5 votes |
/** * Run the precapture sequence for capturing a still image. This method should be called when * we get a response in {@link #mCaptureCallback} from {@link #lockFocus()}. */ private void runPrecaptureSequence() { try { // This is how to tell the camera to trigger. mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_PRECAPTURE_TRIGGER, CaptureRequest.CONTROL_AE_PRECAPTURE_TRIGGER_START); // Tell #mCaptureCallback to wait for the precapture sequence to be set. mState = STATE_WAITING_PRECAPTURE; mCaptureSession.capture(mPreviewRequestBuilder.build(), mCaptureCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 8
Source File: Camera2Proxy.java From CameraDemo with Apache License 2.0 | 5 votes |
public void startPreview() { Log.v(TAG, "startPreview"); if (mCaptureSession == null || mPreviewRequestBuilder == null) { Log.w(TAG, "startPreview: mCaptureSession or mPreviewRequestBuilder is null"); return; } try { // 开始预览,即一直发送预览的请求 mCaptureSession.setRepeatingRequest(mPreviewRequest, null, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 9
Source File: CustomVideoCapturerCamera2.java From opentok-android-sdk-samples with MIT License | 5 votes |
@Override public synchronized void cycleCamera() { try { String[] camLst = cameraManager.getCameraIdList(); swapCamera((cameraIndex + 1) % camLst.length); } catch (CameraAccessException e) { e.printStackTrace(); throw new Camera2Exception(e.getMessage()); } }
Example 10
Source File: AutoStrategy.java From CameraDemo with Apache License 2.0 | 5 votes |
@SuppressLint("NewApi") @Override public void setCaptureRequest(CaptureRequest.Builder requestBuilder, CameraCaptureSession cameraCaptureSession, Handler handler) { requestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH); requestBuilder.set(CaptureRequest.FLASH_MODE, CaptureRequest.FLASH_MODE_OFF); try { cameraCaptureSession.setRepeatingRequest(requestBuilder.build(),null,handler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 11
Source File: CameraTexture2.java From PHONK with GNU General Public License v3.0 | 5 votes |
public void qq() { mPreviewRequestBuilder.set(CaptureRequest.CONTROL_EFFECT_MODE, CaptureResult.CONTROL_EFFECT_MODE_MONO); mPreviewRequest = mPreviewRequestBuilder.build(); try { mCaptureSession.setRepeatingRequest(mPreviewRequest, mCaptureCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 12
Source File: LollipopCamera.java From LiveMultimedia with Apache License 2.0 | 5 votes |
/************************************************************************************ * Capture a still picture. This method should be called when we get a response in * {@link #mCaptureCallback} from both {@link #lockFocus()}. ************************************************************************************/ @TargetApi(Build.VERSION_CODES.LOLLIPOP) private void captureStillPicture() { try { if (null == mActivity || null == mCameraDevice) { return; } // This is the CaptureRequest.Builder that we use to take a picture. final CaptureRequest.Builder captureBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureBuilder.addTarget(mImageReader.getSurface()); // Use the same AE and AF modes as the preview. captureBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); captureBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH); // Orientation int rotation = mActivity.getWindowManager().getDefaultDisplay().getRotation(); captureBuilder.set(CaptureRequest.JPEG_ORIENTATION, ORIENTATIONS.get(rotation)); CameraCaptureSession.CaptureCallback CaptureCallback = new CameraCaptureSession.CaptureCallback() { @Override public void onCaptureCompleted(CameraCaptureSession session, CaptureRequest request, TotalCaptureResult result) { showToast("Saved: " + mFile); unlockFocus(); } }; mCaptureSession.stopRepeating(); mCaptureSession.capture(captureBuilder.build(), CaptureCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 13
Source File: Camera2Proxy.java From mobile-ar-sensor-logger with GNU General Public License v3.0 | 5 votes |
public void startPreview() { Log.v(TAG, "startPreview"); if (mCaptureSession == null || mPreviewRequestBuilder == null) { Log.w(TAG, "startPreview: mCaptureSession or mPreviewRequestBuilder is null"); return; } try { mCaptureSession.setRepeatingRequest( mPreviewRequest, mSessionCaptureCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 14
Source File: Camera2VideoFragment.java From android-Camera2Video with Apache License 2.0 | 5 votes |
/** * Update the camera preview. {@link #startPreview()} needs to be called in advance. */ private void updatePreview() { if (null == mCameraDevice) { return; } try { setUpCaptureRequestBuilder(mPreviewBuilder); HandlerThread thread = new HandlerThread("CameraPreview"); thread.start(); mPreviewSession.setRepeatingRequest(mPreviewBuilder.build(), null, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 15
Source File: Camera2Fragment.java From Camera2-Video with Apache License 2.0 | 5 votes |
private void startPreview() { if (mCameraDevice == null || !mCameraLayout.isAvailable() || mPreviewSize == null) { return; } try { setUpMediaRecorder(); mCameraDevice.createCaptureSession(getSurfaces(), mSessionCallback, mBackgroundHandler); } catch (CameraAccessException cae) { cae.printStackTrace(); mCamera2Listener.onCameraException(cae); } catch (IOException ioe) { ioe.printStackTrace(); mCamera2Listener.onIOException(ioe); } }
Example 16
Source File: Camera2Input.java From EZFilter with MIT License | 5 votes |
@Override public void onConfigured(CameraCaptureSession session) { mCameraCaptureSession = session; try { // 自动对焦 mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); // 自动闪光灯 mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH); CaptureRequest previewRequest = mPreviewRequestBuilder.build(); session.setRepeatingRequest(previewRequest, null, mPreviewHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 17
Source File: Camera2Fragment.java From 361Camera with Apache License 2.0 | 4 votes |
/** * Initiate a still image capture. * <p/> * This function sends a capture request that initiates a pre-capture sequence in our state * machine that waits for auto-focus to finish, ending in a "locked" state where the lens is no * longer moving, waits for auto-exposure to choose a good exposure value, and waits for * auto-white-balance to converge. */ private void takePicture() { synchronized (mCameraStateLock) { mPendingUserCaptures++; // If we already triggered a pre-capture sequence, or are in a state where we cannot // do this, return immediately. if (mState != STATE_PREVIEW) { return; } try { // Trigger an auto-focus run if camera is capable. If the camera is already focused, // this should do nothing. if (!mNoAFRun) { mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START); } // If this is not a legacy device, we can also trigger an auto-exposure metering // run. if (!isLegacyLocked()) { // Tell the camera to lock focus. mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_PRECAPTURE_TRIGGER, CameraMetadata.CONTROL_AE_PRECAPTURE_TRIGGER_START); } // Update state machine to wait for auto-focus, auto-exposure, and // auto-white-balance (aka. "3A") to converge. mState = STATE_WAITING_FOR_3A_CONVERGENCE; // Start a timer for the pre-capture sequence. startTimerLocked(); // Set flash mode setFlashMode(); // Replace the existing repeating request with one with updated 3A triggers. mCaptureSession.capture(mPreviewRequestBuilder.build(), mPreCaptureCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } } }
Example 18
Source File: Camera2BasicFragment.java From opencv-documentscanner-android with Apache License 2.0 | 4 votes |
/** * Capture a still picture. This method should be called when we get a response in * {@link #mCaptureCallback} from both {@link #lockFocus()}. */ private void captureStillPicture() { try { final Activity activity = getActivity(); if (null == activity || null == mCameraDevice) { return; } Log.d(TAG, "captureStillPicture: "); // This is the CaptureRequest.Builder that we use to take a picture. final CaptureRequest.Builder captureBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureBuilder.addTarget(mImageReader.getSurface()); captureBuilder.set(CaptureRequest.EDGE_MODE, CaptureRequest.EDGE_MODE_HIGH_QUALITY); captureBuilder.set(CaptureRequest.COLOR_CORRECTION_MODE, CaptureRequest.COLOR_CORRECTION_MODE_HIGH_QUALITY); // Use the same AE and AF modes as the preview. captureBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); setAutoFlash(captureBuilder); // Orientation int rotation = activity.getWindowManager().getDefaultDisplay().getRotation(); captureBuilder.set(CaptureRequest.JPEG_ORIENTATION, getOrientation(rotation)); //Set the JPEG quality here like so captureBuilder.set(CaptureRequest.JPEG_QUALITY, (byte) 100); CameraCaptureSession.CaptureCallback CaptureCallback = new CameraCaptureSession.CaptureCallback() { @Override public void onCaptureCompleted(@NonNull CameraCaptureSession session, @NonNull CaptureRequest request, @NonNull TotalCaptureResult result) { showToast("Saved: " + mFile); Log.d(TAG, mFile.toString()); refreshAndroidGallery(Uri.fromFile(mFile)); scanner.onBitmapSelect(Uri.fromFile(mFile)); // mFile = new File(Environment.getExternalStoragePublicDirectory(DIRECTORY_DCIM).getAbsolutePath() + // File.separator + "insta_download" + File.separator + System.currentTimeMillis() + ".jpg"); } }; mCaptureSession.stopRepeating(); mCaptureSession.capture(captureBuilder.build(), CaptureCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 19
Source File: Camera2BasicFragment.java From android-Camera2Basic with Apache License 2.0 | 4 votes |
/** * Capture a still picture. This method should be called when we get a response in * {@link #mCaptureCallback} from both {@link #lockFocus()}. */ private void captureStillPicture() { try { final Activity activity = getActivity(); if (null == activity || null == mCameraDevice) { return; } // This is the CaptureRequest.Builder that we use to take a picture. final CaptureRequest.Builder captureBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureBuilder.addTarget(mImageReader.getSurface()); // Use the same AE and AF modes as the preview. captureBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); setAutoFlash(captureBuilder); // Orientation int rotation = activity.getWindowManager().getDefaultDisplay().getRotation(); captureBuilder.set(CaptureRequest.JPEG_ORIENTATION, getOrientation(rotation)); CameraCaptureSession.CaptureCallback CaptureCallback = new CameraCaptureSession.CaptureCallback() { @Override public void onCaptureCompleted(@NonNull CameraCaptureSession session, @NonNull CaptureRequest request, @NonNull TotalCaptureResult result) { showToast("Saved: " + mFile); Log.d(TAG, mFile.toString()); unlockFocus(); } }; mCaptureSession.stopRepeating(); mCaptureSession.abortCaptures(); mCaptureSession.capture(captureBuilder.build(), CaptureCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } }
Example 20
Source File: CameraThread.java From CameraRecorder-android with MIT License | 4 votes |
/** * start camera preview * * @param width * @param height */ @SuppressLint("MissingPermission") final void startPreview(final int width, final int height) { Log.v(TAG, "startPreview:"); try { if (cameraManager == null) return; for (String cameraId : cameraManager.getCameraIdList()) { CameraCharacteristics characteristics = cameraManager.getCameraCharacteristics(cameraId); if (characteristics.get(CameraCharacteristics.LENS_FACING) == null || characteristics.get(CameraCharacteristics.SENSOR_ORIENTATION) == null) { continue; } if (characteristics.get(CameraCharacteristics.LENS_FACING) == lensFacing.getFacing()) { sensorArraySize = characteristics.get(CameraCharacteristics.SENSOR_INFO_ACTIVE_ARRAY_SIZE); flashSupport = characteristics.get(CameraCharacteristics.FLASH_INFO_AVAILABLE); StreamConfigurationMap map = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP); if (width < 0 || height < 0) { cameraSize = map.getOutputSizes(SurfaceTexture.class)[0]; } else { cameraSize = getClosestSupportedSize(Arrays.asList(map.getOutputSizes(SurfaceTexture.class)), width, height); } Log.v(TAG, "cameraSize =" + cameraSize); HandlerThread thread = new HandlerThread("OpenCamera"); thread.start(); Handler backgroundHandler = new Handler(thread.getLooper()); cameraManager.openCamera(cameraId, cameraDeviceCallback, backgroundHandler); return; } } } catch (CameraAccessException e) { e.printStackTrace(); } }