我试过谷歌的android-Camera2Basic示例应用程序。对于前置摄像头的工作,我已经在Camera2BasicFragment中修改了一些代码。这些变化如下。
为了切换到前置摄像头,我在mCameraId = cameraId;方法中将mCameraId = "1";改为了setUpCameraOutputs(int width, int height)方法。
并在setUpCameraOutputs(int width, int height)的末尾添加了if条件,
if(mCameraId == null)
mCameraId = cameraId;这一变化显示前相机完美,但没有选择的照片。所以我换了
mCaptureSession.capture(mPreviewRequestBuilder.build(), mCaptureCallback,
mBackgroundHandler);至
captureStillPicture();在lockFocus()中。现在,前面的相机选择照片,但它看起来倒过来了。
前任:

我现在不知道该怎么办了。
我的要求是使用camera2 api在两个摄像机中捕获照片。所以如果我做错了什么,请纠正我。
在一些设备中,这个应用程序只需一次点击就可以获得多张照片。
发布于 2017-09-11 05:40:05
删除以下条件,全局初始化默认摄像机,并删除for循环。
if(mCameraId == null) {
mCameraId = cameraId;
}发布于 2017-09-04 07:40:47
刚刚从setUpCameraOutputs中删除了setUpCameraOutputs循环,也删除了if(mCameraId == null) mCameraId = cameraId;。
现在问题已经解决了。
谢谢
发布于 2018-10-17 13:12:53
最简单的解决办法是
captureBuilder.set(CaptureRequest.JPEG_ORIENTATION,0);
https://stackoverflow.com/questions/45982524
复制相似问题