android.hardware.Camera#setPreviewCallback ( )源码实例Demo

下面列出了android.hardware.Camera#setPreviewCallback ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: PermissionAgent   文件: CameraTester.java
@Override
public boolean test() throws Throwable {
    Camera camera = null;
    try {
        camera = Camera.open();
        Camera.Parameters parameters = camera.getParameters();
        camera.setParameters(parameters);
        camera.setPreviewCallback(PREVIEW_CALLBACK);
        camera.startPreview();
        return true;
    } catch (Throwable e) {
        PackageManager packageManager = mContext.getPackageManager();
        return !packageManager.hasSystemFeature(PackageManager.FEATURE_CAMERA);
    } finally {
        if (camera != null) {
            camera.stopPreview();
            camera.setPreviewCallback(null);
            camera.release();
        }
    }
}
 
源代码2 项目: code-scanner   文件: CodeScanner.java
private void stopPreviewInternal(final boolean internal) {
    try {
        final DecoderWrapper decoderWrapper = mDecoderWrapper;
        if (decoderWrapper != null) {
            final Camera camera = decoderWrapper.getCamera();
            camera.cancelAutoFocus();
            final Parameters parameters = camera.getParameters();
            if (!internal && decoderWrapper.isFlashSupported() && mFlashEnabled) {
                Utils.setFlashMode(parameters, Parameters.FLASH_MODE_OFF);
            }
            camera.setParameters(parameters);
            camera.setPreviewCallback(null);
            camera.stopPreview();
        }
    } catch (final Exception ignored) {
    }
    mStoppingPreview = false;
    mPreviewActive = false;
    mSafeAutoFocusing = false;
    mSafeAutoFocusAttemptsCount = 0;
}
 
源代码3 项目: Android   文件: CameraManager.java
/**
 * Set the camera to camera (turn off the old camera, turn on the new camera)
 *
 * @param mCamera
 */
public Camera setChangeParameters(Activity activity, Camera mCamera, SurfaceHolder viewHolder) {
    if (Camera.getNumberOfCameras() <= 1) {
        return null;
    }
    try {
        mCamera.stopPreview();
        mCamera.setPreviewCallback(null);
        mCamera.release();
        cameraPosition = cameraPosition == 1 ? 0 : 1;
        Camera mNewCamera = getCameraInstance(cameraPosition);
        setParametersCamera(activity, mNewCamera);
        mNewCamera.setPreviewDisplay(viewHolder);
        mNewCamera.startPreview();
        return mNewCamera;
    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}
 
源代码4 项目: QrCodeLib   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
    Point cameraResolution = configManager.getCameraResolution();
    if (!useOneShotPreviewCallback) {
        camera.setPreviewCallback(null);
    }
    if (previewHandler != null) {
        Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
                cameraResolution.y, data);
        message.sendToTarget();
        previewHandler = null;
    } else {
        Log.d(TAG, "Got preview callback, but no handler for it");
    }
}
 
源代码5 项目: vmqApk   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码6 项目: iscanner_android   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码7 项目: mobile-manager-tool   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码8 项目: DoraemonKit   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
    Point cameraResolution = configManager.getCameraResolution();
    if (!useOneShotPreviewCallback) {
        camera.setPreviewCallback(null);
    }
    if (previewHandler != null) {
        Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
                cameraResolution.y, data);
        message.sendToTarget();
        previewHandler = null;
    } else {
        Log.d(TAG, "Got preview callback, but no handler for it");
    }
}
 
源代码9 项目: MaterialHome   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码10 项目: QrScan   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码11 项目: KSYMediaPlayer_Android   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码12 项目: code-scanner   文件: CodeScanner.java
private void startPreviewInternal(final boolean internal) {
    try {
        final DecoderWrapper decoderWrapper = mDecoderWrapper;
        if (decoderWrapper != null) {
            final Camera camera = decoderWrapper.getCamera();
            camera.setPreviewCallback(mPreviewCallback);
            camera.setPreviewDisplay(mSurfaceHolder);
            if (!internal && decoderWrapper.isFlashSupported() && mFlashEnabled) {
                setFlashEnabledInternal(true);
            }
            camera.startPreview();
            mStoppingPreview = false;
            mPreviewActive = true;
            mSafeAutoFocusing = false;
            mSafeAutoFocusAttemptsCount = 0;
            if (decoderWrapper.isAutoFocusSupported() && mAutoFocusEnabled) {
                final Rect frameRect = mScannerView.getFrameRect();
                if (frameRect != null) {
                    final Parameters parameters = camera.getParameters();
                    Utils.configureDefaultFocusArea(parameters, decoderWrapper, frameRect);
                    camera.setParameters(parameters);
                }
                if (mAutoFocusMode == AutoFocusMode.SAFE) {
                    scheduleSafeAutoFocusTask();
                }
            }
        }
    } catch (final Exception ignored) {
    }
}
 
