MultiResolutionImageReader 构造函数

定义

重载

名称 说明
MultiResolutionImageReader(IntPtr, JniHandleOwnership)
MultiResolutionImageReader(ICollection<MultiResolutionStreamInfo>, Int32, Int32)

基于相机设备返回的一组相机流属性创建新的多分辨率读取器。

MultiResolutionImageReader(ICollection<MultiResolutionStreamInfo>, ImageFormatType, Int32, Int64)

基于相机设备返回的一组相机流属性以及所需的格式、最大缓冲区容量和使用者使用标志,创建新的多分辨率读取器。

MultiResolutionImageReader(IntPtr, JniHandleOwnership)

protected MultiResolutionImageReader(IntPtr javaReference, Android.Runtime.JniHandleOwnership transfer);
new Android.Hardware.Camera2.MultiResolutionImageReader : nativeint * Android.Runtime.JniHandleOwnership -> Android.Hardware.Camera2.MultiResolutionImageReader

参数

javaReference
IntPtr

nativeint

适用于

MultiResolutionImageReader(ICollection<MultiResolutionStreamInfo>, Int32, Int32)

基于相机设备返回的一组相机流属性创建新的多分辨率读取器。

[Android.Runtime.Register(".ctor", "(Ljava/util/Collection;II)V", "", ApiSince=31)]
public MultiResolutionImageReader(System.Collections.Generic.ICollection<Android.Hardware.Camera2.Params.MultiResolutionStreamInfo> streams, int format, int maxImages);
[<Android.Runtime.Register(".ctor", "(Ljava/util/Collection;II)V", "", ApiSince=31)>]
new Android.Hardware.Camera2.MultiResolutionImageReader : System.Collections.Generic.ICollection<Android.Hardware.Camera2.Params.MultiResolutionStreamInfo> * int * int -> Android.Hardware.Camera2.MultiResolutionImageReader

参数

streams
ICollection<MultiResolutionStreamInfo>

多分辨率流信息组,用于创建包含多个 ImageReader 对象的多分辨率读取器。 每个 ImageReader 对象表示组中的多分辨率流。

format
Int32

此多分辨率读取器将生成的图像的格式。 这必须是其中 android.graphics.ImageFormat 一个或 android.graphics.PixelFormat 常量。 请注意,并非所有格式都受支持,如 ImageFormat.NV21。 支持的多分辨率读取器格式可以通过 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputFormats查询。

maxImages
Int32

用户希望同时访问的最大图像数。 这应该尽可能小,以限制内存使用。 从任何给定的内部 ImageReader 获取 maxImages 映像后,必须先释放其中一个图像,然后才能通过 ImageReader 或 ImageReader#acquireLatestImage()ImageReader#acquireNextImage()ImageReader 访问。 必须大于 0。

属性

注解

基于相机设备返回的一组相机流属性创建新的多分辨率读取器。

有效大小和格式取决于相机特征。 MultiResolutionImageReader 如果格式采用支持的 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputFormats多分辨率输出流格式,则相机设备支持图像格式。 如果支持图像格式, MultiResolutionImageReader 则可以使用 streams 返回 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputInfo的对象创建对象。

maxImages参数确定可从其中MultiResolutionImageReader每个ImageReader对象获取的最大对象数Image。 但是,请求更多缓冲区会占用更多内存,因此必须仅使用所需的最小数目。 强烈建议应用程序从合并的所有内部 ImageReader 对象中获取不超过 maxImages 图像。 通过跟踪 MultiResolutionImageReader 获取的图像数,应用程序无需对从 ImageReader.OnImageAvailableListener#onImageAvailable onImageAvailable 回调返回的每个内部 ImageReader 执行记账。

与普通 ImageReader 不同,MultiResolutionImageReader 具有更复杂的配置序列。 调用需要用于创建会话的 OutputConfiguration,然后#getSurface用于获取CaptureRequest.Builder#addTarget the target for CaptureRequest,而不是将相同的图面传递给 OutputConfiguration 和 CaptureRequestandroid.hardware.camera2.params.OutputConfiguration#createInstancesForMultiResolutionOutput

