【发布时间】:2011-11-30 18:31:30
【问题描述】:
我目前正在使用 ByteArrayOutputStream 将 BufferedImage 转换为 byte[],然后使用开源类 Base64Coder 将 byte[] 转换为 char[],然后附加到 String。这是对视频帧集进行编码并将其置于 XML 友好格式的多步骤过程的一部分。不要问我为什么要这样做,这正是需要做的。
我看到 Base64 编码在整个过程中占用了大约 75% 的 CPU 时间,并且看到我刚刚从谷歌搜索中抓取了这个随机类,我确信那里有更有效的方法来编码图像.伙计们,我有什么选择?
【问题讨论】:
-
比什么更有效率?给出算法,否则我们无法告诉你可以改进的地方。
-
我已经告诉过你这个类,Base64Coder,它是谷歌搜索的第一个结果......
-
我发现我测试过的所有课程在速度方面都相当。在慢速 VM 上运行,Apache commons Base64 类、Base64Coder 类和 MiGBase64 类都将 300 ~15kb 捕获的 jpeg 帧转换为 Base64 字符串,并在 69 秒内将它们输出为 XML。猜猜这是最好的。谢谢大家!