ImageWriter 类

定义

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 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
继承
ImageWriter
属性
实现

注解

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

多个 Android API 类可以为 ImageWriter 提供输入 android.view.Surface Surface 对象,以便将数据生成到( MediaCodec MediaCodec 编码器)、 android.hardware.camera2.CameraCaptureSession CameraCaptureSession (重新处理输入) ImageReader等中。

输入图像数据封装在对象中 Image 。 若要将图像数据生成到目标 android.view.Surface Surface中,应用程序可以通过将图像数据写入其中来获取输入图像 #dequeueInputImage 。 可以同时取消排队多个此类 Image 对象,并按任意顺序排回队列,最多排入构造函数参数指定的 maxImages 数字。

如果应用程序已有映像, ImageReader则应用程序可以直接将此映像排入 ImageWriter(通过 #queueInputImage),可能具有零个缓冲区副本。 即使 ImageWriter 的图像格式是 ImageFormat#PRIVATE PRIVATE,在 Android P 之前,将图像排入此类 ImageWriter 的唯一方法是执行此操作。 从 Android P 专用映像开始,也可以通过方法通过硬件缓冲区(可用时)访问 Image#getHardwareBuffer() 。 尝试访问专用映像的平面时,将返回一个空数组。

将新的输入映像排队到 ImageWriter 中后,由下游组件(例如 ImageReaderandroid.hardware.camera2.CameraDevice)来使用图像。 如果下游组件不能至少使用与 ImageWriter 生产速率一样快的映像,则 #dequeueInputImage 调用最终将阻止,并且应用程序必须删除输入帧。

如果提供的使用者组件放弃输入android.view.Surface Surfaceandroid.view.Surface Surface#queueInputImage queueing#dequeueInputImage dequeueingImage将引发 。IllegalStateException

适用于 . 的 android.media.ImageWriterJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

构造函数

ImageWriter(IntPtr, JniHandleOwnership)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
DataSpace

获取 ImageWriter 数据空间。

Format

获取 ImageWriter 格式。

Handle

基础 Android 实例的句柄。

(继承自 Object)
HardwareBufferFormat

获取 ImageWriter hardwareBuffer 格式。

Height

的高度 Image Images(以像素为单位)。

JniIdentityHashCode

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
JniPeerMembers

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

MaxImages

可以同时从 ImageWriter 中取消排队的最大图像数(例如,使用 #dequeueInputImage())。

PeerReference

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
ThresholdClass

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

ThresholdType

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

Usage

获取 ImageWriter 使用情况标志。

Width

Image Images宽度(以像素为单位)。

方法

Clone()

创建并返回此对象的副本。

(继承自 Object)
Close()

释放与此 ImageWriter 关联的所有资源。

DequeueInputImage()

取消将应用程序的下一个可用输入映像排入队列以生成数据。

Dispose()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
Dispose(Boolean)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
NewInstance(Surface, Int32)

创建新的 ImageWriter。

NewInstance(Surface, Int32, ImageFormatType)

使用给定数目的最大图像和格式创建新的 ImageWriter。

Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
QueueInputImage(Image)

将输入 Image 排回 ImageWriter,供下游使用者访问。

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
SetOnImageReleasedListener(ImageWriter+IOnImageReleasedListener, Handler)

注册在输入图像返回到 ImageWriter 时要调用的侦听器。

ToArray<T>()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em> 或 <em>interrupted</em>。<><

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)

显式接口实现

IJavaPeerable.Disposed()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.Finalized()

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

GetJniTypeName(IJavaPeerable)

ImageWriter 类允许应用程序将图像数据生成到其中 android.view.Surface,并让其他组件(例如 android.hardware.camera2.CameraDevice CameraDevice)使用它。

适用于