Package: android.hardware.automotive.evs@1.0

IEvsCamera

interface IEvsCamera

Represents a single camera and is the primary interface for capturing images.

Methods

getCameraInfo

getCameraInfo ()
generates (CameraDesc info)

Returns the ID of this camera.

Returns the description of this camera.This must be the same value as reported by EvsEnumerator::getCamerList().

Details
Generates
info

setMaxFramesInFlight

setMaxFramesInFlight (uint32_t bufferCount)
generates (EvsResult result)

Specifies the depth of the buffer chain the camera is asked to support.

Up to this many frames may be held concurrently by the client of IEvsCamera.If this many frames have been delivered to the receiver without being returned by doneWithFrame, the stream must skip frames until a buffer is returned for reuse.It is legal for this call to come at any time, even while streams are already running, in which case buffers should be added or removed from the chain as appropriate.If no call is made to this entry point, the IEvsCamera must support at least one frame by default.More is acceptable.BUFFER_NOT_AVAILABLE is returned if the implementation cannot support the requested number of concurrent frames.

Details
Parameters
bufferCount
Generates
result

startVideoStream

startVideoStream (IEvsCameraStream receiver)
generates (EvsResult result)

Request delivery of EVS camera frames from this camera.

The IEvsCameraStream must begin receiving periodic calls with new image frames until stopVideoStream() is called.

Details
Parameters
receiver
Generates
result

doneWithFrame

oneway doneWithFrame (BufferDesc buffer)

Return a frame that was delivered by to the IEvsCameraStream.

When done consuming a frame delivered to the IEvsCameraStream interface, it must be returned to the IEvsCamera for reuse.A small, finite number of buffers are available(possibly as small as one), and if the supply is exhausted, no further frames may be delivered until a buffer is returned.

Details
RPC mode
oneway
Parameters
buffer

stopVideoStream

stopVideoStream ()

Stop the delivery of EVS camera frames.

Because delivery is asynchronous, frames may continue to arrive for some time after this call returns.Each must be returned until the closure of the stream is signaled to the IEvsCameraStream.This function cannot fail and is simply ignored if the stream isn't running.

Details

getExtendedInfo

getExtendedInfo (uint32_t opaqueIdentifier)
generates (int32_t value)

Request driver specific information from the HAL implementation.

The values allowed for opaqueIdentifier are driver specific, but no value passed in may crash the driver.The driver should return 0 for any unrecognized opaqueIdentifier.

Details
Parameters
opaqueIdentifier
Generates
value

setExtendedInfo

setExtendedInfo (uint32_t opaqueIdentifier, int32_t opaqueValue)
generates (EvsResult result)

Send a driver specific value to the HAL implementation.

This extension is provided to facilitate car specific extensions, but no HAL implementation may require this call in order to function in a default state.INVALID_ARG is returned if the opaqueValue is not meaningful to the driver implementation.

Details
Parameters
opaqueIdentifier
opaqueValue
Generates
result