Sto tentando di creare un'applicazione che scatta alcune foto da un servizio utilizzando l'API camera2.Camera2 API onCaptureComplete() viene chiamato ma lo stato della videocamera è ancora CONTROL_AE_STATE_PRECAPTURE
Posso ottenere l'immagine per scattare foto da un frammento basato sullo Camera2Basic sample.
Ma quando provo a passare a un servizio, l'immagine non termina correttamente l'acquisizione. Non progredisce mai oltre lo stato di pre-esposizione dell'autoesposizione.
L'ho ristretto ad alcuni problemi con non avere un'anteprima. Ho assemblato un frammento di prova prendendo il codice Camera2Basic e rimuovendo l'anteprima, il che si traduce nello stesso problema.
Ho messo insieme un frammento di test che presenta il problema, basato sull'esempio di Camera2Basic in cui ho praticamente rimosso il codice per l'anteprima. Codice del frammento caricato qui http://pastebin.ca/3182401.
sto ottenendo il callback onCaptureCompleted() ma quando posso controllare lo stato della macchina fotografica esposizione automatica qui, è ancora in CONTROL_AE_STATE_PRECAPTURE Stato.
Non ha senso per me che l'acquisizione sia completata se uno degli stati della videocamera è ancora in precapture.
Qualcuno sa cosa potrebbe accadere qui?
È possibile che dopo aver scattato una foto, la fotocamera ritorni allo stato precapato per preparare la foto successiva? – Jani
Non dovrebbe essere il caso. La documentazione dice che dovrebbe bloccare lo stato CONVERGED o FLASH_REQUIRED. Quindi rimane bloccato finché non viene scattata una foto o l'applicazione invia una richiesta con android.control.aeLock == true, seguito da una richiesta con android.control.aeLock == false https://developer.android.com/reference/ android/hardware/camera2/CaptureRequest.html # CONTROL_AE_PRECAPTURE_TRIGGER – user2128112
sto ottenendo sempre "CONTROL_AE_STATE'. Qualche idea del perché? sto usando lo stesso campione. E provato su più dispositivi. – iMDroid