Kamera2 API-Autofokus mit Samsung S5

Arbeite ich mit der neuen Kamera 2 API auf ein Samsung S5. Die unterstützten hardware-Ebene dieses Gerät ist für die Berichterstattung ist LEGACY, was in Ordnung ist.

Aber ich kann nicht scheinen zu werden in der Lage, auto-Fokus auf dieses Gerät. Die Anforderung auszulösen, auto-Fokus, sieht wie folgt aus:

previewRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_AUTO);
previewRequestBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CaptureRequest.CONTROL_AF_TRIGGER_START);
state = STATE_PREVIEW;
try {
  captureSession.setRepeatingRequest(previewRequestBuilder.build(), captureCallback, backgroundHandler);
} catch (CameraAccessException e) {
  e.printStackTrace();
}

Nachdem die Anfrage gesendet wird, wird das Ergebnis der Anfrage ist immer CONTROL_AF_STATE_ACTIVE_SCAN und gelegentlich CONTROL_AF_STATE_NOT_FOCUSED_LOCKED.

Das merkwürdige ist, dass, wenn der Staat CONTROL_AF_STATE_NOT_FOCUSED_LOCKED die auto-Fokus geht wieder in den CONTROL_AF_STATE_ACTIVE_SCAN Zustand für eine Weile und dann zurück zu CONTROL_AF_STATE_NOT_FOCUSED_LOCKED, was in einer unendlich-Schleife. Laut der docs, wenn der Zustand ist CONTROL_AF_STATE_NOT_FOCUSED_LOCKED...

Das Objektiv wird stationär bleiben, bis die AF-Modus (android.Kontrolle.afMode) geändert wird oder ein neuer AF-trigger gesendet wird, um die Kamera-Gerät (android.Kontrolle.afTrigger).

Frage ich mich, ob diese Diskrepanz ist aufgrund der Tatsache, dass der hardware-Ebene ist LEGACY und dass ich zurückgehen sollte, um mit der veralteten Kamera-API, aber das scheint verrückt für eine so weit verbreitete Features wie Autofokus.

Gibt es jede reccomendations, wie zu behandeln, wie Geräte, die Berichterstattung LEGACY?

Hast du dieses Problem lösen?

InformationsquelleAutor Alex Fu | 2015-11-25

Schreibe einen Kommentar