Sprache

ImageWriter.DequeueInputImage Methode

Definition

Dequeue the next available input Image for the application to produce data into.

[Android.Runtime.Register("dequeueInputImage", "()Landroid/media/Image;", "GetDequeueInputImageHandler", ApiSince=23)]
public virtual Android.Media.Image? DequeueInputImage();
[<Android.Runtime.Register("dequeueInputImage", "()Landroid/media/Image;", "GetDequeueInputImageHandler", ApiSince=23)>]
abstract member DequeueInputImage : unit -> Android.Media.Image
override this.DequeueInputImage : unit -> Android.Media.Image

Gibt zurück

Das nächste verfügbare Eingabebild von diesem ImageWriter.

Attribute

Hinweise

Dequeue the next available input Image for the application to produce data into.

Diese Methode fordert eine neue Eingabe von ImageWriter an. Die Anwendung besitzt dieses Image nach diesem Aufruf. Sobald die Anwendung die Bilddaten ausfüllt, wird davon ausgegangen, dass dieses Image für nachgeschaltete Consumerkomponenten (z. B. android.hardware.camera2.CameraDevice) wieder an ImageWriter zurückgesetzt wird. Das Bild kann über #queueInputImage oder Image#close()an ImageWriter zurückgegeben werden.

Dieser Aufruf wird blockiert, wenn alle verfügbaren Eingabebilder von der Anwendung in die Warteschlange gestellt wurden und der nachgeschaltete Consumer noch keines verbraucht hat. Wenn ein Bild vom nachgeschalteten Consumer verbraucht und losgelassen wird, wird ein OnImageReleasedListener#onImageReleased Rückruf ausgelöst, der angibt, dass ein Eingabebild verfügbar ist. Bei Nichtformaten ImageFormat#PRIVATE PRIVATE ( ImageWriter#getFormat() != ImageFormat#PRIVATE) wird empfohlen, das nächste Bild nur nach dem Auslösen dieses Rückrufs im stabilen Zustand aufzurufen.

Wenn das Format von ImageWriter (ImageFormat#PRIVATEImageWriter#getFormat() == ) lautet ImageFormat#PRIVATE PRIVATE , kann auf den Bildpuffer nur über den hardwarebasierten Puffer zugegriffen werden, der über Image#getHardwareBuffer()die Anwendung abgerufen wird. (Bei Android-Versionen vor P wird die Dequeueing privater Puffer ausgelöst IllegalStateException . Alternativ kann die Anwendung Bilder aus einer anderen Komponente (z. B. einem ImageReader) abrufen und über die Methode direkt an diesen ImageWriter in die ImageWriter#queueInputImage queueInputImage() Warteschlange stellen.

Java Dokumentation für android.media.ImageWriter.dequeueInputImage().

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: