ImageIO.write慢?

时间:2012-04-02 08:26:29

标签: java io

我有一个应用程序,我每秒都要将25个png图像文件写入磁盘。

BufferedImage img = getBufferedImage();
// code below is very slow ~150ms.
File file = new File(count++ + ".png");
BufferedOutputStream os = new BufferedOutputStream(new FileOutputStream(file));
ImageIO.write(img, "png", os);

每次通话通常需要150ms,因此无法达到25fps。我可以缓冲IO以便不丢弃任何帧吗?

1 个答案:

答案 0 :(得分:3)

PNG编码需要一段时间,你不能通过任何缓冲改进它...如果你想加速,使用BMP(会占用你的硬盘)或不需要像素质量,试试JPG(它的编码速度应该比PNG快。)