Наскоро открих, че библиотеката ImageIO, която използвах, записваше изображения в байтови масиви/потоци невероятно бавно и превключих от
BufferedImage img;//initialized elsewhere
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(img,"png",baos);
to
BufferedImage img;//initialized elsewhere
byte[] argb = ((DataBufferByte) img.getRaster().getDataBuffer()).getData();
Докато този втори метод е почти 70 пъти по-бърз, не мога да намеря бърз начин да пресъздам BufferedImage от този argb байтов масив.