Search in sources :

Example 6 with OpenCamera

use of com.google.zxing.client.android.camera.open.OpenCamera in project zxing by zxing.

the class CameraManager method startPreview.

/**
   * Asks the camera hardware to begin drawing preview frames to the screen.
   */
public synchronized void startPreview() {
    OpenCamera theCamera = camera;
    if (theCamera != null && !previewing) {
        theCamera.getCamera().startPreview();
        previewing = true;
        autoFocusManager = new AutoFocusManager(context, theCamera.getCamera());
    }
}
Also used : OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera)

Example 7 with OpenCamera

use of com.google.zxing.client.android.camera.open.OpenCamera in project zxing by zxing.

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) {
    OpenCamera theCamera = camera;
    if (theCamera != null && previewing) {
        previewCallback.setHandler(handler, message);
        theCamera.getCamera().setOneShotPreviewCallback(previewCallback);
    }
}
Also used : OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera)

Example 8 with OpenCamera

use of com.google.zxing.client.android.camera.open.OpenCamera in project zxing by zxing.

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 {
    OpenCamera theCamera = camera;
    if (theCamera == null) {
        theCamera = OpenCameraInterface.open(requestedCameraId);
        if (theCamera == null) {
            throw new IOException("Camera.open() failed to return object from driver");
        }
        camera = theCamera;
    }
    if (!initialized) {
        initialized = true;
        configManager.initFromCameraParameters(theCamera);
        if (requestedFramingRectWidth > 0 && requestedFramingRectHeight > 0) {
            setManualFramingRect(requestedFramingRectWidth, requestedFramingRectHeight);
            requestedFramingRectWidth = 0;
            requestedFramingRectHeight = 0;
        }
    }
    Camera cameraObject = theCamera.getCamera();
    Camera.Parameters parameters = cameraObject.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 = cameraObject.getParameters();
            parameters.unflatten(parametersFlattened);
            try {
                cameraObject.setParameters(parameters);
                configManager.setDesiredCameraParameters(theCamera, true);
            } catch (RuntimeException re2) {
                // Well, darn. Give up
                Log.w(TAG, "Camera rejected even safe-mode parameters! No configuration");
            }
        }
    }
    cameraObject.setPreviewDisplay(holder);
}
Also used : OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera) IOException(java.io.IOException) OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera) Camera(android.hardware.Camera)

Example 9 with OpenCamera

use of com.google.zxing.client.android.camera.open.OpenCamera in project weex-example by KalicyZhou.

the class CameraManager method startPreview.

/**
   * Asks the camera hardware to begin drawing preview frames to the screen.
   */
public synchronized void startPreview() {
    OpenCamera theCamera = camera;
    if (theCamera != null && !previewing) {
        theCamera.getCamera().startPreview();
        previewing = true;
        autoFocusManager = new AutoFocusManager(context, theCamera.getCamera());
    }
}
Also used : OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera)

Example 10 with OpenCamera

use of com.google.zxing.client.android.camera.open.OpenCamera in project weex-example by KalicyZhou.

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 {
    OpenCamera theCamera = camera;
    if (theCamera == null) {
        theCamera = OpenCameraInterface.open(requestedCameraId);
        if (theCamera == null) {
            throw new IOException("Camera.open() failed to return object from driver");
        }
        camera = theCamera;
    }
    if (!initialized) {
        initialized = true;
        configManager.initFromCameraParameters(theCamera);
        if (requestedFramingRectWidth > 0 && requestedFramingRectHeight > 0) {
            setManualFramingRect(requestedFramingRectWidth, requestedFramingRectHeight);
            requestedFramingRectWidth = 0;
            requestedFramingRectHeight = 0;
        }
    }
    Camera cameraObject = theCamera.getCamera();
    Camera.Parameters parameters = cameraObject.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 = cameraObject.getParameters();
            parameters.unflatten(parametersFlattened);
            try {
                cameraObject.setParameters(parameters);
                configManager.setDesiredCameraParameters(theCamera, true);
            } catch (RuntimeException re2) {
                // Well, darn. Give up
                Log.w(TAG, "Camera rejected even safe-mode parameters! No configuration");
            }
        }
    }
    cameraObject.setPreviewDisplay(holder);
}
Also used : OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera) IOException(java.io.IOException) OpenCamera(com.google.zxing.client.android.camera.open.OpenCamera) Camera(android.hardware.Camera)

Aggregations

OpenCamera (com.google.zxing.client.android.camera.open.OpenCamera)12 Camera (android.hardware.Camera)6 SharedPreferences (android.content.SharedPreferences)2 Point (android.graphics.Point)2 Display (android.view.Display)2 WindowManager (android.view.WindowManager)2 IOException (java.io.IOException)2