Java 加快图像创建/写入字节数组(SWT)

Java 加快图像创建/写入字节数组(SWT),java,swt,image-compression,Java,Swt,Image Compression,我使用SWT将原始位图图像压缩为JPEG。我正在将图像写入一个BufferedOutputStream,以便通过套接字发送字节。问题是,压缩需要很多时间(大约150毫秒)。有没有人建议加快整个过程 bos.reset(); imageLoader.save(bos, SWT.IMAGE_JPEG); 一种可能是发送未压缩的图像。如果您的有效网络吞吐量足够高,则压缩图像所需的时间可能比发送图像所需的时间更长 另一种可能是管道化处理,以便在压缩下一个图像的同时发送一个图像。如果您有多个内核

我使用SWT将原始位图图像压缩为JPEG。我正在将图像写入一个BufferedOutputStream,以便通过套接字发送字节。问题是,压缩需要很多时间(大约150毫秒)。有没有人建议加快整个过程

 bos.reset();  
 imageLoader.save(bos, SWT.IMAGE_JPEG);

一种可能是发送未压缩的图像。如果您的有效网络吞吐量足够高,则压缩图像所需的时间可能比发送图像所需的时间更长

另一种可能是管道化处理,以便在压缩下一个图像的同时发送一个图像。如果您有多个内核,那么使用多个线程进行压缩可能是值得的

跟进


如果压缩是必要的,那么最好还是坚持使用JPEG。但是,您应该知道JPEG压缩是有损的,丢失的细节永远无法恢复。(相比之下,您尝试的平减器是无损的。)

不幸的是,需要进行压缩。我还尝试使用Java的deflatter。。但是生成的图像取决于源图像,非常大。此外,放气至少需要相同的时间(谢谢)我知道无损压缩和有损压缩的区别。deflatter将等于png。但jpeg的质量符合我们的需要。这只是性能问题