Skip to content

0.9.0

Compare
Choose a tag to compare
@aous72 aous72 released this 25 May 13:07
· 253 commits to master since this release

This release focuses primarily on improving the speed of the decoder.
This is an improvement of between 30-50% in decode time, or 40-80% in throughput.
A lot has changed in certain places.

  • Large parts of the block decoder has been rewritten.
  • SSSE3 optimized version of the block decoder has been written.
  • Accelerated functions that transfer from and to the block decoder has been added, as suggested by Chris.
  • Accelerated functions that write to pgm and ppm; the code can be used for other file types, but I was too tired to include this as well. This was suggest by Mike.
  • Slightly modified the internal structure of buffers returned when codestream::pull is invoked; this allows buffers from different components to coexist (can be used concurrently). This is needed for the accelerated functions above. Previous designs using this feature should continue working without issues.
  • For WASM, we have now accelerated all the decode path including the block decoder using SIMD instructions.
  • A bug fix for an issue reported by Pierre, where an empty subband can cause a segmentation fault.
  • For windows, added a flag for disable exported functions when static build is used, as suggested by Lucas.
  • There might be other issues that I forgot.