我正在优化 PNG 编码器以便在 Flash SWF 中使用(但我正在将其编写在 Haxe 中)。
到目前为止,我已经设法加快了速度,主要是通过使用 speedy memory read/writes .
在分析我的代码时,我注意到大约 75% 的时间花在了一次调用 Flash 的内置 compress() 上。方法,它使用 zlib 算法(依次使用 DEFLATE)。
我对压缩率不太挑剔,但更快压缩会很棒。所以,我想知道自己尝试实现 zlib/DEFLATE 是否值得。稍作搜索就找到了 zlib C 实现源,但阅读起来并不轻松(或易于移植!)。
是否有任何简单的 zlib/DEFLATE 实现可供我用作起点?我宁愿不必费力地通过 two specs ,特别是因为我不知道在 AVM2 中运行的实现是否能像原生 Flash 一样快。
最佳答案
我认为您无法使用非原生压缩算法获得更好的性能。不过,您也许可以异步运行它,这可能会有所不同。如果你想移植它,我认为最好找到一个 AS3 或 JavaScript 实现,比如 https://github.com/dankogai/js-deflate .祝你好运!
关于flash - 自定义 DEFLATE 实现以加速 PNG 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6327206/