如果系统支持网络摄像头,设备便可用于视频聊天和照片冲印机等轻量级用例。此功能不能替代Android手机上典型的内部相机HAL,也不是为了协助执行涉及高分辨率和高速流式传输、AR以及手动ISP/传感器/摄像头控制且对性能要求很高的复杂任务。
USB相机HAL进程是外接摄像头提供程序的一部分,该提供程序会监听USB设备可用性,并相应地枚举外接摄像头设备。该进程具有与内置相机HAL进程类似的权限和SE策略。直接与USB设备通信的第三方网络相机应用访问UVC设备时所需的相机权限与所有常规相机应用所需的权限相同。
此外,还必须启用对UVC设备的内核支持。您可以通过将以下内容添加到相应的内核defconfig文件来启用该支持。
您可以通过修改external_camera_config.xml文件来自定义外接摄像头提供程序。具体而言,客户可以自定义以下参数:
除了这些参数之外,您还可以添加自己的参数或开发自己的配置。
您还可以通过添加设备专用的优化来提升性能。
通用实现使用的是CPU(libyuv/libjpeg),但您可以将其替换为设备专用的优化。
通用实现采用以下输出格式:
为了提升性能,您可以将输出格式替换为设备专用的高效格式。此外,您还可以在自定义的实现中支持其他格式
THE END