协议
控制器
在 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
|
|
无默认值 |
properties |
fuchsia.camera2/StreamProperties
|
数据流的属性: |
无默认设置 |
image_formats |
vector<fuchsia.sysmem/ImageFormat_2>:256
|
我们需要同时指定约束条件和图片格式,因为相机控制器支持一组固定的分辨率,因此 |
无默认值 |
常量
名称 | 值 | 类型 | 说明 |
---|---|---|---|
MAX_CONFIGURATIONS |
256
|
uint64 |
每台设备的配置数量上限。 |
MAX_STREAMS |
64
|
uint64 |
每项配置的数据流数量上限。 |