首页 > 解决方案 > Android Camera2 API:捕获视频而不预览

问题描述

主要问题:如何使用 Camera2 API 在不预览的情况下捕获视频?

我正在尝试从后台服务录制视频而不显示任何预览。

这是同样的问题,但我想用 Camera2 API 来做。

我在Camera2VideoJava中找到了一个示例代码,并尝试在服务中使用它。

我无法理解现在该怎么做,因为没有文档可以做这样的事情。

有人可以帮忙吗?

标签: androidvideoandroid-cameravideo-captureandroid-camera2

解决方案


这似乎是捕捉4K视频的方式,但我自己没有测试过。

如果您使用 1080p 的预览,那么捕获将是 1080p;这是我的理解。

您要么必须在没有 4K 预览表面的情况下进行捕捉,和/或使用 4K 分辨率的 GLSurfaceView。

4K GLSurfaceView 的问题在于它需要 OpenGL ES 3.0,而许多设备不支持。

可能有一种方法可以将 4K 缓冲区传递到 1080p 表面进行预览,同时还可以捕获 4K,但目前尚不清楚。

大多数 Camera2 API 开发人员的主要问题和焦虑是 OpenGL ES 3.0 无法在大多数设备上运行,即使相机本身支持 4K 视频。


推荐阅读