fuchsia.camera2.hal

添加时间:7

协议

控制器

fuchsia.camera2.hal/hal.fidl 中定义

这是相机驱动程序的接口,可用于设置给定配置和设置数据流。

CreateStream

设置特定配置并创建请求的串流。config_index:需要应用的矢量中的配置索引。stream_index:配置中提供的数据流矢量中的数据流索引。stream:请求的串流的串流渠道 image_format_index:图片格式索引,需要在创建时进行设置。已存在不同于此配置的有效配置 请求设置后,HAL 将关闭所有现有流 并遵循这一新的设置调用。 如果请求的新数据流已属于现有运行配置 HAL 只会创建这个新流,而另一个流仍原样存在。

请求

名称类型
config_index uint32
stream_index uint32
image_format_index uint32
stream server_end:fuchsia.camera2/Stream

DisableStreaming

请求

<EMPTY>

EnableStreaming

启用/停用流式传输

请求

<EMPTY>

GetDeviceInfo

请求

<EMPTY>

响应

名称类型
info fuchsia.camera2/DeviceInfo

GetNextConfig

返回相机驱动程序支持的下一个可用配置。 如果没有可用的新配置,则返回 ZX_ERR_STOP。

请求

<EMPTY>

响应

名称类型
config Config?
status zx/Status

结构体

配置

fuchsia.camera2.hal/hal.fidl 中定义

表示一个配置

字段类型说明默认
stream_configs vector<StreamConfig>:64 无默认设置

StreamConfig

fuchsia.camera2.hal/hal.fidl 中定义

表示特定配置中的一条数据流。

字段类型说明默认
frame_rate fuchsia.camera2/FrameRate 无默认设置
constraints fuchsia.sysmem/BufferCollectionConstraints

constraints 应允许 image_formats 中列出的所有图片格式。

无默认值
properties fuchsia.camera2/StreamProperties

数据流的属性:

无默认设置
image_formats vector<fuchsia.sysmem/ImageFormat_2>:256

我们需要同时指定约束条件和图片格式,因为相机控制器支持一组固定的分辨率,因此 constraints 中的范围不足以满足要求。有些串流支持相同配置的多个分辨率。我们需要更改分辨率运行时,而无需停止流式传输。它提供了串流提供的分辨率列表。 必须提供至少一种格式。

无默认值

常量

名称类型说明
MAX_CONFIGURATIONS 256 uint64

每台设备的配置数量上限。

MAX_STREAMS 64 uint64

每项配置的数据流数量上限。