Lingua

ImageWriter.QueueInputImage(Image) Metodo

Definizione

Accoda un input Image a ImageWriter per consentire all'utente downstream di accedere.

[Android.Runtime.Register("queueInputImage", "(Landroid/media/Image;)V", "GetQueueInputImage_Landroid_media_Image_Handler", ApiSince=23)]
public virtual void QueueInputImage(Android.Media.Image? image);
[<Android.Runtime.Register("queueInputImage", "(Landroid/media/Image;)V", "GetQueueInputImage_Landroid_media_Image_Handler", ApiSince=23)>]
abstract member QueueInputImage : Android.Media.Image -> unit
override this.QueueInputImage : Android.Media.Image -> unit

Parametri

image
Image

Immagine da accodare nuovamente a ImageWriter per un utilizzo futuro.

Attributi

Commenti

Accoda un input Image a ImageWriter per consentire all'utente downstream di accedere.

L'input Image può essere da ImageReader (acquisito tramite ImageReader#acquireNextImage o ImageReader#acquireLatestImage) o da questo ImageWriter (acquisito tramite #dequeueInputImage). Nel caso precedente, i dati immagine verranno spostati in imagewriter. Si noti che le proprietà Image (size, format, strides e così via) devono essere uguali alle proprietà delle immagini dequeued da questo ImageWriter. Nel secondo caso, l'applicazione ha riempito l'immagine di input con i dati. Questo metodo passa quindi il buffer riempito al consumer downstream. In entrambi i casi, spetta al chiamante assicurarsi che il timestamp dell'immagine (in nanosecondi) sia impostato correttamente, perché il componente downstream potrebbe voler usarlo per indicare il tempo di acquisizione dei dati immagine.

Dopo che questo metodo viene chiamato e il consumer downstream utilizza e rilascia l'immagine, verrà generato un OnImageReleasedListener#onImageReleased callback. L'applicazione può usare questo callback per evitare di inviare immagini più velocemente della velocità di elaborazione consumer downstream in stato stabile.

Il passaggio di un'immagine da un altro componente ( ad esempio , ImageReader) richiede un'immagine di input gratuita da questo ImageWriter come destinazione. In questo caso, questa chiamata verrà bloccata, come #dequeueInputImage accade, se non sono disponibili immagini gratuite. Per evitare il blocco, l'applicazione deve assicurarsi che sia disponibile almeno un'immagine gratuita in questo ImageWriter prima di chiamare questo metodo.

Dopo questa chiamata, l'immagine di input non è più valida per un ulteriore accesso, come se l'immagine fosse Image#close closed. Se si tenta di accedere all'oggetto ByteBuffer ByteBuffers restituito da una chiamata precedente Image.Plane#getBuffer Plane#getBuffer , verrà generato un oggetto IllegalStateException.

per android.media.ImageWriter.queueInputImage(android.media.Image).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a