问题标签 [android-capture]

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 投票
3 回答
752 浏览

android - 如何在Android中不按捕获按钮自动捕获和保存图像?

我正在使用 Android 5.0 来实现一个应用程序,该应用程序允许自动捕获图像并将其保存到我的手机中。目前,我正在使用下面的代码,但它需要在我手机的捕获 UI 中按下捕获按钮。是否可以在不按捕获按钮的情况下捕获并保存图像?比如我只是调用这个函数myCaptureandSave(),然后手机会显示 Capture UI 并在中间捕获图像并保存,我不需要做更多的步骤。

0 投票
1 回答
46 浏览

android - 如何跳过由 androids CAMERA_ACTIVITY 创建的活动?

我正在使用 androids 默认相机捕获,然后使用裁剪库拍摄照片,然后将其裁剪为正方形以显示在下一个布局上,图片存储在设备上,并在数据库中创建记录。

问题是有一个如下所示的图片确认页面是多余的,如果我能够将其删除,它将为用户节省大量时间。

从左到右的过程

如何在线编辑默认相机捕捉活动或使用其他相机模板?

我想让流程尽可能高效,所以如果有更好的方法让我知道。

0 投票
1 回答
179 浏览

android - 如何设置相机捕获请求的旋转?

我正在使用 ndk 创建通过相机捕获并显示图像的应用程序。我成功捕获并显示图像,但图像旋转不正常。因此,我尝试使用 ACaptureRequest_setEntry_u8 函数来更改图像的旋转。但它会在 logcat 中返回此错误消息(E/ACameraMetadata: Error: tag 917518 is not writable!)。我试图检查 ACamera_SENSOR_ORIENTATION 是否包含在 ACameraMetadata 中,并且确实如此。下面是代码。我用了两天时间来纠正这个问题。请帮我。

我正在使用 ACameraCaptureSession_setRepeatingRequest 顺序捕获。

0 投票
1 回答
900 浏览

android - Android Camera2:使用 captureBurst 的图像捕获之间的更新 UI 不同步

我正在尝试使用captureBurst()方法在 Android 上使用 Camera2 API 捕获图像。我在按钮中开始突发捕获OnClickListener

在我的OnImageAvailableListener听众中,我正在读取捕获的图像,保存并关闭。在这一点上,我想在我的屏幕上显示一些东西,我想在连拍序列中的每个捕获的图像之间显示一些东西。所以我写了这段代码:

为了测试它并确保这确实发生了,我正在使用我的前置摄像头,并在我的设备上方放置一面镜子,以便摄像头实际捕获应用程序的显示。不幸的是,显示和捕获不同步。我已经尝试将 10 个相同ImageRequestscaptureBurst方法放在方法中,但是当我查看获得的图像时,前三个是相同的(显示仍然显示初始数字 0),但其余的都很好(显示正在同步变化)。为什么不能全部同步,即为什么前几张图像几乎同时拍摄(在连拍开始时),而其他的都很好?

我创建ImageReader了最多 1 个图像,以便一次不捕获多个图像:

并且使用模式RequestBuilder创建TEMPLATE_PREVIEW以最大化捕获屏幕。

我知道capture每次在OnImageAvailableListener侦听器中捕获新图像时我都可以调用方法,这是有效的(经过测试!)。但我需要让我的应用程序以尽可能快的速度捕获图像。

有什么帮助吗?

已编辑:这是@alex-cohn 建议的我的日志:

编辑2:

我已经设法为每个显示的数字获得一张图像,但是每次捕获一张图像后我都会丢弃两张图像,即:

在这里,frameDrop设置为 3。此外,maxImages在创建 imageReader 时也设置为 3。我已经在另一台当时正在拍摄 2 张​​图像的设备上对其进行了测试,所以在该设备的情况下,我必须设置frameDropmaxImages2 . 这样做的缺点是它仍然有点慢,毕竟它是以连拍模式拍摄的每三(第二)张图像,这不是您使用captureBurst方法时想要的东西。

我仍然不太明白为什么会这样工作,以及为什么相机会以成对或三胞胎的形式拍摄图像。