Avvia la messa a fuoco automatica, la routine di richiamata della notifica viene chiamata con CAMERA_MSG_FOCUS una volta al termine della messa a fuoco. autoFocus() verrà chiamato di nuovo se è necessaria un'altra messa a fuoco automatica.
Annulla la funzione di messa a fuoco automatica. Se la messa a fuoco automatica è ancora in corso, questa funzione la annullerà. Indipendentemente dal fatto che la messa a fuoco automatica sia in corso o meno, questa funzione riporterà la posizione di messa a fuoco all'impostazione predefinita. Se la fotocamera non supporta la messa a fuoco automatica, questo è un no-op.
Dopo aver ricevuto una chiamata per disabilitareMsgType(CAMERA_MSG_VIDEO_FRAME), la telecamera HAL non deve fare affidamento sul proprio client per chiamare releaseRecordingFrame() per rilasciare fotogrammi di registrazione video inviati dall'HAL della telecamera prima e dopo la chiamata disableMsgType(CAMERA_MSG_VIDEO_FRAME). I client HAL della telecamera non devono modificare/accedere a nessun fotogramma di registrazione video dopo aver chiamato disableMsgType(CAMERA_MSG_VIDEO_FRAME).
Le tre funzioni seguenti accettano tutte un tipo_msg, che è una maschera di bit dei messaggi definiti in include/ui/Camera.h Abilita un messaggio o un insieme di messaggi.
Recupera i parametri della fotocamera. Il buffer restituito dalla telecamera HAL deve essere restituito ad esso con put_parameters, se put_parameters non è NULL.
Domanda se un messaggio o un insieme di messaggi è abilitato. Si noti che funziona come AND, se uno qualsiasi dei messaggi interrogati è disattivato, verrà restituito false.
La telecamera HAL utilizza la propria memoria per passarci i parametri quando chiamiamo get_parameters. Utilizzare questa funzione per restituire la memoria alla telecamera HAL, se put_parameters non è NULL. Se put_parameters è NULL, allora devi usare free() per rilasciare la memoria.
Rilascia un frame di record precedentemente restituito da CAMERA_MSG_VIDEO_FRAME.
È responsabilità del client HAL della telecamera rilasciare i frame di registrazione video inviati dalla telecamera HAL prima che quest'ultima riceva una chiamata per disabilitareMsgType(CAMERA_MSG_VIDEO_FRAME). Dopo aver ricevuto la chiamata per disabilitareMsgType(CAMERA_MSG_VIDEO_FRAME), è responsabilità della telecamera HAL gestire il ciclo di vita dei frame di registrazione video.
Avvia la modalità di registrazione. Quando è disponibile un'immagine registrata, viene inviato un messaggio CAMERA_MSG_VIDEO_FRAME con il frame corrispondente. Ogni frame di record deve essere rilasciato da un client HAL della telecamera tramite releaseRecordingFrame() prima che il client chiami disableMsgType(CAMERA_MSG_VIDEO_FRAME). Dopo che il client ha chiamato disableMsgType(CAMERA_MSG_VIDEO_FRAME), è responsabilità della telecamera HAL gestire il ciclo di vita dei frame di registrazione video e il client non deve modificare/accedere ad alcun frame di registrazione video.
int(* store_meta_data_in_buffers)(struct camera_device *, int enable)
Richiedi alla telecamera HAL di memorizzare metadati o dati YUV reali nei buffer video inviati tramite CAMERA_MSG_VIDEO_FRAME per una sessione di registrazione. Se non viene chiamato, il comportamento HAL predefinito della telecamera è di memorizzare i dati YUV reali nei buffer video.
Questo metodo dovrebbe essere chiamato prima di startRecording() per essere efficace.
Se i metadati sono archiviati nei buffer video, spetta al ricevitore dei buffer video interpretare i contenuti e trovare i dati del frame effettivo con l'aiuto dei metadati nel buffer. Il modo in cui ciò avviene è al di fuori dell'ambito di questo metodo.
Alcuni HAL delle telecamere potrebbero non supportare la memorizzazione dei metadati nei buffer video, ma tutti gli HAL delle telecamere dovrebbero supportare la memorizzazione dei dati YUV reali nei buffer video. Se la telecamera HAL non supporta la memorizzazione dei metadati nei buffer video quando viene richiesto di farlo, è necessario restituire INVALID_OPERATION. È molto utile che l'HAL della telecamera trasmetta i metadati anziché i dati dei fotogrammi effettivi direttamente al codificatore video, poiché la quantità di dati dei fotogrammi non compressi può essere molto grande se le dimensioni del video sono elevate.
Parametri
abilitare
se true per indicare all'HAL della telecamera di memorizzare i metadati nei buffer video; false per indicare alla telecamera HAL di memorizzare i dati YUV reali nei buffer video.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2019-10-02 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Mancano le informazioni di cui ho bisogno"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Troppo complicato/troppi passaggi"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Obsoleti"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problema di traduzione"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Problema relativo a esempi/codice"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Altra"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Facile da capire"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Il problema è stato risolto"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Altra"
}]