private void startPreview(SurfaceTexture texture) { try { if (texture == null) return; this.texture = texture; texture.setDefaultBufferSize(previewSize.getWidth(), previewSize.getHeight()); workingSurface = new Surface(texture); previewRequestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); previewRequestBuilder.addTarget(workingSurface); cameraDevice.createCaptureSession(Arrays.asList(workingSurface, imageReader.getSurface()), new CameraCaptureSession.StateCallback() { @Override public void onConfigured(@NonNull CameraCaptureSession cameraCaptureSession) { updatePreview(cameraCaptureSession); } @Override public void onConfigureFailed( @NonNull CameraCaptureSession cameraCaptureSession) { Log.d(TAG, "Fail while starting preview: "); } }, null); } catch (Exception e) { Log.e(TAG, "Error while preparing surface for preview: ", e); } }
/** * <p>Starts a capture session for camera preview.</p> * <p>This rewrites {@link #mPreviewRequestBuilder}.</p> * <p>The result will be continuously processed in {@link #mSessionCallback}.</p> */ void startCaptureSession() { if (!isCameraOpened() || !mPreview.isReady() || mImageReader == null) { return; } Size previewSize = chooseOptimalSize(); mPreview.setBufferSize(previewSize.getWidth(), previewSize.getHeight()); Surface surface = mPreview.getSurface(); try { mPreviewRequestBuilder = mCamera.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); mPreviewRequestBuilder.addTarget(surface); mCamera.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()), mSessionCallback, null); } catch (CameraAccessException e) { throw new RuntimeException("Failed to start camera session"); } }
previewRequestBuilder.addTarget(workingSurface); cameraDevice.createCaptureSession(surfaces, new CameraCaptureSession.StateCallback() { @Override public void onConfigured(@NonNull CameraCaptureSession cameraCaptureSession) {
/** * <p>Starts a capture session for camera preview.</p> * <p>This rewrites {@link #mPreviewRequestBuilder}.</p> * <p>The result will be continuously processed in {@link #mSessionCallback}.</p> */ void startCaptureSession() { if (!isCameraOpened() || !mPreview.isReady() || mImageReader == null) { return; } Size previewSize = chooseOptimalSize(); mPreview.setBufferSize(previewSize.getWidth(), previewSize.getHeight()); Surface surface = mPreview.getSurface(); try { mPreviewRequestBuilder = mCamera.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); mPreviewRequestBuilder.addTarget(surface); mCamera.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()), mSessionCallback, null); } catch (CameraAccessException e) { throw new RuntimeException("Failed to start camera session"); } }
mCameraDevice.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()), new CameraCaptureSession.StateCallback() {
private void createCameraCaptureSession() throws CameraAccessException { if(isUserWantPreview&&mPreviewTexture!=null&&mCameraDevice!=null){ mCaptureRequestBuilder=mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); Surface surface=new Surface(mPreviewTexture); mCaptureRequestBuilder.addTarget(surface); mCameraDevice.createCaptureSession(Arrays.asList(surface),mSessionPreviewCallback, mCameraHandler); } }
private void startPreview(SurfaceTexture texture) { try { if (texture == null) return; this.mSurfaceTexture = texture; texture.setDefaultBufferSize(mPreviewSize.getWidth(), mPreviewSize.getHeight()); mWorkingSurface = new Surface(texture); mPreviewRequestBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); mPreviewRequestBuilder.addTarget(mWorkingSurface); mCameraDevice.createCaptureSession(Arrays.asList(mWorkingSurface, mImageReader.getSurface()), new CameraCaptureSession.StateCallback() { @Override public void onConfigured(@NonNull CameraCaptureSession cameraCaptureSession) { updatePreview(cameraCaptureSession); } @Override public void onConfigureFailed( @NonNull CameraCaptureSession cameraCaptureSession) { Log.d(TAG, "Fail while starting preview: "); } }, null); } catch (Exception e) { Log.e(TAG, "Error while preparing surface for preview: ", e); } }
mPreviewRequestBuilder.addTarget(mWorkingSurface); mCameraDevice.createCaptureSession(surfaces, new CameraCaptureSession.StateCallback() { @Override public void onConfigured(@NonNull CameraCaptureSession cameraCaptureSession) {
mCameraDevice.createCaptureSession(surfaces, new CameraCaptureSession.StateCallback() {
mController.getTexture().setDefaultBufferSize( mPreviewSize.getWidth(),mPreviewSize.getHeight()); mDevice.createCaptureSession(Arrays.asList(surface), new CameraCaptureSession.StateCallback() { @Override
mPreviewBuilder.addTarget(previewSurface); mCameraDevice.createCaptureSession(Collections.singletonList(previewSurface), new CameraCaptureSession.StateCallback() {
public void takePicture() { if (cameraDevice == null) { Log.w(TAG, "Cannot capture image. Camera not initialized."); return; } try { cameraDevice.createCaptureSession( Collections.singletonList(imageReader.getSurface()), mSessionCallback, null); } catch (CameraAccessException cae) { Log.d(TAG, "access exception while preparing pic", cae); } }
@Override public void onOpened(@NonNull CameraDevice camera) { mCameraDevice = camera; try { camera.createCaptureSession(Collections.singletonList(mMediaRecorder.getSurface()), cameraCaptureSessionStateCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
@Override public void createCameraPreviewSession() { try { initSurface(); mState = STATE_PREVIEW; mCameraDevice.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()), captureSessionStateCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
@Override public void createCameraPreviewSession() { try { closePreviewSession(); initSurface(); mCameraDevice.createCaptureSession(Arrays.asList(surface), recordSessionStateCallback, mBackgroundHandler); } catch (CameraAccessException e) { e.printStackTrace(); } }
private void createCameraCaptureSession() { try { //TEMPLATE_RECORD为录制模板,TEMPLATE_STILL_CAPTURE拍照模板 if(takePhoto) previewBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); else previewBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD); previewBuilder.addTarget(holder.getSurface()); cameraDevice.createCaptureSession(Arrays.asList(holder.getSurface(), imageReader.getSurface()), mSessionPreviewStateCallback, handler); } catch (CameraAccessException e) { e.printStackTrace(); } }
/** * Configure the camera session. */ private void startCameraSession() { // Wait until both the camera device is open and the SurfaceView is ready if (mCameraDevice == null || mSurfaces == null) return; try { mCameraDevice.createCaptureSession( mSurfaces, mCameraSessionListener, mCameraHandler); } catch (CameraAccessException e) { String errorMessage = mErrorDisplayer.getErrorString(e); mErrorDisplayer.showErrorDialog(errorMessage); mCameraDevice.close(); mCameraDevice = null; } }
protected void startPreview() { try { mPreviewBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW); mPreviewBuilder.set(CaptureRequest.CONTROL_AF_MODE, CameraMetadata.CONTROL_AF_MODE_CONTINUOUS_VIDEO); for(Surface s : mTargetSurfaces) { mPreviewBuilder.addTarget(s); } mCameraDevice.createCaptureSession(mTargetSurfaces, mCaptureCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } }
private void createCaptureSession() { surfaceTexture.setDefaultBufferSize(cameraSize.getWidth(), cameraSize.getHeight()); Surface surface = new Surface(surfaceTexture); try { requestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD); } catch (CameraAccessException e) { e.printStackTrace(); } requestBuilder.addTarget(surface); try { cameraDevice.createCaptureSession(Collections.singletonList(surface), cameraCaptureSessionCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } listener.onStart(cameraSize, flashSupport); }
private void createCaptureSession() { surfaceTexture.setDefaultBufferSize(cameraSize.getWidth(), cameraSize.getHeight()); Surface surface = new Surface(surfaceTexture); try { requestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD); } catch (CameraAccessException e) { e.printStackTrace(); } requestBuilder.addTarget(surface); try { cameraDevice.createCaptureSession(Collections.singletonList(surface), cameraCaptureSessionCallback, null); } catch (CameraAccessException e) { e.printStackTrace(); } listener.onStart(cameraSize, flashSupport); }