Android 相机预览与后台服务
Android camera preview vs background service
如果我 运行 在 Android 上使用图像处理应用程序,哪个在 memory/cpu 使用和加热问题方面会更好?
- 运行 带预览功能的相机。
- 运行 后台服务中的摄像头。 This说后台服务占用内存大(我以前认为相反)。
我问这个的原因是因为我想 运行 应用程序 24/7,但我不确定哪种方法更适合我的目的。我确实用预览测试了我的应用程序 运行ning 摄像头,它在大约 1 周后因过热而停止。
谢谢。
很明显运行相机在预览模式下长时间连续拍摄即使你有高配置也会让你的设备变热device.In我的建议你可以容忍内存问题但不能容忍发热问题因为它导致您的设备出现许多其他有害问题(由于过热)。因此请使用后台服务,希望与预览模式相比这不会加热您的设备。
屏幕非常耗电,因此请尽可能将其关闭。
摄像头API本身并不关心你是在前台应用程序还是在后台服务,但你请求的同时输出越多,功耗可能就越高。同样,你要求的输出分辨率越高,功耗就越高。
如果您使用的是 camera2,您可以拥有一个没有预览的前台应用;即使使用 camera1,您也可以只向 activity/etc 添加一个虚拟 SurfaceTexture 成员并将其设置为预览目标,这样您就无需支付实际 GPU activity 的成本。
这仍然有相机的开销 API 将无意义的图像推送到 SurfaceTexture,您只能使用 camera2 避免这种情况。
如果我 运行 在 Android 上使用图像处理应用程序,哪个在 memory/cpu 使用和加热问题方面会更好?
- 运行 带预览功能的相机。
- 运行 后台服务中的摄像头。 This说后台服务占用内存大(我以前认为相反)。
我问这个的原因是因为我想 运行 应用程序 24/7,但我不确定哪种方法更适合我的目的。我确实用预览测试了我的应用程序 运行ning 摄像头,它在大约 1 周后因过热而停止。
谢谢。
很明显运行相机在预览模式下长时间连续拍摄即使你有高配置也会让你的设备变热device.In我的建议你可以容忍内存问题但不能容忍发热问题因为它导致您的设备出现许多其他有害问题(由于过热)。因此请使用后台服务,希望与预览模式相比这不会加热您的设备。
屏幕非常耗电,因此请尽可能将其关闭。
摄像头API本身并不关心你是在前台应用程序还是在后台服务,但你请求的同时输出越多,功耗可能就越高。同样,你要求的输出分辨率越高,功耗就越高。
如果您使用的是 camera2,您可以拥有一个没有预览的前台应用;即使使用 camera1,您也可以只向 activity/etc 添加一个虚拟 SurfaceTexture 成员并将其设置为预览目标,这样您就无需支付实际 GPU activity 的成本。
这仍然有相机的开销 API 将无意义的图像推送到 SurfaceTexture,您只能使用 camera2 避免这种情况。