Compartir a través de


ImageWriter Clase

Definición

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

[Android.Runtime.Register("android/media/ImageWriter", ApiSince=23, DoNotGenerateAcw=true)]
public class ImageWriter : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IAutoCloseable
[<Android.Runtime.Register("android/media/ImageWriter", ApiSince=23, DoNotGenerateAcw=true)>]
type ImageWriter = class
    inherit Object
    interface IAutoCloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
ImageWriter
Atributos
Implementaciones

Comentarios

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

Varias clases de API de Android pueden proporcionar objetos de entrada android.view.Surface Surface para que ImageWriter genere datos, incluidos MediaCodec MediaCodec (codificador), android.hardware.camera2.CameraCaptureSession CameraCaptureSession (reprocesamiento de entrada), ImageReader, etc.

Los datos de la imagen de entrada se encapsulan en Image objetos . Para generar datos de imagen en un destino android.view.Surface Surface, la aplicación puede obtener una imagen de entrada a través #dequeueInputImage de después escribir datos de imagen en él. Se pueden quitar varios objetos de este Image tipo al mismo tiempo y ponerlos en cola en cualquier orden, hasta el número especificado por el maxImages parámetro constructor.

Si la aplicación ya tiene una imagen de ImageReader, la aplicación puede poner directamente en cola esta imagen en ImageWriter (a través #queueInputImagede ), potencialmente con cero copias de búfer. Esto incluso funciona si el formato de imagen de ImageWriter es ImageFormat#PRIVATE PRIVATEy antes de Android P es la única manera de poner imágenes en cola en este tipo de ImageWriter. A partir de imágenes privadas de Android P también se puede acceder a ellas a través de sus búferes de hardware (cuando estén disponibles) a través del Image#getHardwareBuffer() método . Al intentar acceder a los planos de una imagen privada, se devolverá una matriz vacía.

Una vez que las nuevas imágenes de entrada se ponen en cola en imageWriter, es hasta los componentes de bajada (por ejemplo ImageReader , o android.hardware.camera2.CameraDevice) para consumir las imágenes. Si los componentes de bajada no pueden consumir las imágenes al menos tan rápido como la velocidad de producción de ImageWriter, la #dequeueInputImage llamada finalmente se bloqueará y la aplicación tendrá que quitar fotogramas de entrada.

Si el componente de consumidor que proporcionó la entrada android.view.Surface Surface abandona android.view.Surface Surface, #queueInputImage queueing o #dequeueInputImage dequeueing si Image inicia una IllegalStateExceptionexcepción .

Documentación de Java para android.media.ImageWriter.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

ImageWriter(IntPtr, JniHandleOwnership)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
DataSpace

Obtenga el espacio de datos ImageWriter.

Format

Obtenga el formato ImageWriter.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
HardwareBufferFormat

Obtenga el formato hardwareBuffer de ImageWriter.

Height

Alto de Image Images, en píxeles.

JniIdentityHashCode

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
JniPeerMembers

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

MaxImages

Número máximo de imágenes que se pueden quitar de la cola de ImageWriter simultáneamente (por ejemplo, con #dequeueInputImage()).

PeerReference

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
ThresholdClass

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

ThresholdType

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

Usage

Obtenga la marca de uso imageWriter.

Width

Ancho de Image Images, en píxeles.

Métodos

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Close()

Libere todos los recursos asociados a este ImageWriter.

DequeueInputImage()

Desquee la siguiente imagen de entrada disponible para que la aplicación genere datos.

Dispose()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
Dispose(Boolean)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
NewInstance(Surface, Int32)

Cree una nueva imageWriter.

NewInstance(Surface, Int32, ImageFormatType)

Cree un imageWriter con un número determinado de imágenes y formato máximos.

Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
QueueInputImage(Image)

Poner en cola una entrada Image de nuevo a ImageWriter para que el consumidor de nivel inferior acceda.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetOnImageReleasedListener(ImageWriter+IOnImageReleasedListener, Handler)

Registre un agente de escucha para que se invoque cuando se devuelve una imagen de entrada a ImageWriter.

ToArray<T>()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.Finalized()

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

GetJniTypeName(IJavaPeerable)

La clase ImageWriter permite que una aplicación genere datos de imagen en android.view.Surfacey que otro componente lo consuma como android.hardware.camera2.CameraDevice CameraDevice.

Se aplica a