Freigeben über


CameraCaptureSession.StateCallback.OnCaptureQueueEmpty Methode

Definition

Diese Methode wird aufgerufen, wenn die Eingabeerfassungswarteschlange des Kamerageräts leer wird und bereit ist, die nächste Anforderung zu akzeptieren.

[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

Parameter

session
CameraCaptureSession

Die von der Sitzung zurückgegebene Sitzung #onConfigured

Attribute

Hinweise

Diese Methode wird aufgerufen, wenn die Eingabeerfassungswarteschlange des Kamerageräts leer wird und bereit ist, die nächste Anforderung zu akzeptieren.

Ausstehende Erfassungsanforderungen sind in einer von zwei Warteschlangen vorhanden: die In-Flight-Warteschlange, in der Sich Anforderungen bereits in verschiedenen Phasen der Verarbeitungspipeline befinden, und eine Eingabewarteschlange, in der Anforderungen warten, um die In-Flight-Warteschlange einzugeben. Die Eingabewarteschlange ist erforderlich, da möglicherweise mehr Anforderungen übermittelt werden als die aktuelle Pipelinetiefe des Kamerageräts.

Dieser Rückruf wird ausgelöst, wenn die Eingabewarteschlange leer wird, und das Kameragerät muss ggf. auf die wiederholte Anforderung zurückgreifen, falls festgelegt, oder den nächsten Frame vollständig vom Sensor überspringen. Dies kann z. B. zu Störungen bei der Kameravorschau-Ausgabe führen. Dieser Rückruf wird nur ausgelöst, nachdem Anforderungen, die nach capture() oder captureBurst() in die Warteschlange eingereiht wurden, nicht nach einer wiederholten Anforderung oder einem Burst in die In-Flight-Warteschlange gelangt. In dem üblichen Fall einer wiederholten Anforderung und einer JPEG-Aufnahme mit einem Einzigen Schuss wird dieser Rückruf nur ausgelöst, wenn die JPEG-Anforderung zur Aufnahme in die In-Flight-Warteschlange eingegeben wurde.

Durch das Senden einer neuen #capture oder #captureBurst wenn die Eingabewarteschlange leer ist, kann die Pipelinelatenz minimiert werden.

Dieser Rückruf wird nicht ausgelöst, wenn die Sitzung zum ersten Mal erstellt wird. Es unterscheidet sich von #onReadydem, was ausgelöst wird, wenn alle Anforderungen in beiden Warteschlangen verarbeitet wurden.

Java-Dokumentation für android.hardware.camera2.CameraCaptureSession.StateCallback.onCaptureQueueEmpty(android.hardware.camera2.CameraCaptureSession).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: