3

私は Android で Camera API 2 を使用しており、オート フォーカス機能を適用しようとしています。オート フォーカスは、バック カメラでは正常に機能しますが、フロント カメラでは機能しません。

(Android 5.1 および 6.0 デバイスを使用しています)

詳細:

これは、オート フォーカスを開始するトリガーです。

mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START);

これは CameraCaptureSession.CaptureCallback です

 Integer afState = result.get(CaptureResult.CONTROL_AF_STATE);

フロントカメラを使用している場合、afState の値は常に 0 (INACTIVE) です。ただし、背面カメラでは、その値は 2 (CONTROL_AF_STATE_PASSIVE_FOCUSED - フォーカスを試みる) から 4 (フォーカスが成功した場合は CONTROL_AF_STATE_FOCUSED_LOCKED) または 5 (フォーカスが失敗した場合は CONTROL_AF_STATE_NOT_FOCUSED_LOCKED) に変更されます。

フロントカメラでオートフォーカスを使用できない理由について何か考えがありますか?

4

1 に答える 1

9

あなたのフロントカメラにはオートフォーカスがないと思います。これを確認するには、実行できます

int[] afAvailableModes = cameraCharacteristics.get(CameraCharacteristics.CONTROL_AF_AVAILABLE_MODES);

使用可能な AF モードが のみの場合はCameraMetadata.CONTROL_AF_MODE_OFF、カメラに固定焦点レンズが搭載されていることを意味します。ドキュメントによると、いつandroid.control.afModeであるAF_MODE_OFFAF_MODE_EDOF、状態は常に残りINACTIVEます。

于 2016-09-02T15:26:09.263 に答える