我正在尝试在 android 的相机上实现突发模式(目前在 ICS 上)我在网上搜索了一些关于此功能的文档并遇到了几个问题:
需要保存(可能在 asynctask 上)每个捕获的图像值,然后对其进行处理并将其保存在 sd 卡中
可能在以连续模式捕获图像时处理堆
到目前为止,这是我在调查这个问题时得到的第一印象,有人可以指导我在哪里可以获得更多信息、算法甚至源代码吗?
谢谢您的帮助。乌迪
您也可以将此代码作为基线检查:https ://github.com/rdasxy/android-burst-camera 。还要先检查一下:http: //developer.android.com/guide/topics/media/camera.html。供您预览使用TextureView
(您需要将硬件加速添加到您的 AndroidManifest.xml),而不是SurfaceView
. 如果您尝试将图片缓存在内存中,您可能会很快用完堆,特别是如果您将图片大小设置为较大的值。因此,在方法中收到数据后立即保存数据pictureCallBack.onPictureTaken
通过使用例如AsynchTask。检查(测量!)设备内存的写入速度与 sdcard 写入速度的对比。首先保存到设备的内部存储器并在需要时将其移动到 sdcard 时,您可能会获得更高的整体处理性能。largeHeap=true
还尝试通过添加到您的 android 系统为您提供更大的堆大小AndroidManifest.xml
这个问题有点类似于这个关于堆栈溢出的问题。该问题中的代码可能会有所帮助。