本教程涵盖了视频人脸制作流程,屏幕闪烁原理,基础人脸验证原理。
例子:
开启相机: mCamera = Camera.open(mFrontCameraId); mFrontCameraId表示相机的id,例如前置摄像头id为1,后置摄像头id为2.
/**
开启指定摄像头
*/
private void openCamera() {
if (mCamera != null) {
throw new RuntimeException("相机已经被开启,无法同时开启多个相机实例!");
} if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED) {
if (hasFrontCamera()) {
// 优先开启前置摄像头
mCamera = Camera.open(mFrontCameraId);
} else if (hasBackCamera()) {
// 没有前置,就尝试开启后置摄像头
mCamera = Camera.open(mBackCameraId);
} else {
throw new RuntimeException("没有任何相机可以开启!");
}
}
}
关闭相机: mCamera.release();