协议
控制器
在 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/Result
|
STRUCTS
配置
在 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 |
每个配置的最大直播数量。 |