Search in sources :

Example 91 with Camera

use of android.hardware.Camera in project zxing-android-embedded by journeyapps.

the class CameraManager method setParameters.

private void setParameters() {
    try {
        this.rotationDegrees = calculateDisplayRotation();
        setCameraDisplayOrientation(rotationDegrees);
    } catch (Exception e) {
        Log.w(TAG, "Failed to set rotation.");
    }
    try {
        setDesiredParameters(false);
    } catch (Exception e) {
        // Failed, use safe mode
        try {
            setDesiredParameters(true);
        } catch (Exception e2) {
            // Well, darn. Give up
            Log.w(TAG, "Camera rejected even safe-mode parameters! No configuration");
        }
    }
    Camera.Size realPreviewSize = camera.getParameters().getPreviewSize();
    if (realPreviewSize == null) {
        previewSize = requestedPreviewSize;
    } else {
        previewSize = new Size(realPreviewSize.width, realPreviewSize.height);
    }
    cameraPreviewCallback.setResolution(previewSize);
}
Also used : Size(com.journeyapps.barcodescanner.Size) Camera(android.hardware.Camera) IOException(java.io.IOException)

Example 92 with Camera

use of android.hardware.Camera in project zxing-lib by kennydude.

the class CameraConfigurationManager method setDesiredCameraParameters.

void setDesiredCameraParameters(Camera camera, boolean safeMode) {
    Camera.Parameters parameters = camera.getParameters();
    if (parameters == null) {
        Log.w(TAG, "Device error: no camera parameters are available. Proceeding without configuration.");
        return;
    }
    Log.i(TAG, "Initial camera parameters: " + parameters.flatten());
    if (safeMode) {
        Log.w(TAG, "In camera config safe mode -- most settings will not be honored");
    }
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    initializeTorch(parameters, prefs, safeMode);
    String focusMode = null;
    if (prefs.getBoolean(PreferencesActivity.KEY_AUTO_FOCUS, true)) {
        if (safeMode || prefs.getBoolean(PreferencesActivity.KEY_DISABLE_CONTINUOUS_FOCUS, false)) {
            focusMode = findSettableValue(parameters.getSupportedFocusModes(), Camera.Parameters.FOCUS_MODE_AUTO);
        } else {
            focusMode = findSettableValue(parameters.getSupportedFocusModes(), // Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE in 4.0+
            "continuous-picture", // Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO in 4.0+
            "continuous-video", Camera.Parameters.FOCUS_MODE_AUTO);
        }
    }
    // Maybe selected auto-focus but not available, so fall through here:
    if (!safeMode && focusMode == null) {
        focusMode = findSettableValue(parameters.getSupportedFocusModes(), Camera.Parameters.FOCUS_MODE_MACRO, // Camera.Parameters.FOCUS_MODE_EDOF in 2.2+
        "edof");
    }
    if (focusMode != null) {
        parameters.setFocusMode(focusMode);
    }
    parameters.setPreviewSize(cameraResolution.x, cameraResolution.y);
    camera.setParameters(parameters);
}
Also used : SharedPreferences(android.content.SharedPreferences) Camera(android.hardware.Camera)

Example 93 with Camera

use of android.hardware.Camera in project zxing-lib by kennydude.

the class CameraManager method requestPreviewFrame.

/**
   * A single preview frame will be returned to the handler supplied. The data will arrive as byte[]
   * in the message.obj field, with width and height encoded as message.arg1 and message.arg2,
   * respectively.
   *
   * @param handler The handler to send the message to.
   * @param message The what field of the message to be sent.
   */
public synchronized void requestPreviewFrame(Handler handler, int message) {
    Camera theCamera = camera;
    if (theCamera != null && previewing) {
        previewCallback.setHandler(handler, message);
        theCamera.setOneShotPreviewCallback(previewCallback);
    }
}
Also used : Camera(android.hardware.Camera)

Example 94 with Camera

use of android.hardware.Camera in project SimplifyReader by chentao0707.

the class CameraManager method startPreview.

/**
     * Asks the camera hardware to begin drawing preview frames to the screen.
     */
public synchronized void startPreview() {
    Camera theCamera = camera;
    if (theCamera != null && !previewing) {
        theCamera.startPreview();
        previewing = true;
        autoFocusManager = new AutoFocusManager(camera);
    }
}
Also used : Camera(android.hardware.Camera)

Example 95 with Camera

use of android.hardware.Camera in project SimplifyReader by chentao0707.

the class CameraManager method openDriver.

/**
     * Opens the camera driver and initializes the hardware parameters.
     *
     * @param holder The surface object which the camera will draw preview frames into.
     * @throws IOException Indicates the camera driver failed to open.
     */
public synchronized void openDriver(SurfaceHolder holder) throws IOException {
    Camera theCamera = camera;
    if (theCamera == null) {
        theCamera = OpenCameraInterface.open(requestedCameraId);
        if (theCamera == null) {
            throw new IOException();
        }
        camera = theCamera;
    }
    theCamera.setPreviewDisplay(holder);
    if (!initialized) {
        initialized = true;
        configManager.initFromCameraParameters(theCamera);
    }
    Camera.Parameters parameters = theCamera.getParameters();
    // Save these, temporarily
    String parametersFlattened = parameters == null ? null : parameters.flatten();
    try {
        configManager.setDesiredCameraParameters(theCamera, false);
    } catch (RuntimeException re) {
        // Driver failed
        Log.w(TAG, "Camera rejected parameters. Setting only minimal safe-mode parameters");
        Log.i(TAG, "Resetting to saved camera params: " + parametersFlattened);
        // Reset:
        if (parametersFlattened != null) {
            parameters = theCamera.getParameters();
            parameters.unflatten(parametersFlattened);
            try {
                theCamera.setParameters(parameters);
                configManager.setDesiredCameraParameters(theCamera, true);
            } catch (RuntimeException re2) {
                // Well, darn. Give up
                Log.w(TAG, "Camera rejected even safe-mode parameters! No configuration");
            }
        }
    }
}
Also used : Camera(android.hardware.Camera) IOException(java.io.IOException)

Aggregations

Camera (android.hardware.Camera)164 Point (android.graphics.Point)28 CameraCharacteristics (android.hardware.camera2.CameraCharacteristics)25 Size (android.util.Size)25 Rect (android.graphics.Rect)19 IOException (java.io.IOException)19 Parameters (android.hardware.Camera.Parameters)18 ArrayList (java.util.ArrayList)17 Display (android.view.Display)16 WindowManager (android.view.WindowManager)16 CaptureRequest (android.hardware.camera2.CaptureRequest)15 SharedPreferences (android.content.SharedPreferences)10 Paint (android.graphics.Paint)10 CameraMetadataNative (android.hardware.camera2.impl.CameraMetadataNative)10 ZoomData (android.hardware.camera2.legacy.ParameterUtils.ZoomData)10 SuppressLint (android.annotation.SuppressLint)8 Bitmap (android.graphics.Bitmap)8 MediaRecorder (android.media.MediaRecorder)7 R5Camera (com.red5pro.streaming.source.R5Camera)7 OpenCamera (com.google.zxing.client.android.camera.open.OpenCamera)6