ImageWriter Classe
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.
A classe ImageWriter permite que um aplicativo produza dados de imagem em um android.view.Surface
, e que eles sejam consumidos por outro componente, 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
- Herança
- Atributos
- Implementações
Comentários
A classe ImageWriter permite que um aplicativo produza dados de imagem em um android.view.Surface
, e que eles sejam consumidos por outro componente, como android.hardware.camera2.CameraDevice CameraDevice
.
Várias classes de API do Android podem fornecer objetos de entrada android.view.Surface Surface
para o ImageWriter produzir dados, incluindo MediaCodec MediaCodec
(codificador), android.hardware.camera2.CameraCaptureSession CameraCaptureSession
(entrada de reprocessamento), ImageReader
etc.
Os dados de imagem de entrada são encapsulados em Image
objetos. Para produzir dados de imagem em um destino android.view.Surface Surface
, o aplicativo pode obter uma imagem de entrada por meio de #dequeueInputImage
gravação de dados de imagem nele. Vários desses Image
objetos podem ser desenfileirados ao mesmo tempo e enfileirados de volta em qualquer ordem, até o número especificado pelo parâmetro do maxImages
construtor.
Se o aplicativo já tiver uma Imagem do , o aplicativo poderá enfileirar diretamente essa Imagem no ImageWriter (via #queueInputImage
), potencialmente com zero cópias de ImageReader
buffer. Isso funciona mesmo se o formato de imagem do ImageWriter for ImageFormat#PRIVATE PRIVATE
, e antes do Android P é a única maneira de enfileirar imagens em tal ImageWriter. A partir do Android P, imagens privadas também podem ser acessadas através de seus buffers de hardware (quando disponíveis) através do Image#getHardwareBuffer()
método. A tentativa de acessar os planos de uma imagem privada retornará uma matriz vazia.
Depois que novas Imagens de entrada são enfileiradas em um ImageWriter, cabe aos componentes downstream (por exemplo, ou android.hardware.camera2.CameraDevice
) consumir as Imagens. ImageReader
Se os componentes downstream não puderem consumir as imagens pelo menos tão rápido quanto a taxa de produção do ImageWriter, a #dequeueInputImage
chamada acabará sendo bloqueada e o aplicativo terá que descartar os quadros de entrada.
Se o componente de consumidor que forneceu a entrada android.view.Surface Surface
abandonar o android.view.Surface Surface
, #queueInputImage queueing
ou #dequeueInputImage dequeueing
um Image
lançará um IllegalStateException
arquivo .
Documentação Java para android.media.ImageWriter
.
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.
Construtores
ImageWriter(IntPtr, JniHandleOwnership) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Propriedades
Class |
Retorna a classe de tempo de execução deste |
DataSpace |
Obtenha o espaço de dados do ImageWriter. |
Format |
Obtenha o formato ImageWriter. |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
HardwareBufferFormat |
Obtenha o formato hardwareBuffer do ImageWriter. |
Height |
A altura de |
JniIdentityHashCode |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
JniPeerMembers |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
MaxImages |
Número máximo de imagens que podem ser desenfileiradas do ImageWriter simultaneamente (por exemplo, com |
PeerReference |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
ThresholdClass |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
ThresholdType |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Usage |
Obtenha o sinalizador de uso do ImageWriter. |
Width |
A largura de |
Métodos
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Close() |
Libere todos os recursos associados a este ImageWriter. |
DequeueInputImage() |
Descoloque na fila a próxima imagem de entrada disponível para o aplicativo produzir dados. |
Dispose() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Dispose(Boolean) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Equals(Object) |
Indica se algum outro objeto é "igual" a este. (Herdado de Object) |
GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
NewInstance(Surface, Int32) |
Crie um novo ImageWriter. |
NewInstance(Surface, Int32, ImageFormatType) |
Crie um novo ImageWriter com determinado número máximo de imagens e formato. |
Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
QueueInputImage(Image) |
Enfileire uma entrada |
SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle. (Herdado de Object) |
SetOnImageReleasedListener(ImageWriter+IOnImageReleasedListener, Handler) |
Registre um ouvinte a ser chamado quando uma imagem de entrada for retornada ao ImageWriter. |
ToArray<T>() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Wait() |
Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>. (Herdado de Object) |
Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.DisposeUnlessReferenced() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.Finalized() |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.JniManagedPeerState |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
IJavaPeerable.SetPeerReference(JniObjectReference) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |
GetJniTypeName(IJavaPeerable) |
A classe ImageWriter permite que um aplicativo produza dados de imagem em um |