android - Android Camera 2 API 镜头切换
问题描述
我正在尝试实现与小米 MI8 上的默认相机应用程序相同的镜头切换功能。附上截图。
硬件设置:小米 MI8 [API 29] 带广角和长焦镜头的后置摄像头
软件设置:只有一个后置逻辑摄像头可通过 API 访问,其物理摄像头 ID 列表为空。
理论上我们可以创建一堆 OutputConfiguration 对象,设置物理相机 ID 并创建捕获会话,但由于小米 MI8 上缺少物理相机 ID,这是不可能的。
有没有人有一些想法如何在小米MI8上实现镜头切换和检索physicalCameraIds?或者,也许有人试图在其他设备上检查物理相机 ID?
所有镜头相关领域的后置摄像头特性(如果对进一步研究有用):
physicalCameraIds: []
availablePhysicalCameraRequestKeys: null
LENS_DISTORTION: null
LENS_FACING: 1
LENS_INFO_AVAILABLE_APERTURES: [1.8]
LENS_INFO_AVAILABLE_FILTER_DENSITIES: [0.0]
LENS_INFO_AVAILABLE_FOCAL_LENGTHS: [4.216]
LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION: [0, 1]
LENS_INFO_FOCUS_DISTANCE_CALIBRATION: 1
LENS_INFO_HYPERFOCAL_DISTANCE: 0.2835498
LENS_INFO_MINIMUM_FOCUS_DISTANCE: 10.0
LENS_INTRINSIC_CALIBRATION: null
LENS_POSE_REFERENCE: null
LENS_POSE_ROTATION: null
LENS_POSE_TRANSLATION: null
解决方案
您可以通过调试 ROM 上的 id 访问广角相机。相机 ID 和 ROM 可由供应商的移动部门提供。
推荐阅读
- javascript - 如何从javascript中的数组中获取名称?
- javascript - 如何从无处提交按钮?
- angular - 如何在手风琴中保持至少一个面板展开?
- xml - Xpaths,根据其子项的值返回一个 ref 字段
- macos - 什么是 macOS Mojave 中的 CoreMediaIo DAL 虚拟相机替代品
- javascript - 我正在尝试将 Material-UI InfoIcon 添加到我的代码中。但我不知道如何在 TextField 中实现它
- cordova - 使用 Phaser-js 和 Cordova 开发的移动问答游戏
- python - 在 Django 中找不到 account_login 的反向
- php - 将刀片布局传递给 phpword
- vim - 有没有办法更改路径文件并在 vim 中自动重构代码?