Android:以每秒30帧的速度显示80幅jpeg图像

Android:以每秒30帧的速度显示80幅jpeg图像,android,Android,我在参考资料中有一系列80(720x1280)jpeg图像(希望设置为重复动画循环) 我尝试使用处理程序绘制,并每33毫秒(30帧/秒)运行一次 使用带有关联画布的SurfaceHolder并使用canvas.drawBitmap 如果位图预加载到内存中(加载一次,在绘图循环外),canvas.drawBitmap速度非常快 (即:BitmapFactory.decodeResource(getResources().R.drawable.img_nnn); 但是,作为bmp的每个图像需要3.7

我在参考资料中有一系列80(720x1280)jpeg图像(希望设置为重复动画循环)

我尝试使用处理程序绘制,并每33毫秒(30帧/秒)运行一次 使用带有关联画布的SurfaceHolder并使用canvas.drawBitmap

如果位图预加载到内存中(加载一次,在绘图循环外),canvas.drawBitmap速度非常快 (即:BitmapFactory.decodeResource(getResources().R.drawable.img_nnn); 但是,作为bmp的每个图像需要3.7米的堆,因此只有18个图像适合堆

有没有办法将80张jpg图像以30帧/秒的速度连续绘制到surfaceHolder上

调用draw()循环中的任何BitmapFactory.decode函数运行速度太慢(70毫秒以上)

谢谢大家!! 肯

我有一系列80(720x1280)jpeg图像

我认为用
BitmapFactory
无法做到这一点

我知道您至少可以选择3个选项:

  • 创建动画gif
  • 创建wmv文件并播放(更合适)
  • 使用性能良好的Android OpneGL(GL10)ES。在这种情况下,您需要学习“如何”

你们来到了硬件极限:)谢谢大家;为什么一个电影播放器应用程序可以以30帧/秒的速度轻松绘制高清电影,但我不能以80帧/秒的速度绘制,哈哈…如果电影太大且没有加载到内存中,那么电影会从存储中流出来,而且存储感谢draksia所需的空间也会更少;很好,谢谢。对于#2选项,我认为wav文件仅为音频?对于Android,最好使用mp4容器和H.264AVC作为编解码器,请参阅@draksia您可以使用h264编码所有内容,顺便说一句,对于大多数不支持neon的平板电脑,您不能使用h264、mpeg,但这不是问题范围:)。因为他想要HD720p,所以视频文件的大小很重要。谢谢大家,非常感谢