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 类可以提供 android.view.Surface Surface 输入对象供 ImageWriter 将数据生成到其中,包括 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 Surface的使用者组件放弃 ,android.view.Surface Surface#queueInputImage queueing#dequeueInputImage dequeueingImage 将引发 IllegalStateException

android.media.ImageWriterJava 文档。

此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。

构造函数

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)使用它。

适用于