camera2api
을 사용하여 focus
에 탭을 구현하려고합니다. 내 전화에서안드로이드 카메라 2 초점 맞추기
CaptureRequest.Builder afBuilder = mPreviewBuilder;
Rect newRect=new Rect(0,0,200,200);
MeteringRectangle meteringRectangle=new MeteringRectangle(newRect,METERING_WEIGHT_DONT_CARE);
MeteringRectangle[] areas = afBuilder.get(CaptureRequest.CONTROL_AF_REGIONS);
mPreviewBuilder.set(CaptureRequest.CONTROL_AF_REGIONS,areas);
mPreviewBuilder.set(CaptureRequest.CONTROL_AF_MODE, CameraMetadata.CONTROL_AF_MODE_AUTO);
mPreviewBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START);
mPreviewSession.setRepeatingRequest(mPreviewBuilder.build(), mCaptureCallback, mBackgroundHandler);
다시 나는 지속적으로 ACTIVE_SCAN
상태에 갇히지하고 때때로 FOCUS_NOT_LOCKED
상태가됩니다. 나는 결코 FOCUS_LOCKED
상태에 빠진 것처럼 보이지 않으며 미리보기는 결코 집중되지 않습니다. 방금 mPreviewBuilder에서 기본 영역을 재사용하고 - 삼성 갤럭시 노트 하나 3.
나는'java.lang.IllegalArgumentException : rect.left가 음수가 아니어야한다 '를 가져왔다. 제발 날 안내해 주 시겠어요! –
이것에 대한 새로운 질문을 시작할 가치가 있습니다. 이슈, 코드 샘플 등에 관한 더 자세한 정보가 있습니까? –
'SENSOR_INFO_ACTIVE_ARRAY_SIZE'를 사용하여 해결되었습니다. 나는 오래된 카메라 코드를 새로운'Camera2'' MeteringRectangle'와 혼합했다. –