我想知道是否可以在Android中有2个相机预览的实例。我的意思是同时运行2个相机实例。如果是这样,将如何解决这个问题,是否需要在另一个线程上实现一个实例?我以前从未使用过相机API,因此,如果我可以在这个问题上提出注意,我将不胜感激,所以我不会浪费时间。谢谢你。

有帮助吗?

解决方案

不可能与相机有两个开放连接 - 您必须锁定相机才能获得预览,并且只能锁定一次。确实,如果您将相机锁定,并且您的应用程序在解锁之前就崩溃了,那么没有人可以使用相机!

http://developer.android.com/reference/android/hardware/camera.html#open%28int%29

使用相机完成后,您必须调用Release(),否则它将保持锁定,并且其他应用程序不可用。

...

RunTimeException:如果连接到相机服务失败(例如,如果另一个进程使用相机)。

也就是说,您当然可以注册一个预览回调,并从单个相机实例中获取预览数据以在多个视图中使用。但是请注意预览回调提供的原始字节[]数据的YUV格式的问题: 从Android中获取视频图像帧 (请注意,预览数据是从相机驱动程序开始的,并且可能因设备而异)

其他提示

忽略了大问题,最好的选择是制作与相机互动的服务,然后从那里开始。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top