源代码13 项目: o2oa   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码14 项目: Mobike   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
    Point cameraResolution = configManager.getCameraResolution();
    if (!useOneShotPreviewCallback) {
        camera.setPreviewCallback(null);
    }
    if (previewHandler != null) {
        Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
                cameraResolution.y, data);
        message.sendToTarget();
        previewHandler = null;
    } else {
        Log.d(TAG, "Got preview callback, but no handler for it");
    }
}
 
源代码15 项目: QrModule   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
    Point cameraResolution = configManager.getCameraResolution();
    if (!useOneShotPreviewCallback) {
        camera.setPreviewCallback(null);
    }
    if (previewHandler != null) {
        Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
                cameraResolution.y, data);
        message.sendToTarget();
        previewHandler = null;
    } else {
        Log.d(TAG, "Got preview callback, but no handler for it");
    }
}
 
源代码16 项目: smart-farmer-android   文件: PreviewCallback.java
public void onPreviewFrame(byte[] data, Camera camera) {
  Point cameraResolution = configManager.getCameraResolution();
  if (!useOneShotPreviewCallback) {
    camera.setPreviewCallback(null);
  }
  if (previewHandler != null) {
    Message message = previewHandler.obtainMessage(previewMessage, cameraResolution.x,
        cameraResolution.y, data);
    message.sendToTarget();
    previewHandler = null;
  } else {
    Log.d(TAG, "Got preview callback, but no handler for it");
  }
}
 
源代码17 项目: FaceDetect   文件: FaceTrackActivity.java
@Override
    public void onPreviewFrame(final byte[] data, final Camera camera) {
        camera.setPreviewCallback(null);
        if (mCamera == null) return;
        detectHandler.post(new Runnable() {
            @Override
            public void run() {
                int is = 0;
                final byte[] ori = new byte[width * height];
                for (int x = width - 1; x >= 0; x--) {
                    for (int y = height - 1; y >= 0; y--) {
                        ori[is++] = data[y * width + x];
                    }
                }
                final FaceDetecter.Face[] faceinfo = facedetecter.findFaces(ori, height, width);
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        fmMask.setFaceInfo(faceinfo);


                    }
                });


                try {
                    camera.setPreviewCallback(FaceTrackActivity.this);
                } catch (Exception e) {
                    e.printStackTrace();
                }

/*
                if (!consumeFaceInfo(ori,faceinfo)){
                    try {
                        camera.setPreviewCallback(FaceTrackActivity.this);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }else {
                  //  Toast.makeText(FaceTrackActivity.this,"consumed",Toast.LENGTH_SHORT).show();

                }*/

            }
        });
    }
 
源代码18 项目: Zom-Android-XMPP   文件: QrCodeDecoder.java
private void askForPreviewFrame(Camera camera) {
	if(!stopped) camera.setPreviewCallback(this);
}
 
源代码19 项目: CSipSimple   文件: CameraUtils5.java
@Override
public void setCallback(VideoCaptureAndroid captureAndroid, int numCaptureBuffers, int bufSize,
        Camera camera) {

    camera.setPreviewCallback(captureAndroid);
}
 
源代码20 项目: MegviiFacepp-Android-SDK   文件: ICamera.java
public static ArrayList<HashMap<String, Integer>> getCameraPreviewSize(
		int cameraId) {
	ArrayList<HashMap<String, Integer>> size = new ArrayList<HashMap<String, Integer>>();
	Camera camera = null;
	try {
		camera = Camera.open(cameraId);
		if (camera == null)
			camera = Camera.open(0);

		List<Camera.Size> allSupportedSize = camera.getParameters()
				.getSupportedPreviewSizes();
		for (Camera.Size tmpSize : allSupportedSize) {
			if (tmpSize.width > tmpSize.height) {
				HashMap<String, Integer> map = new HashMap<String, Integer>();
                   map.put("width", tmpSize.width);
                   map.put("height", tmpSize.height);
                   if (tmpSize.width==640&&tmpSize.height==480){
                       size.add(map);
                   }
                   if (tmpSize.width==960&&tmpSize.height==540){
                       size.add(map);
                   }
                   if (tmpSize.width==1280&&tmpSize.height==720){
                       size.add(map);
                   }
                   if (tmpSize.width==1920&&tmpSize.height==1080){
                       size.add(map);
                   }

			}
		}

	} catch (Exception e) {
		e.printStackTrace();
	} finally {
		if (camera != null) {
			camera.stopPreview();
			camera.setPreviewCallback(null);
			camera.release();
			camera = null;
		}
	}

	return size;
}