Java文档android.hardware.camera2.MultiResolutionImageReader.MultiResolutionImageReader(java.util.Collection<android.hardware.camera2.params.MultiResolutionStreamInfo>, int, int)

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

适用于

MultiResolutionImageReader(ICollection<MultiResolutionStreamInfo>, ImageFormatType, Int32, Int64)

基于相机设备返回的一组相机流属性以及所需的格式、最大缓冲区容量和使用者使用标志,创建新的多分辨率读取器。

[Android.Runtime.Register(".ctor", "(Ljava/util/Collection;IIJ)V", "", ApiSince=36)]
public MultiResolutionImageReader(System.Collections.Generic.ICollection<Android.Hardware.Camera2.Params.MultiResolutionStreamInfo> streams, Android.Graphics.ImageFormatType format, int maxImages, long usage);
[<Android.Runtime.Register(".ctor", "(Ljava/util/Collection;IIJ)V", "", ApiSince=36)>]
new Android.Hardware.Camera2.MultiResolutionImageReader : System.Collections.Generic.ICollection<Android.Hardware.Camera2.Params.MultiResolutionStreamInfo> * Android.Graphics.ImageFormatType * int * int64 -> Android.Hardware.Camera2.MultiResolutionImageReader

参数

streams
ICollection<MultiResolutionStreamInfo>

多分辨率流信息组,用于创建包含多个 ImageReader 对象的多分辨率读取器。 每个 ImageReader 对象表示组中的多分辨率流。

format
ImageFormatType

此多分辨率读取器将生成的图像的格式。 这必须是其中 android.graphics.ImageFormat 一个或 android.graphics.PixelFormat 常量。 请注意,并非所有格式都受支持,如 ImageFormat.NV21。 支持的多分辨率读取器格式可以通过 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputFormats查询。

maxImages
Int32

用户希望同时访问的最大图像数。 这应该尽可能小,以限制内存使用。 从任何给定的内部 ImageReader 获取 maxImages 映像后,必须先释放其中一个图像,然后才能通过 ImageReader 或 ImageReader#acquireLatestImage()ImageReader#acquireNextImage()ImageReader 访问。 必须大于 0。

usage
Int64

内部 ImageReader 生成的映像的预期用法。 有关有效使用位的列表,请参阅其上的 HardwareBuffer 用法。 另 HardwareBuffer#isSupported(int, int, int, int, long) 请参阅检查是否支持组合。 如果不支持,则会引发一个 IllegalArgumentException

属性

注解

基于相机设备返回的一组相机流属性以及所需的格式、最大缓冲区容量和使用者使用标志,创建新的多分辨率读取器。

有效大小和格式取决于相机特征。 MultiResolutionImageReader 如果格式采用支持的 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputFormats多分辨率输出流格式,则相机设备支持图像格式。 如果支持图像格式, MultiResolutionImageReader 则可以使用 streams 返回 android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputInfo的对象创建对象。

maxImages参数确定可从其中MultiResolutionImageReader每个ImageReader对象获取的最大对象数Image。 但是,请求更多缓冲区会占用更多内存,因此必须仅使用所需的最小数目。 强烈建议应用程序从合并的所有内部 ImageReader 对象中获取不超过 maxImages 图像。 通过跟踪 MultiResolutionImageReader 获取的图像数,应用程序无需对从 ImageReader.OnImageAvailableListener#onImageAvailable onImageAvailable 回调返回的每个内部 ImageReader 执行记账。

与普通 ImageReader 不同,MultiResolutionImageReader 具有更复杂的配置序列。 调用需要用于创建会话的 OutputConfiguration,然后#getSurface用于获取CaptureRequest.Builder#addTarget the target for CaptureRequest,而不是将相同的图面传递给 OutputConfiguration 和 CaptureRequestandroid.hardware.camera2.params.OutputConfiguration#createInstancesForMultiResolutionOutput

Java文档android.hardware.camera2.MultiResolutionImageReader.MultiResolutionImageReader(java.util.Collection<android.hardware.camera2.params.MultiResolutionStreamInfo>, int, int, long)

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

适用于