Android中Camera和Camera2的区别

Posted

技术标签:

【中文标题】Android中Camera和Camera2的区别【英文标题】:Difference Between Camera and Camera2 in Android 【发布时间】:2017-09-12 00:10:08 【问题描述】:

我正在构建一个类似于社交媒体的应用程序,人们可以在其中分享照片和视频,例如 Instagram。这就是相机对我的应用非常重要的原因。现在 camera2 API 让我很困惑。我想在 API 级别 11+ 上运行我的应用程序。我知道 camera2 仅在 API 级别 21+ 中可用所以,我需要设计两个 API,一个(camera)用于旧版本,第二个(camera2)用于更高版本。问题是我刚开始学习 android,我不知道这两个 API 之间的主要区别是什么。

Camera2 API 有哪些主要功能? 或者 Old Camera API 有什么缺点吗?

我的应用中需要三样东西。

1- 简单的拍摄照片 2- 连拍图片(创建 GIF 图像) 3- 简单的视频录制。

哪种相机 API 适合我?

【问题讨论】:

看看这个答案和它下面的 cmets:***.com/a/32550373/334402 【参考方案1】:

旧的相机 API 可以在 #1 和 #3 上正常工作;如果你对视频分辨率的 GIF 没问题,你也可以做 #2。

如果您想要以以上分辨率进行连拍,您将需要 camera2(然后是支持快速、全分辨率捕获的设备 - 请参阅BURST_CAPTURE 功能,或任何支持FULL 硬件级别的设备。) 1080p。

您可能可以从CameraView 非官方支持库开始,并根据需要对其进行修改。它支持两种 API,根据设备的 API 级别进行选择。

【讨论】:

以上是关于Android中Camera和Camera2的区别的主要内容,如果未能解决你的问题,请参考以下文章

问题支持Android相机的API和camera2 API问题,怎么解决

Android:Camera2 API 仅在 Google Pixel 2 和 2 XL 设备上崩溃

Android开发Camera2相关

支持 Android Camera Api 和 Camera2 Api 的问题

Android进阶——你所知道的Camera2和你所不知道的Camera2完全解析

Android Camera2 开发详解