我正在寻找一个在android的camera2中手动对焦的例子。
我试图得到最小焦距和可用焦距如下所示,但没有帮助。如何控制焦距?
float minimumLens = characteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
float[] lensDistances = characteristics.get(CameraCharacteristics.LENS_INFO_AVAILABLE_FOCAL_LENGTHS);
我需要用seekbar来控制它。
提前谢谢。
最佳答案
switch (seekBar.getId()) {
case R.id.sb_focus:
float minimumLens = mCameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
float num = (((float) i) * minimumLens / 100);
mPreviewBuilder.set(CaptureRequest.LENS_FOCUS_DISTANCE, num);
int showNum = (int) num;
mSeekBarTextView.setText("focus:" + showNum);
break;}
小心,控制模式应该关闭。
https://github.com/pinguo-yuyidong/Camera2/blob/master/app/src/main/java/us/yydcdut/androidltest/ui/DisplayFragment.java
1109行代码