这是我最后一个问题的后续:Canvas is drawing too slow
现在我可以更快地绘制图像,我面临的问题是图像的实际加载时间太长了。
在我正在开发的应用程序中,用户能够连续播放视频帧(jpeg),就好像他正在实时观看视频一样。我一直在使用BitmapFactory.decodeFile()
将每个 jpeg 加载到位图中。我无法一次加载所有图像,因为大约有 240 张图像,这会占用我所有的堆空间。我一直在做的是通过单独的线程一次将最多 6 个预加载到一个数组中,以减少每个图像显示所需的时间。
不幸的是,加载一张图片需要 50 到 90 毫秒,而且我需要每 42 毫秒显示一张图片。有没有更快的方法来加载图像?
为澄清起见,这些图像位于 SD 卡上的一个文件夹中,它们都是 720x480 的 jpeg。我以一半大小对它们进行采样以减少内存使用量。