一、EvsHal相关接口
IEvsCamera
一个IEvsCamera对象即代表一个Camera,主要接口为捕获图像
IEvsCamera文件路径:
hardware/interfaces/automotive/evs/aidl/android/hardware/automotive/evs/IEvsCamera.aidl
IEvsCamera定义:
interface IEvsCamera {}
IEvsCamera方法:
getCameraInfo() generates (CameraDesc info):返回IEvsCamera对象所代表Camera的CameraDesc
setMaxFramesInFlight(int32 bufferCount) generates (EvsResult result):设置MaxFrames
startVideoStream(IEvsCameraStream receiver) generates (EvsResult result):请求Camera传输 EVS camera frames
oneway doneWithFrame(BufferDesc buffer):返回由IEvsCameraStream传递的frame
stopVideoStream():停止传递EVS camera frames.
getExtendedInfo(int32 opaqueIdentifier) generates (int32 value):从HAL中获取driver-specific信息
setExtendedInfo(int32 opaqueIdentifier, int32 opaqueValue) generates (EvsResult result):设置driver-specific value 给Evs Hal
IEvsCameraStream
客户端实现接口以接收异步传输的video frame
IEvsCameraStream文件路径:
hardware/interfaces/automotive/evs/aidl/android/hardware/automotive/evs/IEvsCameraStream.aidl
IEvsCameraStream定义:
oneway interface IEvsCameraStream {
IEvsCameraStream方法:
deliverFrame(BufferDesc buffer):从HAL接收调用,返回每次准备好的video frame
IEvsDisplay
EVS显示对象,可控制显示状态,并处理图像的实际呈现效果
IEvsDisplay文件路径:
hardware/interfaces/automotive/evs/aidl/android/hardware/automotive/evs/IEvsDisplay.aidl
IEvsDisplay定义:
interface IEvsDisplay {}
IEvsDisplay方法:
getDisplayInfo() generates (DisplayDesc info):返回EVS Display的基本信息
setDisplayState(DisplayState state) generates (EvsResult result):设置显示状态
getDisplayState() generates (DisplayState state): 获取显示状态
getTargetBuffer() generates (handle bufferHandle):返回一个与Display关联的处理frame buffer的handle
returnTargetBufferForDisplay(handle bufferHandle) generates (EvsResult result):告诉Display相关buffer已准备好可供显示
IEvsEnumerator
负责枚举系统中可用的EVS硬件
IEvsEnumerator文件路径:
hardware/interfaces/automotive/evs/aidl/android/hardware/automotive/evs/IEvsEnumerator.aidl
IEvsEnumerator定义:
interface IEvsEnumerator {}
IEvsEnumerator方法:
getCameraList() generates (vec<CameraDesc> cameras):返回一个包含系统中所有摄像机的描述的向量。CameraDesc结构体
openCamera(string camera_id) generates (IEvsCamera camera):获取一个以参数camera_idb标识的IEvsCamera对象
closeCamera(IEvsCamera camera):释放IEvsCamera对象,与openCamera相反
openDisplay() generates (IEvsDisplay display):获取一个以EVS Display单独交互的IEvsDisplay对象
closeDisplay(IEvsDisplay display):释放IEvsDisplay对象,与openDisplay相反
ge