Skip to content

Releases: aous72/OpenJPH

0.8.3

07 Apr 02:35

Choose a tag to compare

This patch adds wasm simd support for the color and wavelet transform.
The subjprojects/js/html/index.html can detect browser support for wasm simd and dynamically load the simd version if simd support is available.

0.8.2

17 Feb 23:44

Choose a tag to compare

This is a small bug fix on the upper bound of U_q (Uq in the standard).

  • It should be no larger than missing_msbs + 2, instead of missing_msbs + 1.

0.8.1

03 Jan 06:00

Choose a tag to compare

Added support for per-component bit depth for TIFF images.

0.8.0

27 Dec 04:33

Choose a tag to compare

There are many changes in this version.

  • The choice for signed or unsigned has been carefully checked. The current implementation generates a smaller number of warnings.
  • Added test script to check that the code works.
  • Fixed many bugs in the code.
  • Support for TIFF image format has been added by Mike.
  • Wasm build has been updated.
  • Many other fixes. Please check the development branch.
  • Note: This will break some code, because all types have been changed in a way that is more respectful of signed/unsigned variables. Please let me know if you need a hand in updating your build.

0.7.3

12 Mar 02:18

Choose a tag to compare

A few bugs has been fixed, and I felt it is fit to give it new version number.

0.7.2

04 Nov 10:54

Choose a tag to compare

A small update to support:

  • QCC marker in the header.
    This support has become more important recently because images coded with the Qfactor option in Kakadu use this marker.

Qfactor provides an exciting approach to setting some encoding parameters in JPEG2000; it enables JPEG-like Qfactor setting for JPEG2000, with the objective of achieving the same visual quality of that achieved with the same Qfactor in JPEG.
We intend to add support for it at some point in the near future.

Further reference for JPEG2000 Qfactor:

  1. HTJ2K Whitepaper
  2. Parameterization of the quality factor for the high throughput JPEG-2000 (Behind a paywall)

0.7.1

11 May 11:31

Choose a tag to compare

This is a small update

  • The JavaScript subproject has been updated to support and demonstrate reconstruction at reduced resolutions. This includes updating the JavaScript wrapper, the CMakeLists.txt, and the index.html file. The update includes compiled .js and .wasm versions of the library, and a more compressed file of the lena image.
  • Updated README.md to refer to new white papers, and the openjphjs project.
  • Bumped up the version.

0.7.0

10 May 13:03

Choose a tag to compare

This is a rather large update. The main objectives are:

Enable decoding at reduced resolutions
This is achieved using "-skip_res x,y" in ojph_expand. x is the number of resolutions for which data is skipped (or not read), and y is the number of resolutions that are skipped for reconstruction. This can be achieved programmatically by calling

    codestream.restrict_input_resolution(skipped_res_for_data, skipped_res_for_recon);

There are two APIs that makes determining the reconstruction width and height; theses are:

    ui32 param_siz.get_recon_width(comp_num);
    ui32 param_siz.get_recon_height(comp_num);

where "comp_num" is the component number.

Introduce a resilient mode
With this option, the decoder attempts to continue decoding an image even in the presence of errors or early termination of the codestream (an incomplete file). This is achieved with "-resilient true" in ojph_expand.
The corresponding API is:

codestream.enable_resilience()

If there are error, the decoder will generate info messages. If the end user is not interested in these message, the output can be blocked if the end-user defines his own ojph::message_info object and pass it to configure_info(); inside this object, the end-user can send the message to nowhere.

0.6.5

07 May 00:44

Choose a tag to compare

This has two main changes:

  1. Integrated the earlier part of pull request #32; this change update VS Code files, which I am not familiar with. It also updates CMakefiles.txt to enable compilation to a static library; the default is still shared library. Thanks to Chris for this.
  2. Modified the code to eliminate compilation warning messages. Now, the code produces no warnings in Visual Studio, Xcode, and gcc. However, clang still generates a lot of errors. I will come around to fix this at some point. Thanks to Aaron for suggesting this in pull request #27, although I still have to address the clang compiler.

0.6.4

03 May 03:37

Choose a tag to compare

This release is bug fixes and a small hardening of code.

The contribution of this release are:

  1. Closing issue #30. Thanks to Arron for highlighting this. Now there is additional 8 bytes in front of the codeblock buffer at the decoder. This extra buffer is a protection against the VLC decoder reading from before the start of the cleanup pass, which can happen because we are reading 4 bytes at a time from the VLC segment.
  2. Bug fix in ojph_block_encoder.
  3. Hardened the code by not decoding incomplete codeblocks.