fuchsia.camera.common

PROTOCOLS

Stream

Defined in fuchsia.camera.common/common.fidl

Protocol shared between the driver and the consumer.

Start

Starts the streaming of frames.

Request

NameType

Stop

Stops the streaming of frames.

Request

NameType

ReleaseFrame

Unlocks the specified frame, allowing the driver to reuse the memory.

Request

NameType
buffer_id uint32

OnFrameAvailable

Sent by the driver to the client when a frame is available for processing, or an error occurred.

Response

NameType
frame FrameAvailableEvent

VirtualCameraFactory

Defined in fuchsia.camera.common/virtual.fidl

Protocol for managing virtual cameras that need to be added for tests.

CreateDevice

Creates a new VirtualCameraDevice based on the configuration passed in. config: a VirtualCameraConfig defining how the new device should behave.

Request

NameType
config VirtualCameraConfig

STRUCTS

DeviceInfo

Defined in fuchsia.camera.common/common.fidl

Identifying information about the device.

NameTypeDescriptionDefault
camera_id uint64 Currently populated by the camera manager No default
vendor_id uint16 No default
product_id uint16 string vendor_name; No default
max_stream_count uint16 string product_name; string serial_number; The maximum number of stream interfaces that the device can support simultaneously. No default
output_capabilities uint32 No default

Metadata

Defined in fuchsia.camera.common/common.fidl

Extra information associated with the frame.

NameTypeDescriptionDefault
timestamp int64 No default

FrameAvailableEvent

Defined in fuchsia.camera.common/common.fidl

Sent by the driver to the client when a frame is available for processing, or an error occurred.

NameTypeDescriptionDefault
frame_status FrameStatus Non zero if an error occurred. No default
buffer_id uint32 The index of the buffer in the buffer collection. No default
metadata Metadata Any associated metadata such as timestamp. No default

FrameRate

Defined in fuchsia.camera.common/common.fidl

The number of frames being produced every second.

NameTypeDescriptionDefault
frames_per_sec_numerator uint32 The frame rate is frames_per_sec_numerator / frames_per_sec_denominator. No default
frames_per_sec_denominator uint32 No default

VideoFormat

Defined in fuchsia.camera.common/common.fidl

Video format includes the image format and frame rate of frames being produced.

NameTypeDescriptionDefault
format fuchsia.sysmem/ImageFormat No default
rate FrameRate No default

ArtificialStreamConfig

Defined in fuchsia.camera.common/virtual.fidl

Configuration for an artificial stream. TODO(eweeks): Replace this stand-in with the full design.

NameTypeDescriptionDefault
stream_id int16 Numeric identifier for the stream being configured. No default

RealWorldStreamConfig

Defined in fuchsia.camera.common/virtual.fidl

Configuration for a stream generated from stored frames. TODO(eweeks): Replace this stand-in with the full design.

NameTypeDescriptionDefault
stream_id int16 Numeric identifier for the stream being configured. No default

VirtualCameraConfig

Defined in fuchsia.camera.common/virtual.fidl

Configuration used by VirtualManager to create a VirtualCameraDevice.

NameTypeDescriptionDefault
formats vector<VideoFormat> The formats that the controller will support. No default
info DeviceInfo Device specific information that can be set by the user. No default
stream_config VirtualStreamConfig Either an ArtificialStreamConfig or a RealWorldStreamConfig. No default

ENUMS

FrameStatus

Type: uint32

Defined in fuchsia.camera.common/common.fidl

Status to be set when a frame is signaled available.

NameValueDescription
OK 1
ERROR_FRAME 2
ERROR_BUFFER_FULL 3

XUNIONS

VirtualStreamConfig

Defined in fuchsia.camera.common/virtual.fidl

Configuration for the stream. The Configuration must be either artificial or real TODO(eweeks): Replace this stand-in with the full design.

NameTypeDescription
artificial_config ArtificialStreamConfig
real_world_config RealWorldStreamConfig

CONSTANTS

NameValueTypeDescription
CAMERA_OUTPUT_UNKNOWN 0 uint32
CAMERA_OUTPUT_STILL_IMAGE 1 uint32
CAMERA_OUTPUT_BURST 2 uint32
CAMERA_OUTPUT_STREAM 4 uint32
CAMERA_OUTPUT_HDR 8 uint32
CAMERA_OUTPUT_DEPTH 16 uint32
CAMERA_OUTPUT_STEREO 32 uint32