Sum*_*wal 4 camera android shutter android-5.0-lollipop
我正在尝试从相机应用程序,相机框架和libcameraservice实施以及相机HAL v3.2规范中了解Android 5.0上的ZSL功能/功能支持。
据我了解,在Android中实现ZSL的方式有两种:
框架实现的ZSL
在Kitkat中,仅支持框架实现的ZSL,这非常简单。(将双向流用于ZSL)
在Lollipop中,他们非常清楚地记录了实现ZSL的框架, http://androidxref.com/5.0.0_r2/xref/hardware/libhardware/include/hardware/camera3.h#1076
应用实现的ZSL
在Lollipop中,他们引入了应用程序实现的ZSL概念。根据可用的文档http://androidxref.com/5.0.0_r2/xref/system/media/camera/docs/docs.html,ZSL已被公开为应用程序的功能。
在android.request.availableCapabilities下,它表示:
对于ZSL,“ RAW_OPAQUE支持作为输出/输入格式”
在Lollipop中,通过Camera1 API应用程序,框架实现的ZSL与Kitkat的工作方式相同。
但是,我在Camera2 API应用程序代码的任何地方都找不到如何启用应用程序/框架实现的ZSL。 http://androidxref.com/5.0.0_r2/xref/packages/apps/Camera2/
因此,问题是:
是否可以使用Camera2 API应用程序在Android L中启用框架实现的ZSL?
是否可以通过Camera2 API应用程序在没有 RAW_OPAQUE支持的情况下在Android L中启用应用程序实现的ZSL ?
如果可能是1或2,那么Camera HAL需要什么才能在Android L中启用ZSL?
任何帮助表示赞赏。
不,框架层ZSL仅适用于旧的相机API。
不可以,除非按原样使用输出缓冲区,而不必将其发送回相机设备进行最终处理就足够了。
更长的答案是必须从最初的camera2实现中删除ZSL重新处理API,因此,目前尚无应用程序以任何格式(RAW_OPAQUE或其他格式)将缓冲区发送回相机设备的方法。
camera3.h中的某些文档相对于实际框架实现也具有误导性-框架仅支持IMPLEMENTATION_DEFINED BIDIRECTIONAL ZSL,并且未在任何地方使用RAW_OPAQUE。
编辑:从Android 6.0 Marshmallow开始,在camera2 API中,在支持它的设备(例如Nexus 6P / 5X)上可以进行重新处理。
| 归档时间: |
|
| 查看次数: |
5271 次 |
| 最近记录: |