Refine search
outStream = new FileOutputStream("/sdcard/test.jpg"); outStream.write(data); outStream.close(); }catch(FileNotFoundException e){ Log.d("Camera", e.getMessage()); addContentView(mGLSurfaceView, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); mSurfaceView = new SurfaceView(this); addContentView(mSurfaceView, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); mSurfaceHolder = mSurfaceView.getHolder(); mSurfaceHolder.addCallback(this); mSurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); mSurfaceHolder.setFormat(PixelFormat.TRANSLUCENT|LayoutParams.FLAG_BLUR_BEHIND); p.setPreviewSize(arg2, arg3); try { camera.setPreviewDisplay(arg0);
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) { Camera.Parameters parameters = camera.getParameters(); List<Camera.Size> previewSizes = parameters.getSupportedPreviewSizes(); // You need to choose the most appropriate previewSize for your app Camera.Size previewSize = // .... select one of previewSizes here parameters.setPreviewSize(previewSize.width, previewSize.height); camera.setParameters(parameters); camera.startPreview(); }
@Override public void onAutoFocus(boolean success, Camera camera) { Camera.Parameters params = camera.getParameters(); params.setFocusMode(currentFocusMode); camera.setParameters(params); } });
btncapture=(Button) findViewById(R.id.btncapture); mSurfaceView = (SurfaceView) findViewById(R.id.surface_camera); mSurfaceHolder = mSurfaceView.getHolder(); mSurfaceHolder.addCallback(this); mSurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); public void onClick(View v) { mCamera.takePicture(null, null, mPictureCallback); try { fos = new FileOutputStream(mypath); fos.close(); } catch (Exception e) { e.printStackTrace(); int h) { if (mPreviewRunning) { mCamera.stopPreview(); Camera.Parameters p = mCamera.getParameters(); p.setPreviewSize(w, h); mCamera.setParameters(p); try {
@Override public void onPreviewFrame(byte[] data, Camera camera) { Camera.Parameters parameters = camera.getParameters(); int format = parameters.getPreviewFormat(); int w = parameters.getPreviewSize().width; int h = parameters.getPreviewSize().height; outStream = new FileOutputStream(file); outStream.write(byt); outStream.close(); } catch (FileNotFoundException e) { e.printStackTrace();
surfaceHolder = surfaceView.getHolder(); surfaceHolder.addCallback(this); surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); rawCallback = new PictureCallback() { public void onPictureTaken(byte[] data, Camera camera) { FileOutputStream outStream = null; try { outStream = new FileOutputStream(String.format( "/sdcard/%d.jpg", System.currentTimeMillis())); outStream.write(data); outStream.close(); Log.d("Log", "onPictureTaken - wrote bytes: " + data.length); } catch (FileNotFoundException e) { param = camera.getParameters(); param.setPreviewFrameRate(20); param.setPreviewSize(176, 144); camera.setParameters(param); try {
import android.graphics.YuvImage; @Override public void onPreviewFrame(byte[] data, Camera camera) { try { Camera.Parameters parameters = camera.getParameters(); Size size = parameters.getPreviewSize(); YuvImage image = new YuvImage(data, parameters.getPreviewFormat(), size.width, size.height, null); File file = new File(Environment.getExternalStorageDirectory() .getPath() + "/out.jpg"); FileOutputStream filecon = new FileOutputStream(file); image.compressToJpeg( new Rect(0, 0, image.getWidth(), image.getHeight()), 90, filecon); } catch (FileNotFoundException e) { Toast toast = Toast .makeText(getBaseContext(), e.getMessage(), 1000); toast.show(); } }
int width = parameters.getPreviewSize().width; int height = parameters.getPreviewSize().height; YuvImage yuv = new YuvImage(data, parameters.getPreviewFormat(), width, height, null); ByteArrayOutputStream out = new ByteArrayOutputStream(); yuv.compressToJpeg(new Rect(0, 0, width, height), 70, out); File pictureFile = getOutputMediaFile(); try { FileOutputStream fos = new FileOutputStream(pictureFile); fos.write(bytes); fos.close(); } catch (IOException e) { e.printStackTrace();
Camera.Parameters parameters = camera.getParameters(); Camera.Size size = parameters.getPreviewSize(); YuvImage image = new YuvImage(data, parameters.getPreviewFormat(), size.width, size.height, null); File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "YuvImage.jpg"); FileOutptStream filecon = new FileOutputStream(file); image.compressToJpeg(new Rect(0, 0, image.getWidth(), image.getHeight()), 90, filecon);
mCamera.stopPreview(); parameters = mCamera.getParameters(); } catch (Exception e) { parameters.setPreviewSize(videoWidth, videoHeight); parameters.setPictureFormat(PixelFormat.JPEG); parameters.setPreviewFormat(PixelFormat.YCbCr_420_SP); mCamera.setParameters(parameters); int bufferSize = (((videoWidth|0xf)+1) * videoHeight * ImageFormat.getBitsPerPixel(parameters.getPreviewFormat())) / 8; mCamera.addCallbackBuffer(new byte[bufferSize]);
@Override public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) { // If your preview can change or rotate, take care of those events here. // Make sure to stop the preview before resizing or reformatting it. if (mHolder.getSurface() == null) { // preview surface does not exist return; } // stop preview before making changes try { mCamera.stopPreview(); } catch (Exception e) { // ignore: tried to stop a non-existent preview } // set preview size and make any resize, rotate or // reformatting changes here // start preview with new settings try { mCamera.setPreviewDisplay(mHolder); final Camera.Parameters parameters = mCamera.getParameters(); final Camera.Size size = getBestPreviewSize(w, h); parameters.setPreviewSize(size.width, size.height); mCamera.setParameters(parameters); mCamera.startPreview(); } catch (Exception e) { Log.d(TAG, "Error starting camera preview: " + e.getMessage()); } }
private void startCamera() { try { mCamera = Camera.open(); Camera.Parameters params = mCamera.getParameters(); List<String> supportedFocusModes = params.getSupportedFocusModes(); if (supportedFocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)) { params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE); } else { params.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO); List<Camera.Size> sizes = params.getSupportedPreviewSizes(); Camera.Size bestSize = null; int bestDiff = Integer.MAX_VALUE; params.setPreviewFormat(ImageFormat.NV21); params.setPreviewSize(bestSize.width, bestSize.height); mFrameWidth = bestSize.width; mFrameHeight = bestSize.height; mCamera.setParameters(params); mCamera.setPreviewCallbackWithBuffer(this); mCamera.setPreviewDisplay(mSurfaceView.getHolder()); mCamera.startPreview();
mSupportedPreviewSizes = mCamera.getParameters().getSupportedPreviewSizes(); for(Camera.Size str: mSupportedPreviewSizes) Log.e(TAG, str.width + "/" + str.height); mHolder.addCallback(this); mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); if (mHolder.getSurface() == null){ mCamera.stopPreview(); } catch (Exception e){ Camera.Parameters parameters = mCamera.getParameters(); parameters.setPreviewSize(mPreviewSize.width, mPreviewSize.height); mCamera.setParameters(parameters); mCamera.setDisplayOrientation(90);
@NeedsPermission(Manifest.permission.CAMERA) void showCamera() { mCamera = Camera.open(); mCamera.setDisplayOrientation(90); if (parameters == null) { parameters = mCamera.getParameters(); parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);//打开闪光灯 } if (mPreview == null) { mPreview = (SurfaceView) findViewById(R.id.sv_preview); mPreviewHolder = mPreview.getHolder(); mPreviewHolder.addCallback(mSurfaceCallback); mPreviewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "DoNotDimScreen"); } mWakeLock.acquire(); if (parameters != null) { try { mCamera.setPreviewDisplay(mPreviewHolder); } catch (IOException e) { e.printStackTrace(); } mCamera.setPreviewCallback(mPreviewCallback); mCamera.setParameters(parameters); mCamera.startPreview(); } }
throw new RuntimeException("Could not find requested camera."); Camera camera = Camera.open(requestedCameraId); parameters.setPictureSize(pictureSize.getWidth(), pictureSize.getHeight()); parameters.setPreviewSize(previewSize.getWidth(), previewSize.getHeight()); parameters.setPreviewFpsRange( previewFpsRange[Camera.Parameters.PREVIEW_FPS_MIN_INDEX], previewFpsRange[Camera.Parameters.PREVIEW_FPS_MAX_INDEX]); parameters.setPreviewFormat(ImageFormat.NV21); if (parameters.getSupportedFocusModes().contains( focusMode)) { parameters.setFocusMode(focusMode); } else { Log.i(TAG, "Camera focus mode: " + focusMode + focusMode = parameters.getFocusMode(); if (parameters.getSupportedFlashModes().contains( flashMode)) { parameters.setFlashMode(flashMode); } else { Log.i(TAG, "Camera flash mode: " + flashMode + flashMode = parameters.getFlashMode();
public void InitCamera() { Camera.Parameters p = _mCamera.getParameters(); Size prevewSize = p.getPreviewSize(); Log.i(LOG_TAG, "Original Width:" + prevewSize.width + ", height:" + prevewSize.height); List<Size> PreviewSizeList = p.getSupportedPreviewSizes(); List<Integer> PreviewFormats = p.getSupportedPreviewFormats(); Log.i(LOG_TAG, "Listing all supported preview sizes"); for (Camera.Size size : PreviewSizeList) { _iCameraCodecType = iYV12Flag; p.setPreviewSize(HEIGHT_DEF, WIDTH_DEF); p.setPreviewFormat(_iCameraCodecType); p.setPreviewFrameRate(FRAMERATE_DEF); _mCamera.setDisplayOrientation(_iDegrees); p.setRotation(_iDegrees); _mCamera.setPreviewCallback(_previewCallback); _mCamera.setParameters(p); try { _mCamera.setPreviewDisplay(_mSurfaceView.getHolder()); } catch (Exception e) { return;
mHolder.addCallback(this); mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); Camera.Parameters parameters = mCamera.getParameters(); List<Camera.Size> previewSizes = parameters.getSupportedPreviewSizes(); Camera.Size previewSize = null; float closestRatio = Float.MAX_VALUE; parameters.setPreviewSize(previewSize.width, previewSize.height); mCamera.setParameters(parameters); mCamera.setPreviewDisplay(mHolder); mCamera.startPreview(); } catch (IOException e) {
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); Camera.Parameters parameters = mCamera.getParameters(); parameters.setPreviewSize(width, height); int[] range = findClosestFpsRange(config.fps, parameters.getSupportedPreviewFpsRange()); parameters.setPreviewFpsRange(range[0], range[1]); parameters.setPreviewFormat(ImageFormat.NV21); if (parameters.getSupportedFocusModes() != null && parameters.getSupportedFocusModes().contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)) { parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE); mCamera.setParameters(parameters); mCamera.setPreviewCallback(PushClient.this); mCamera.addCallbackBuffer(mYuvFrameBuffer); try {
try { surfaceView.setVisibility(View.VISIBLE); surfaceView.setEnabled(true); camera = Camera.open(currentCameraSide); camera.setPreviewDisplay(surfaceHolder); if (CaptureActivity.this.getResources().getConfiguration().orientation == ORIENTATION_PORTRAIT) { camera.setDisplayOrientation(90); Camera.Parameters cameraParams = camera.getParameters(); List<String> supportedFocusModes = cameraParams.getSupportedFocusModes(); AppLogger.logMessage("SupportedFocusModes: " + supportedFocusModes.toString()); if (supportedFocusModes != null && supportedFocusModes.size() > 0 && supportedFocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) { cameraParams.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO); cameraParams.setPictureSize(pictureSize.width, pictureSize.height); camera.setParameters(cameraParams); camera.startPreview();
private void startPreView(SurfaceHolder holder) { if (mCamera == null) { mCamera = Camera.open(Camera.CameraInfo.CAMERA_FACING_BACK); mCamera.setDisplayOrientation(or); try { mCamera.setPreviewDisplay(holder); Camera.Parameters parameters = mCamera.getParameters(); List<Camera.Size> mSupportedPreviewSizes = parameters.getSupportedPreviewSizes(); List<Camera.Size> mSupportedVideoSizes = parameters.getSupportedVideoSizes(); Camera.Size optimalSize = CameraHelper.getOptimalVideoSize(mSupportedVideoSizes, mSupportedPreviewSizes, mSurfaceView.getWidth(), mSurfaceView.getHeight()); parameters.setPreviewSize(previewWidth, previewHeight); profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH); List<String> focusModes = parameters.getSupportedFocusModes(); if (focusModes != null) { for (String mode : focusModes) { mode.contains("continuous-video"); parameters.setFocusMode("continuous-video");