第5讲 cameraserver manifest详解(上) -凯发k8手机登录

本讲是android camera native framework专题的第5讲,我们介绍cameraserver manifest详解(上),包括如下内容:

  1. android vintf manifest语法简介
  2. cameraserver manifest详解
    • manifest.type
    • manifest.hal.format
    • manifest.hal.name
    • manifest.hal.transport
    • manifest.hal.version
    • manifest.hal.interface
    • manifest.hal.fqname
    • hal interface descriptor

更多资源:

资源 描述
在线课程
知识星球 星球名称:深入浅出android camera 星球id: 17296815
wechat 极客笔记圈

android vintf manifest语法简介

android vintf manifest是用于描述vendor(hal) interface对象的清单文件

vintf manifest文件语法详解

manifest.type

manifest.type

  • manifest类型,分为deviceframework两种类型
  • 定义manifest类型,在做兼容性矩阵验证时会用到

兼容性矩阵

兼容性矩阵

  • fcm(framework compatibility matrix)包含system, system_ext, product三个分区对device manifest的要求
    • 比如:hardware/interfaces/compatibility_matrices/
    • /system/etc/vintf/compatibility_matrix.device.xml
  • dcm(device compatibility matrix)包含vendor分区对framework manifest的要求
    • 比如: device/generic/goldfish/compatibility_matrix.xml
    • /vendor/etc/vintf/compatibility_matrix.xml

manifest.hal.format

manifest.hal.format 用于指定是什么类型的hal,跟实现的接口有关,可设置的值有:

  • hidl:hidl hal,这是默认值。
  • aidl:aidl hal。
  • native: native hals,目前没看到有使用。

示例:

  • aidl halhardware/google/camera/common/hal/aidl_service/android.hardware.camera.provider@2.7-service-google.xml
  • hidl hal: frameworks/av/camera/cameraserver/manifest_android.frameworks.cameraservice.service@2.2.xml

manifest.hal.name

manifest.hal.name 用于设置hal的包名,多个 hal 可以使用相同的名称。

示例:

  • cameraserver的hidl接口
    • android.frameworks.cameraservice.service
  • camera hal的hidl和aidl接口使用相同的name
    • hidl:/device/generic/goldfish/manifest.camera.xml
    • android.hardware.camera.provider
    • aidl:/hardware/google/camera/common/hal/aidl_service/android.hardware.camera.provider@2.7-service-google.xml
    • android.hardware.camera.provider

manifest.hal.transport

manifest.hal.transport 用于设置vintf接口的通信方式

  • 只有hidl hal才需要,可设置为如下三种值(目前几乎全是hwbinder ):
    • hwbinder:绑定模式(跑独立进程)
    • passthrough:透传模式(跑调用者进程)
    • inet:inet 套接字

manifest.hal.transport

camera课程

python教程

java教程

web教程

数据库教程

图形图像教程

办公软件教程

linux教程

计算机教程

大数据教程

开发工具教程

网站地图