问题标签 [android-camera2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
87957 浏览

android - 如何使用 Android 的 camera 或 camera2 API 来支持新旧 API 版本而没有弃用说明?

新的 camera2 API 让我很困惑。我想开发一个使用设备摄像头的应用程序(适用于 Android API 10 - 21) 。如此处所述,我应该使用“相机”API。

但是,当我尝试将“相机”API (android.hardware.Camera)添加到清单的用户功能时,它被标记为 deprecated。另一方面,我无法将其更改为“camera2”API (android.hardware.camera2),因为它仅与 Android API 21+(Android 5 - Lollipop)兼容 - 也会链接它,但我只能添加2个链接。

我不仅希望我的应用程序可以在旧版本的 Android 上运行,而且还希望在最新版本的 Android 上运行......

0 投票
1 回答
326 浏览

android - Android Camera2:如何使用 SENSOR_BLACK_LEVEL_PATTERN API?

Camera2中,我发现了一个名为SENSOR_BLACK_LEVEL_PATTERN的 API 。我正在尝试获取与此 API 相关的设备信息。不知怎的,我不明白如何得到它。我已经做到了:

想用getOffsetForIndex()方法。

更新: 这样使用可以吗:blackLevelPattern.getOffsetForIndex(0, 0)

请建议。提前致谢。

0 投票
5 回答
14640 浏览

android - Android camera2人脸检测

关于 camera2 人脸检测机制的信息不足。我使用了 Google 的 Camera2 示例:https ://github.com/android/camera-samples

我将人脸检测模式设置为 FULL。

另外,我检查了

STATISTICS_INFO_MAX_FACE_COUNTSTATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES

输出maxCount:5,模式:[0, 2]

我的捕获回调:

输出面:0,模式:2

人脸长度始终为 0。看起来它没有正确检测到人脸,或者我错过了一些东西。

我知道FaceDetector的方法。我只是想检查一下它如何与新的 camera2 Face一起使用。

0 投票
4 回答
20713 浏览

android - Android Camera2前置摄像头

我最近注意到相机 API 已被弃用,我发现了名为 Camera2 的新 API。

我已经阅读了文档,但我并不真正理解它。

所以我的问题是:如何使用新的摄像头 API 预览前置摄像头?

只是预览,不是录制。

我想使用这个新的 API,因为将来我猜测当前的 Camera API 将被替换并停止工作。

所以我想做好准备,在每个人都恐慌的时候坐下来观看。XD

0 投票
5 回答
18999 浏览

java - 使用 TextureView 缩放 Camera2 预览

我的 Camera2 API 预览缩放有问题。我正在使用 TextureView。

我只想缩放 TextureView 中显示的预览流。

我想缩放我使用缩放手势的区域。

我使用 SimpleOnScaleGestureListener!

我添加了以下代码。zoomingFactor 和 x 和 y 位置是正确的。

缩放是正确的,但不是我缩放的位置。例如!当我放大右侧/中间位置时,我只看到流的左侧/顶部矩形。

我添加了以下图片以了解问题。

0 投票
1 回答
9230 浏览

android - 使用 camera2 和 MediaRecorder 捕获视频

我尝试一次录制具有 2 种不同分辨率的视频。有时一切顺利,有时应用程序似乎卡在 2 个 MediaRecorder 的 stop() 方法中。有人可以看看我的代码,不管我做错了什么?

0 投票
5 回答
29072 浏览

android - Android“权限拒绝:无法使用相机”

我正在关注有关在 Android 应用程序中使用相机的教程。在模拟器和物理设备上运行调试时,我收到错误“权限拒绝:无法使用相机” 。我在清单文件中尝试了各种权限。似乎大多数遇到此错误的人都有错字、缺少权限或权限不在清单中的正确位置。

这是我的清单文件:

这是我的活动:

我的logcat中的错误:

我是应用程序开发的新手,诚然我不擅长调试,但从我看到的其他人的文件(以及只有 4 个月大的教程)来看,我的清单权限似乎是正确的。

谁能告诉我我做错了什么?

干杯,李。

更新:我通过调试发现它一达到这个方法就会崩溃......

}

...特别是当它运行 try 语句时。

更新 2:如果我注释掉 try/catch 语句,应用程序不会崩溃,但预期的结果(即打印“相机已打开!”)不会发生。有任何想法吗?

更新 3:我很抱歉,我刚刚意识到我的上述编辑是多么愚蠢。很明显为什么它不再崩溃,但至少我现在知道我必须调试我的cameraManager.openCamera参数。如果有人可以看一下,代码就在那里:)

0 投票
1 回答
2015 浏览

android - 支持 Android Camera Api 和 Camera2 Api 的问题

我正在帮助开发一个应用程序,该应用程序需要支持所有 android 版本的相机使用,而不使用任何已弃用的东西。这显然意味着我需要为 Android 5.0+(Api Level 21)使用新的 Camera2 API。

今天我转换了我们所有的原始相机代码以支持 Camera2 API,检查 Build.VERSION.SDK_INT 以决定何时使用原始代码以及何时使用新代码。当我回到 android 4.x 上进行测试以确保没有损坏时,我当前的问题出现了,我收到了 java.lang.VerifyError 并拒绝了操作码错误——这是我以前从未见过的。

我把我的问题归结为不明白为什么以下代码在 Android 4.4 上运行时会崩溃:

注意thisIsNeverRun()永远不会被调用。在 android 4.4 设备上运行时会发生崩溃,并且 logcat 会产生以下输出:

这让我很困惑,因为我以前从未见过这些类型的错误。我已经在 2 个不同的 android 4.4 设备上对此进行了测试。诚然,我对在同一个应用程序中支持已弃用的新 API 和新 API 很陌生,但它似乎相当简单。也许我在做一些明显错误的事情?

在这一点上,我非常沮丧,因为任何包含 Camera2 代码的 Activity 或片段在 Android 4.4(我假设其他版本)上都会崩溃,无论代码是否实际运行。我想我可以通过将设备 < 21 和设备 > 21 的相机代码保存在单独的片段中来使其工作,但我真的很想知道为什么这不能正常工作。

0 投票
3 回答
4719 浏览

android - Android Camera 2,如何裁剪预览大小

我最近正在开发 Camera 2 API,我的设备的屏幕比例为 16:9,但我的相机传感器为 4:3。所以我得到的所有预览尺寸都是 4:3。我想知道有什么办法可以裁剪大小并且只显示 16:9 部分?我尝试了很长时间,但没有找到相机 2 的任何帮助。

我当前的相机代码类似于相机 2 基本示例

那么我应该如何裁剪预览并且只在纹理视图上显示 16:9 部分呢?

谢谢!!

0 投票
1 回答
2205 浏览

java - Android camera2镜头内在校准

我下载了一个 Android camera2演示,它运行良好。

现在我想通过查询CameraCharacteristics来获得相机的内在矩阵。

我的代码是

内在函数应该是一个 5 元素数组,但intrinsic = characteristics.get(CameraCharacteristics.LENS_INTRINSIC_CALIBRATION)返回 null。