Project: /_project.yaml Book: /_book.yaml

fuchsia.camera

PROTOCOLS

Control {:#Control}

Defined in fuchsia.camera/camera.fidl

These are the original interfaces, which are being used for compatibility. The names are preserved from the ones in camera.h for porting ease.

GetFormats {:#GetFormats}

Get the available format types for this device NOTE: The formats are paginated to MAX_FORMATS_PER_RESPONSE, multiple GetFormats need to be issued until total_format_count are received

Request

Response

CreateStream {:#CreateStream}

Sent by the client to indicate desired stream characteristics. If setting the format is successful, the stream request will be honored. The stream token is used to provide additional control over the interface from the Camera Manager. The driver provides the guarantee that: 1) If the stream token receives the PEER_CLOSED event, the driver will close the stream. 2) If the Stream interface is closed, the driver will close the eventpair.

Request

GetDeviceInfo {:#GetDeviceInfo}

Request

Response

Stream {:#Stream}

Defined in fuchsia.camera/camera.fidl

Start {:#Start}

Starts the streaming of frames.

Request

Stop {:#Stop}

Stops the streaming of frames.

Request

ReleaseFrame {:#ReleaseFrame}

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

Request

OnFrameAvailable {:#OnFrameAvailable}

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

Response

Manager {:#Manager}

Defined in fuchsia.camera/manager.fidl

The Camera Manager grants access to individual or sets of cameras

  1. You request the list of cameras, which gives you camera descriptions
  2. You request the list of formats available for the camera to which you wish to connect.
  3. You request a Stream interface using CreateStream.

GetDevices {:#GetDevices}

Returns a list of all the video devices that are currently plugged in and enumerated. The camera_id field of the DeviceInfo is used to specify a device in GetFormats, GetStream and GetStreamAndBufferCollection.

Request

Response

GetFormats {:#GetFormats}

Get all the available formats for a camera. camera_id is obtained from a DeviceInfo returned by GetDevices.

Request

Response

CreateStream {:#CreateStream}

Create a Stream with the specified access rights. This may not succeed. If it does succeed, the Stream will have the rights indicated. buffer_info contains a set of buffers to be used with the Stream. This is being deprecated - please use CreateStreamV2.

Request

CreateStreamV2 {:#CreateStreamV2}

Create a Stream with the specified access rights. This may not succeed. If it does succeed, the Stream will have the rights indicated. buffer_info contains a set of buffers to be used with the Stream.

Request

STRUCTS

DeviceInfo {:#DeviceInfo}

Defined in fuchsia.camera/camera.fidl

Identifying information about the device.

Metadata {:#Metadata}

Defined in fuchsia.camera/camera.fidl

FrameAvailableEvent {:#FrameAvailableEvent}

Defined in fuchsia.camera/camera.fidl

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

FrameRate {:#FrameRate}

Defined in fuchsia.camera/camera.fidl

VideoFormat {:#VideoFormat}

Defined in fuchsia.camera/camera.fidl

VideoStream {:#VideoStream}

Defined in fuchsia.camera/manager.fidl

A stream that the camera manager can provide. Video streams reference a a camera, but may have additional hardware and bandwidth restrictions from and ISP or other processing units. This is being deprecated - please use VideoStreamV2 (below).

VideoStreamV2 {:#VideoStreamV2}

Defined in fuchsia.camera/manager.fidl

Preferred version of stream. A version of stream that relies on definition of VideoFormat coming out of fuchsia.hardware.camera. Streams reference a camera, but may have additional hardware and bandwidth restrictions from an ISP or other processing units. New code should depend on this as the other version will be deprecated when dependencies are removed.

ENUMS

FrameStatus {:#FrameStatus}

Type: uint32

Defined in fuchsia.camera/camera.fidl

Status to be set when a frame is signalled available.

CONSTANTS