CameraCaptureSession.StateCallback.OnCaptureQueueEmpty Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Esse método é chamado quando a fila de captura de entrada do dispositivo da câmera fica vazia e está pronta para aceitar a próxima solicitação.
[Android.Runtime.Register("onCaptureQueueEmpty", "(Landroid/hardware/camera2/CameraCaptureSession;)V", "GetOnCaptureQueueEmpty_Landroid_hardware_camera2_CameraCaptureSession_Handler", ApiSince=26)]
public virtual void OnCaptureQueueEmpty (Android.Hardware.Camera2.CameraCaptureSession session);
[<Android.Runtime.Register("onCaptureQueueEmpty", "(Landroid/hardware/camera2/CameraCaptureSession;)V", "GetOnCaptureQueueEmpty_Landroid_hardware_camera2_CameraCaptureSession_Handler", ApiSince=26)>]
abstract member OnCaptureQueueEmpty : Android.Hardware.Camera2.CameraCaptureSession -> unit
override this.OnCaptureQueueEmpty : Android.Hardware.Camera2.CameraCaptureSession -> unit
Parâmetros
- session
- CameraCaptureSession
A sessão retornada por #onConfigured
- Atributos
Comentários
Esse método é chamado quando a fila de captura de entrada do dispositivo da câmera fica vazia e está pronta para aceitar a próxima solicitação.
As solicitações de captura pendentes existem em uma das duas filas: a fila em voo, onde as solicitações já estão em diferentes estágios do pipeline de processamento, e uma fila de entrada, onde as solicitações aguardam para entrar na fila em voo. A fila de entrada é necessária porque mais solicitações podem ser enviadas do que a profundidade atual do pipeline do dispositivo da câmera.
Esse retorno de chamada é acionado quando a fila de entrada fica vazia e o dispositivo da câmera pode ter que retornar à solicitação de repetição, se definida, ou ignorar completamente o próximo quadro do sensor. Isso pode causar falhas na saída de visualização da câmera, por exemplo. Esse retorno de chamada só será acionado após solicitações enfileiradas por capture() ou captureBurst(), não depois que uma solicitação repetida ou intermitência entrar na fila de voo. Por exemplo, no caso comum de uma solicitação repetida e uma captura JPEG de captura única, esse retorno de chamada só é acionado quando a solicitação JPEG entra na fila de voo para captura.
Enviando apenas um novo #capture
ou #captureBurst
quando a fila de entrada estiver vazia, a latência do pipeline pode ser minimizada.
Esse retorno de chamada não é acionado quando a sessão é criada pela primeira vez. Ele é diferente do #onReady
, que é acionado quando todas as solicitações em ambas as filas foram processadas.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.